Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
64 commits
Select commit Hold shift + click to select a range
24e5741
Add support for saving/loading statefiles
noclone Jun 21, 2026
925609a
Add doc for statefiles commands/options
noclone Jun 21, 2026
80a5ea4
Add statefiles bindings
noclone Jun 21, 2026
df25217
Add statefiles testing
noclone Jun 21, 2026
c413f89
Use '-' for pipe and "clip" for clipboard
noclone Jun 21, 2026
f74563f
Fix bugs & comments
noclone Jun 21, 2026
1eaa3ae
Add statefile filename option
noclone Jun 22, 2026
32fdfce
Rename helpers to Capture/RestoreState
noclone Jun 22, 2026
fdc0e2a
update for new commands/options
noclone Jun 22, 2026
7bf55a6
statefile-filename for load also
noclone Jun 22, 2026
769a69a
update doc
noclone Jun 22, 2026
6040b0d
add bindings for save/load to clipboard
noclone Jun 22, 2026
758c82c
load most recent statefile
noclone Jun 23, 2026
74749cc
api return engine
noclone Jun 24, 2026
4e542a8
doc update
noclone Jun 24, 2026
2cd3d13
doc update & small code fixes
noclone Jun 24, 2026
7c212d2
doc & rename var
noclone Jun 24, 2026
baffafb
Add filegroups handling
noclone Jun 25, 2026
8a842a7
fix tests comments & scripts
noclone Jun 26, 2026
0cc78b3
string bindings
noclone Jun 26, 2026
ee54ef8
doc update
noclone Jun 26, 2026
352401c
Add baseline & fix warn to log
noclone Jun 26, 2026
368e125
remove useless test
noclone Jun 27, 2026
f95defb
Add statefile clipboard testing
noclone Jun 27, 2026
b42f041
add tests
noclone Jun 27, 2026
c125c5e
fix missing header
noclone Jun 27, 2026
2ceb790
try fix tests
noclone Jun 27, 2026
42cb5c3
try fix tests
noclone Jun 28, 2026
1971df8
Add log & refactor
noclone Jun 28, 2026
da18332
Improve coverage
noclone Jun 28, 2026
39a0393
format
noclone Jun 28, 2026
ffc7a0a
Improve coverage
noclone Jun 28, 2026
d593da8
tidy
noclone Jun 28, 2026
b0570b9
remove uv.lock
noclone Jun 29, 2026
9b4c3ad
Add PIPED_INPUT
noclone Jun 29, 2026
f23b345
improve tests
noclone Jun 29, 2026
960bf07
Add PIPED_ARG
noclone Jun 30, 2026
1ec1595
fix tests
noclone Jun 30, 2026
998be00
fix tests
noclone Jun 30, 2026
f8cf124
comment unreachable testing paths
noclone Jun 30, 2026
1466598
Refactor PIPED test keyword into PIPED/PIPED_READER/PIPED_ARG
noclone Jun 30, 2026
37bd241
Add comment for parent_path no exception handling
noclone Jun 30, 2026
ace7114
Fix cmake
noclone Jun 30, 2026
33c0032
Enable clip in sanitizer CI
noclone Jun 30, 2026
efacc26
Fix ScrollWheel interaction test reaching the cheatsheet bottom
noclone Jun 30, 2026
833a4f7
Move Clip to libf3d & refactor into state class
noclone Jul 2, 2026
3600aaa
format
noclone Jul 2, 2026
d10d654
Fix test
noclone Jul 2, 2026
386dbf1
export operators
noclone Jul 2, 2026
f98904c
Fix wasm with new api
noclone Jul 2, 2026
4d80ea0
fix missing export
noclone Jul 2, 2026
a86876e
fix static analysis
noclone Jul 2, 2026
271e36d
Improve coverage
noclone Jul 2, 2026
de076ee
Add JNI macro
noclone Jul 3, 2026
446a195
Add tinyfiledialog & update bindings
noclone Jul 5, 2026
2515c8f
fix baseline
noclone Jul 5, 2026
b186506
release testing process for manual testing
noclone Jul 6, 2026
42b499c
rename api & fix bindings
noclone Jul 7, 2026
193537b
format
noclone Jul 7, 2026
3d676a5
Update application/F3DStarter.cxx
noclone Jul 7, 2026
7a1d33a
fix camera reset on load new file from group
noclone Jul 8, 2026
0356ab1
refactor file dialog bindings
noclone Jul 8, 2026
14266a2
update statefile-filename cli doc
noclone Jul 8, 2026
c187d32
format
noclone Jul 8, 2026
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
6 changes: 6 additions & 0 deletions .github/ISSUE_TEMPLATE/new_release.md
Comment thread
noclone marked this conversation as resolved.
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,8 @@ Linux testing protocol:
- Double click on supported file in testing/data, especially for new file formats if any and check it opens in F3D
- Drag&Drop cow.vtp, Drag&Drop shanghai_bund.hdr, check render
- Check that CTRL+O (file dialog) is working
- Check that CTRL+S then CTRL+L (statefile save/load file dialogs) are working: save a statefile, change the background color, load it back and check the color is restored
- Check that CTRL+C then CTRL+V (statefile save/load to clipboard) are working: copy the state, change the background color, paste it back and check the color is restored
- Press "Esc" and check the following commands `reload_current_file_group`, `set_camera top`, `toggle_volume_rendering`, `exit`

macOS testing protocol:
Expand All @@ -98,6 +100,8 @@ macOS testing protocol:
- Check all supported file in testing/data directory in finder have the f3d mark, if not, check that "open with" suggest F3D
- Drag&Drop cow.vtp, Drag&Drop shanghai_bund.hdr, check render
- Check that CMD+O (file dialog) is working
- Check that CMD+S then CMD+L (statefile save/load file dialogs) are working: save a statefile, change the background color, load it back and check the color is restored
- Check that CMD+C then CMD+V (statefile save/load to clipboard) are working: copy the state, change the background color, paste it back and check the color is restored
- Press "Esc" and check the following commands `reload_current_file_group`, `set_camera top`, `toggle_volume_rendering`, `exit`

Windows testing protocol:
Expand All @@ -113,6 +117,8 @@ Windows testing protocol:
- Double click on f3d.glb, press "Space", check animation is going smoothly and takes 4 seconds
- Double click on any new supported file format, check render
- Check that CTRL+O (file dialog) is working
- Check that CTRL+S then CTRL+L (statefile save/load file dialogs) are working: save a statefile, change the background color, load it back and check the color is restored
- Check that CTRL+C then CTRL+V (statefile save/load to clipboard) are working: copy the state, change the background color, paste it back and check the color is restored
- run `f3d-console --version` in a Windows command line and check it output the version
- Press "Esc" and check the following commands `reload_current_file_group`, `set_camera top`, `toggle_volume_rendering`, `exit`

Expand Down
1 change: 1 addition & 0 deletions .github/actions/coverage-ci/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@ runs:
-DCMAKE_MODULE_PATH=$(pwd)/../dependencies/install/lib/cmake/OpenVDB/
-DCMAKE_PREFIX_PATH:PATH=$(pwd)/../dependencies/install/
-DF3D_COVERAGE=ON
-DF3D_MODULE_CLIP=ON
-DF3D_MODULE_EXR=ON
-DF3D_MODULE_WEBP=ON
-DF3D_MODULE_RAYTRACING=ON
Expand Down
1 change: 1 addition & 0 deletions .github/actions/generic-ci/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -178,6 +178,7 @@ runs:
-DF3D_LINUX_GENERATE_MAN=ON
-DF3D_LINUX_INSTALL_DEFAULT_CONFIGURATION_FILE_IN_PREFIX=ON
-DF3D_MACOS_BUNDLE=${{ inputs.bundle_label == 'bundle' && 'ON' || 'OFF' }}
-DF3D_MODULE_CLIP=${{ inputs.optdeps_label == 'optdeps' && 'ON' || 'OFF' }}
-DF3D_MODULE_EXR=${{ inputs.optdeps_label == 'optdeps' && 'ON' || 'OFF' }}
-DF3D_MODULE_WEBP=${{ inputs.optdeps_label == 'optdeps' && 'ON' || 'OFF' }}
-DF3D_MODULE_RAYTRACING=${{ inputs.optdeps_label == 'optdeps' && 'ON' || 'OFF' }}
Expand Down
1 change: 1 addition & 0 deletions .github/actions/sanitizer-ci/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,7 @@ runs:
-DCMAKE_INSTALL_RPATH_USE_LINK_PATH=ON
-DCMAKE_PREFIX_PATH:PATH=$(pwd)/../dependencies/install/
-DF3D_BINDINGS_C=${{ inputs.sanitizer_type == 'undefined' && 'OFF' || 'ON' }}
-DF3D_MODULE_CLIP=ON
-DF3D_MODULE_EXR=ON
-DF3D_MODULE_UI=ON
-DF3D_MODULE_WEBP=ON
Expand Down
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@ option(F3D_MODULE_WEBP "WebP images module" OFF)
option(F3D_MODULE_UI "ImGui widgets module" ON)
option(F3D_MODULE_DMON "dmon (watch) module" ON)
option(F3D_MODULE_TINYFILEDIALOGS "tinyfiledialogs module" ON)
option(F3D_MODULE_CLIP "clip module (experimental)" OFF)
option(F3D_MODULE_CLIP "clip module" OFF)

# Use externals
option(F3D_USE_EXTERNAL_CXXOPTS "Use external cxxopts dependency" OFF)
Expand Down
5 changes: 5 additions & 0 deletions application/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -82,6 +82,11 @@ function(f3d_create_exec target_name)
target_compile_definitions(${target_name} PRIVATE F3D_MODULE_WEBP)
endif ()

# clip
if (F3D_MODULE_CLIP)
target_compile_definitions(${target_name} PRIVATE F3D_MODULE_CLIP)
endif ()

# dmon
if (F3D_MODULE_DMON)
target_compile_definitions(${target_name} PRIVATE F3D_MODULE_DMON)
Expand Down
3 changes: 3 additions & 0 deletions application/F3DOptionsTools.h
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,9 @@ static inline const OptionsDict DefaultAppOptions = {
{ "config", "" },
{ "no-config", "false" },
{ "no-render", "false" },
{ "load-statefile", "" },
{ "save-statefile", "" },
{ "statefile-filename", "" },
{ "rendering-backend", "auto" },
{ "max-size", "" },
{ "animation-time", "" },
Expand Down
Loading
Loading