Compare commits

...

938 Commits

Author SHA1 Message Date
Noisyfox
e713849fed QoL: Keyboard shortcuts updates & fixes (#3457)
* Bring back the shortcut to zoom in & out

* Update keyboard shortcut info

* Update keyboard shortcut info

* Different handling of shortcut 'T' for emboss text

Cherry-picked from prusa3d/PrusaSlicer@58e3143ad8

Co-authored-by: Filip Sykala - NTB T15p <Filip.Sykala@prusa3d.cz>

---------

Co-authored-by: Filip Sykala - NTB T15p <Filip.Sykala@prusa3d.cz>
(cherry picked from commit 002208fc8c)
2024-01-04 19:36:04 +08:00
SoftFever
9d59cd66c4 Feature/update deps (#3445)
* update deps

* fix win build errors

* fix mac build

* update linux

(cherry picked from commit 77b6225060)
2024-01-04 19:36:04 +08:00
Noisyfox
1ea33f0919 Fix NaN when adding negative part (#3423) (#3431) 2024-01-02 20:48:25 +08:00
SoftFever
8e3f7e7bf2 some profile changes based on feedbacks 2024-01-02 20:41:41 +08:00
SoftFever
eec8508e74 Fix boost download server issue
(cherry picked from commit b2ce4c1880)
2024-01-02 16:26:01 +08:00
SoftFever
3efe5f82d7 bump dev to 2.0.0-dev version 2024-01-02 16:02:51 +08:00
SoftFever
70c282667f Fix wrong option order 2024-01-02 16:02:51 +08:00
Noisyfox
712478c240 Fix issue that "Per-glyph" option not working when UI is in Chinese (#3425) 2024-01-02 16:01:05 +08:00
SoftFever
9e443baf95 Improve rendering quality when model color is pure black 2024-01-02 13:14:46 +08:00
SoftFever
8d5bb6cc4b Set CMAKE_OSX_DEPLOYMENT_TARGET properly on dev machine when calling build_release_mac.sh 2024-01-02 13:14:20 +08:00
Scott Mudge
209e9a2bb9 Add configurable short wall/perimeter cleaning for Arachne (#2790)
* add feature to add configurable value to clean/remove short un-closed walls/perimeters, to improve print times and reduce stringing (and generally lead to a cleaner print).

* fixes to short wall removal, which no longer affects bottom or top surfaces. allowed adjusting Top-surface threshold (renamed from One wall threshold for clarity) when short wall removal value is configured above default of 0.5.

* small fix for toggle_line for min_width_top_surface, to only be visible if min_length_factor > 0.5 and arachne is enabled.

* Use copy of input_params

* revert `One wall threshold"` string change

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-01-01 22:21:36 +00:00
Thomas
9701ab18e8 Added PAUSE command for change_filament_gcode on Elegoo Neptune 4 series (#3411)
Added PAUSE command for change_filament_gcode

on-behalf-of: @tomsbasement <tom@tomsbasement.shop>
2024-01-01 20:01:30 +08:00
SufficentMuffin
f99394b53c Update 0.48mm Standard @BBL X1C 0.8 nozzle.json (#3379)
* Update 0.48mm Standard @BBL X1C 0.8 nozzle.json

Removed P1S 0.6mm nozzle from process profile.

* fix

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-01-01 19:42:53 +08:00
Thomas
2cfcd0d03a Updated French translations. (#3410)
on-behalf-of: @tomsbasement tom@tomsbasement.shop
2024-01-01 19:35:16 +08:00
SoftFever
4d1885e7a4 fix intermittent crashes caused by detect_overhang_wall 2024-01-01 19:30:55 +08:00
SoftFever
5683729b17 Fxied a regression that wall order can't be set in height modifier 2024-01-01 18:21:19 +08:00
SoftFever
2f916f5ee9 Fixed crashes caused by pressure eq when support is used (#3407)
Fixed crashed caused by pressure eq when support is used
2024-01-01 17:05:40 +08:00
Thomas
967dc3d487 Creality K1/K1 Max, Ender 3 V3 Series and Ender 5 S1 baseplates (#3365)
* Fixed retraction speed and added missing parameters.

* Fixes for manual filament change

* More tunings and fixes.

* Fixes and tunings

* Formatting

* Decrease z-hop for K1

* K1/K1 Max, Ender 3 V3 and Ender 5 S1 correct build platforms (Thanks Henlor !)
2024-01-01 15:08:56 +08:00
SoftFever
a36df66083 Revert "Improve ExtrusionLine::simplify, eliminating many very-short extrusion segments which led to blemishes in thin-wall models sliced with Arachne (#3014)"
This reverts commit 3ca290d503.

Fixed #3340 #3375
2024-01-01 14:20:47 +08:00
Olcay ÖREN
1dfaef3948 Update OrcaSlicer_tr.po - TURKISH translation update (#3396)
* Update OrcaSlicer_tr.po - TURKISH translation update

* Update OrcaSlicer_tr.po - TURKISH translation update

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-01-01 13:47:25 +08:00
Vitalii Kutia
c623070395 edit Ukrainian translation (#3403) 2024-01-01 13:47:04 +08:00
Lee Jong Mun
52c08ca481 kor translation update (#3406) 2024-01-01 13:46:53 +08:00
Noisyfox
8fd4477110 Fix crash when click the color paint gizmo when object part is selected (#3405)
Fix crash when click the color paint gizmo when object part is selected (#3404)

Cherry-picked from bambulab/BambuStudio@1e99ce9535

Co-authored-by: liz.li <liz.li@bambulab.com>
2024-01-01 13:45:53 +08:00
Silence
60ab79cae0 Update README.md to provide alternative download links of webview2 runtimes (#3384)
Improve install and build instructions slightly.
2023-12-31 19:05:23 +08:00
Thomas
98a9bf6170 Creality Ender 3 V3/KE important fixes and some fine-tunings (#3362)
* Fixed retraction speed and added missing parameters.

* Fixes for manual filament change

* More tunings and fixes.

* Fixes and tunings

* Formatting

* Decrease z-hop for K1

* Updated thumbnails sizes to the same as Creality Print has.
2023-12-31 18:36:32 +08:00
Thomas
8afb675cd7 Fr translations (#3361)
* Updated French translations.

* Reword "strength"

* Updated translations

* Added missing translations.

* Fixed place on face translation

* Fixed strings.

* Updated locales

* Better translation for "Brim ears"

* Other round of fixes

* Added missing strings

* Renaming studio to Orca.

* Rewording "Arc fitting"

* Flush means purge and not "rinçage"
2023-12-31 14:46:18 +08:00
SoftFever
074490491e fixed a crash bug when switching to Bambu device page too fast 2023-12-31 13:31:58 +08:00
Noisyfox
a8ade1554f Fix preview legend window size (#3363)
Fix issue that the legend window expands to all available horizontal space if scrollbar is displayed
2023-12-30 22:02:32 +08:00
SoftFever
1d8cdf04d2 remove P1P-P1S warning 2023-12-30 15:22:18 +08:00
SoftFever
d0cf699617 bump dev branch version to 1.9.1-dev 2023-12-30 10:29:48 +08:00
SoftFever
527aefc6fb preset export small tweak 2023-12-30 10:29:32 +08:00
kpishere
044e25d1cf Feature/build target 10.15 (#3252)
* Set target to 10.15, make porter templates explicit

* CMAKE_OSX_DEPLOYMENT_TARGET refactor

* Update build_release_macos.sh

fix typo

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-30 09:12:06 +08:00
Olcay ÖREN
141e74a5d9 Update OrcaSlicer_tr.po - TURKISH translation update (#3354)
Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-30 08:52:26 +08:00
SoftFever
c08ace303a fix po errors 2023-12-30 08:50:27 +08:00
SoftFever
d5210c9fc9 Rename '.bbscfg/bbsflmt' to 'orca_printer/orca_filament' for clarity and to reduce user errors. Note: Configs may no longer be compatible with BS hence the change 2023-12-29 23:36:28 +08:00
SoftFever
ec9030e0ef create datadir folder if not exist 2023-12-29 22:49:45 +08:00
Fabio Forcina
20f7cc0cf9 Updated Italian translation (#3347) 2023-12-29 13:52:30 +00:00
Heiko Liebscher
86936e8873 Update German translation for 1.9 (#3343) 2023-12-29 20:20:21 +08:00
Thomas
e3f08c544b Changed Slic3r mentions (#3344) 2023-12-29 20:18:46 +08:00
SoftFever
fab8b78d69 update locale 2023-12-29 12:08:45 +08:00
SoftFever
63f9b3b1ba check for new version rework, support "check for stable updates only" mode 2023-12-29 12:04:40 +08:00
SoftFever
f89932f63e make exclude_object off by default 2023-12-29 09:21:49 +08:00
just-trey
a96ed26519 Profile: Anker M5/C first layer consistency improvements (#3321)
first layer consistency improvments
2023-12-29 00:04:45 +08:00
Thomas
c1bb9ecc43 Fixed typo (#3331)
* Fixed typo

* An other swtitch

* Main-i-fold(tm)
2023-12-29 00:02:45 +08:00
Thomas
2901c85ea9 Fixes and simplification of some Creality profiles. (#3315)
* Fixes and simplification of some Creality profiles.

* Set correct support_air_filtration for K1 Max
2023-12-29 00:02:01 +08:00
SoftFever
b51856faff fix/update locale 2023-12-28 00:23:42 +08:00
SoftFever
87830fdb9d add more hints 2023-12-28 00:23:42 +08:00
SoftFever
bab1a79511 Fixed a regression bug that --datadir was broken
fixed #3191
2023-12-28 00:23:42 +08:00
Ioannis Giannakas
7ab2fabe6a ENH: Port of "wipe inside before extruding an external perimeter" feature from super slicer (#3287)
* Wipe Inside at Start of perimeter

Co-Authored-By: Merill <6536403+supermerill@users.noreply.github.com>

* Cleaned up code and linked it to the wipe on loop parameter

* Trigger build

* Introduced wipe before external loop parameter.

* Removed redundant functions

---------

Co-authored-by: Merill <6536403+supermerill@users.noreply.github.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-27 11:21:33 +00:00
Thomas
90dd67e4e4 Update OrcaSlicer_fr.po (#3295)
* Update OrcaSlicer_fr.po

Added missing translations.

* Update OrcaSlicer_fr.po

* Update OrcaSlicer_fr.po

* Update OrcaSlicer_fr.po

* Update OrcaSlicer_fr.po
2023-12-27 09:31:19 +00:00
Hukete
309979eaff QIDI: Add two new filaments (#3304)
* 10-25

Add TPU-95A HF

* 1030

Adding Introduction of Chamber Temperature Control Macros(M191) to Notes

* 1102

Add ABS-GF10 profile,
Remove a extra "s" from the "0.36mm Standard @Qidi XPlus3 0.6 nozzle.json" file

* 1106

Add the PA value to some genetic filament profiles

* Add new filaments profiles

Add new filaments profiles

* 1

1

* Add two new filaments

Add two new filaments
2023-12-27 09:16:45 +00:00
SoftFever
78c7abe4c2 workaround to solve unwanted zstd dependency on runner (#3298)
* trigger build

* Remove zstd only for dep build

* reinstall zstd after building completed
2023-12-27 17:01:12 +08:00
SoftFever
98d8b010c4 downgrade to macos-12 as there are not many macos-13 runner instances availble yet 2023-12-27 17:01:12 +08:00
SoftFever
63351c01da upgrade to macos 13 (#3289)
brew uninstall --ignore-dependencies zstd
Use local curl
remove brew/macport dependency
2023-12-27 17:01:12 +08:00
SoftFever
de8013f211 upgrade libjpeg-turbo to 3.0.1 to properly suppor cross compile 2023-12-27 17:01:12 +08:00
SoftFever
20dab5d996 force to use own glew even if the system has installed one(brew) 2023-12-27 17:01:12 +08:00
SoftFever
9127bed11f Move DL_CACHE into deps folder. Make cross compile easier 2023-12-27 17:01:12 +08:00
SoftFever
3086875c51 Fixed a bug that spiral_mode_max_xy_smoothing was not hiden when vase is not enabled 2023-12-26 23:41:57 +08:00
SoftFever
2f17c1915d Fixed a regression that Turkish lang option was missing
Fixed #3278
2023-12-26 23:41:56 +08:00
SoftFever
0325e28b50 Layer height can't be zero. Fixed #3268 2023-12-26 23:14:53 +08:00
Lee Jong Mun
9416af2247 kor translation update (#3288)
fix typo
2023-12-26 21:00:10 +08:00
Ikko Eltociear Ashimine
c02732e11c Update README.md (#3281)
bellow -> below
2023-12-26 20:19:41 +08:00
Lee Jong Mun
7e11aed69d kor translation update (#3272)
fix type

다리 -> 브릿지
프리셋 -> 사전설정
퇴출 -> 후퇴
갭 -> 간격
인쇄 -> 출력
2023-12-25 04:10:18 +00:00
Olcay ÖREN
cf36ca6ef9 Update Turkish translation (#3270)
* Update OrcaSlicer_tr.po

New English terms were translated into Turkish.

* Update OrcaSlicer_tr.po

* Turkish language sentences were added.

* Turkish words were edited.

* Turkish words were edited.

* Turkish words were edited.

* Turkish words were edited.

* Turkish words were edited.

* Turkish translation update

* Update Turkish translation
2023-12-25 04:09:09 +00:00
SoftFever
9e4c332df2 Don't hide exclude_object option for Marlin/RRF firmwares as Orca now support these firmwares
Fixed #3267
2023-12-25 12:00:32 +08:00
SoftFever
665526e4eb Fix Qidi X3 preview images 2023-12-24 15:01:46 +08:00
Noisyfox
35d5b62604 Show used filament length and weight per line type (#3246)
Show used filament length and weight per feature

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-24 11:54:55 +08:00
SoftFever
7db0ad3112 bump profile version to 1.9.0 2023-12-24 11:41:55 +08:00
SoftFever
68e1722e97 Fixed an issue that bed texture was not reset when switching to a new printer model that don't have a valid bed texture.
also fix/tweak some printer's bed texture
2023-12-24 11:41:55 +08:00
SoftFever
cc984b21fe bump version to 1.9.0-alpha 2023-12-23 22:36:14 +08:00
SoftFever
ba8caef962 update locale 2023-12-23 22:35:15 +08:00
Noisyfox
e034af7050 Trigger task progress update on paint event as well (#3237) 2023-12-23 22:35:07 +08:00
SoftFever
1a2d127276 patch image.cpp and window.mm
Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2023-12-23 20:32:29 +08:00
SoftFever
c5df337f01 use ankerl::unordered_dense instead of std::unordered_set/map 2023-12-23 19:29:10 +08:00
Lukáš Hejl
f2c3174896 Fixed asserts and calculations in calculateExtrusionAreaDeviationError.
The previous method worked just for near collinear edges. But it was also used for sharp corners, and for those sharp corners, there was an overflow in the computation of weighted width.
Also, the computation of deviation error was wrong for those sharp corners.

(cherry picked from commit 89b9f702d6cd59bc64c93687bc086f17a206cd0b)
2023-12-23 19:29:10 +08:00
SoftFever
374f78c768 Revert to WxWidgets 3.1.5 (#3249)
* revert to WxWidgets 3.1.5

* update nanosvg unicode path
2023-12-23 17:44:09 +08:00
SoftFever
cc23ec6626 Add a new option "emit_machine_limits_to_gcode" (#3236) 2023-12-23 15:02:27 +08:00
Noisyfox
01706eff84 Fix tutk logs location (#3209) (#3248) 2023-12-23 15:02:06 +08:00
Carlos Caruncho
0f2a223abd Update Spanish translation (#3231)
* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Revert "Merge remote-tracking branch 'upstream/main' into spanish_translation"

This reverts commit 694a900845, reversing
changes made to 4f53ce4f88.

* Revert "Update OrcaSlicer_es.po"

This reverts commit 4f53ce4f88.

* Revert "Revert "Update OrcaSlicer_es.po""

This reverts commit 53bd15617c.

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Revert "Update OrcaSlicer_es.po"

This reverts commit b21aad079f.

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_en.po

* Update OrcaSlicer_es.po

* Traduccion de OrcaSlicer al español

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-22 21:11:07 +08:00
Ioannis Giannakas
951f9e9aef Bug fix: VFA Test fix (#3230)
VFA Test fix
2023-12-22 21:10:36 +08:00
Ioannis Giannakas
ba09fa3866 Bug Fix: Fix crash when printing by object after 1.8.2 code merge. Fixed tool ordering not done based on flush volume on BBL printers (#3223)
* PR: Fix crash when printing by object after 1.8.2 code merge

* PR: Revert change in tool ordering - reorder_extruders_for_minimum_flush_volume to enable tool sequencing based on projected flush volumes

* Bumping up reordering to up to 12 different colors on same layer.

* Updated tool ordering to distinguish between bbl printers when reordering tools

* Update to code comment

* Updated population handling of is_bbl_printer variable
2023-12-22 21:09:42 +08:00
Ioannis Giannakas
90097a1926 ENH: PR: Alternate extra wall (#3196)
* ENH: PR: Alternate extra wall

* Updated tooltip

* Tooltip spelling correction

* Introduce dialog box to disable ensure vertical shell thickness

* Alternate Extra Wall - automatically disable for Vase mode and revert vase mode toggles

* Corrected invalid push

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-22 08:54:03 +08:00
SoftFever
e187ada1e9 write Orca version into 3mf project file 2023-12-21 22:36:43 +08:00
SoftFever
22d3c713fb Fixed an issue that Qidi ABS-GF10 is visible for all vendors 2023-12-21 17:46:25 +08:00
Thomas
a3990485fc Fixed Ender 3 V3's default materials (#3218) 2023-12-21 09:40:45 +00:00
Thomas
f5cbe6a38b New profile for Creality Ender 3 V3 KE (#3216)
* Added Creality Ender 3 V3 SE.

* Fixed fine profile.

* Optimized first layer speed (based on Creality Print)

* Brought back Ender-5 (2019)

* Setting Marlin 2 as gcode flavor

* Added Ender 3 V3 KE Profile

* Use inheritance for Ender-3 V3 filament profiles.

* Various improvements.

* Temperature optimisations (less power consumption)

* Added Ender 3 V3 KE Profile

* Tweaks for KE integration.

* Fixed some log errors.

* Optimizations

* Optimizations.

* Reverted support_interface_top_layers

* Added correct jerk and acceleration settings.

* Added correct jerk and acceleration.

* Added retraction speed.

* Re-added missing Ender-5 references in filaments.

* Inherits processes from process_common_klipper

* Reverted code simplification for inherited profiles.
2023-12-21 08:51:18 +00:00
Carlos Caruncho
e5bf702a3a Update Spanish translation (#3212)
* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Revert "Merge remote-tracking branch 'upstream/main' into spanish_translation"

This reverts commit 694a900845, reversing
changes made to 4f53ce4f88.

* Revert "Update OrcaSlicer_es.po"

This reverts commit 4f53ce4f88.

* Revert "Revert "Update OrcaSlicer_es.po""

This reverts commit 53bd15617c.

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Revert "Update OrcaSlicer_es.po"

This reverts commit b21aad079f.

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_en.po

* Update OrcaSlicer_es.po

* Traduccion de OrcaSlicer al español

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-21 08:31:23 +00:00
Ocraftyone
53d752b606 Fix wx issues from upgrade (#3032)
* fix top bar resizing

* Attempt to fix bitmap bundle scaling issues

* Revert "Attempt to fix bitmap bundle scaling issues"

This reverts commit e94ba58d90.

* Fix AboutDialog and partially fix SwitchButton

* Fix switch button scaling on windows

* Fix dropdown icon size

* fixed sdcard/recording/timelapse icon size in device page

* Set use_legacy_bmp to true by default to it's back compatible

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-21 08:27:02 +00:00
Noisyfox
401ac1adef Fix crash on MacOS when clicking filament dropdown in object list (#3205)
* Disable optimization for `RelWithDebInfo` for Clang as well

* Fix crash on MacOS (#3134, #3202)
2023-12-21 14:19:22 +08:00
Noisyfox
6bb0d5ec30 Do not limit the max window size (#3149)
Do not limit the max window size (#2889)

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-20 21:09:13 +08:00
SoftFever
eeef52bf5d Rename bunny to Stanford Bunny 2023-12-20 19:57:30 +08:00
Thomas
888096d75c New profile for Creality Ender 3 V3 SE (#3180)
* Added Creality Ender 3 V3 SE.

* Fixed fine profile.

* Optimized first layer speed (based on Creality Print)

* Brought back Ender-5 (2019)

* Setting Marlin 2 as gcode flavor

* Use inheritance for Ender-3 V3 filament profiles.

* Various improvements.

* Temperature optimisations (less power consumption)

* Fixed some log errors.

* Optimizations

* Reverted support_interface_top_layers

* Added correct jerk and acceleration settings.

* Added retraction speed.

* Re-added missing Ender-5 references in filaments.

* Reverted slow_down_layer_time, Creality print is too optimistic on this at least for Ender 3 V3 SE.

* Optimizations for supports (easier to remove)

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-20 19:56:13 +08:00
SoftFever
69602d24fc Add more built-in models: Disc/Torus/Bunny 2023-12-20 17:53:12 +08:00
SoftFever
604851fc9c Fix custom filament tab missing bug
Fixed #3135
2023-12-20 15:13:29 +08:00
Noisyfox
7739252711 Another sidebar improvement PR (#3194)
* Show sidebar when opening normal 3mf file

* Retain sidebar size when switching between tabs
2023-12-20 11:21:48 +08:00
Lee Jong Mun
53ccff6ad0 kor translation update (#3199) 2023-12-20 08:38:13 +08:00
Olcay ÖREN
d9241dca74 Turkish translation update (#3197)
* Update OrcaSlicer_tr.po

New English terms were translated into Turkish.

* Update OrcaSlicer_tr.po

* Turkish language sentences were added.

* Turkish words were edited.

* Turkish words were edited.

* Turkish words were edited.

* Turkish words were edited.

* Turkish words were edited.

* Turkish translation update
2023-12-20 08:37:51 +08:00
Fabio Forcina
e7651fe2ed Italian translation update (#3185)
* Italian translation update

updating of new terminologies

* fix errors

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-20 08:36:08 +08:00
SoftFever
8dd9c11241 Revert "update user agent" for now as it cause trouble to login
This reverts commit ae8995fec2.

(cherry picked from commit cd35171fd18d47839faa3ea119f3cbfc356c0a65)
2023-12-19 23:50:51 +08:00
SoftFever
bba367cde8 Feature/merge 1.8.2 (#3193)
* FIX: user preset sync token

Change-Id: Id2aa865b778ee9ac4cfddb68ceef0374507b519b
Jira: none

* FIX: Bitmap cache not take effect

Change-Id: I972098fdbda0b4542c6c759a8f5e1f0f2a30852b
Jira: STUDIO-4991

* NEW: Open HotModel Link With GetParam-From bambustudio

JIRA: NO JIRA

Change-Id: I4ac49bac5ee0c50988c76a38b00b7ba7dc3201f5

* NEW:AmsMaterialsSetting Support for user-preset

JIRA: STUDIO-5135
Change-Id: If848047cd5dbd059d440de30989c505c361305a7

* FIX: upload custom root preset fail

Change-Id: I621c8d542dd604b07cc5df63d97d7a31558d3aba
Jira: none

* FIX: show custom filament in AMS filament list

Change-Id: I79b9f8f2f08db8c52bbed76f1ea133baff383c00
Jira: none

* FIX: dailytips window and gcodeviwer legend window size issue

reset to original logic of dailytips and legend window size

jira: new

Change-Id: Iacb016bb222ba3f87317cfbe1f2b003802d773a5

* ENH: add text translation

jira: new

Change-Id: I780cfb8a0a64d806b5e0a414b6598e3b7bdf52dc

* FIX: Delete and search object outside the plate

JIRA:
1. STUDIO-5132 Deleting object outside the plate will crash
2. STUDIO-5146 The search function cannot search for object outside the plate

Signed-off-by: Kunlong Ma <kunlong.ma@bambulab.com>
Change-Id: I84cb3fe990a9c2a182e7434c262466a70545280e

* FIX: [5149 5142 5141 5140 5136] create printer and filament issue

Jira: 5149 5142 5141 5140 5136
5149 process preset name can not show all
5142 improt configs combobox not update
5141 disable modify filament_vendor
5140 disable input Bambu and Generic vendor
5136 preset list window adjust

Change-Id: I111a23996146cc16cc7f533c8616d50223d34c40
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* ci: update build version to 01.08.00.54

Change-Id: Ifd69c01a82f627a9c6cf4fe0d48a759563ee90e7

* FIX: print model from sdcard with p1p

Change-Id: If85383ba762022ead3dd754ae02a08817b891114
Jira: none

* FIX: dailytips text translation

jira: STUDIO-2556

Change-Id: If44e503615b09ee1692f42ba1f998918ec5bd691

* FIX: clone shortcut key conflict with quit in macos

jira: STUDIO-5166

Change-Id: I548f275bb68d3b0e6bb3cfad6fe93df09d507da3

* FIX:User preset material settings dependent on firmware

JIRA: 5167
Change-Id: I82cf26848594b01155883ad0aa2e9ee77d371fb2

* ENH:update the description of nozzle detection

Change-Id: Id27b25c69dc11fcf66fc82053af705906ae8c370

* FIX: [5159 5165 5171 5172] create printer and filament issue

Jira: 5159 5165 5171 5172
5159 create printer dialog no refresh
5165 create printer 2 step dialog no refersh
5171 change font
5172 edit filament dialog darkUI issue
input special character is prohibited
'/' in preset name translate to '-'
update printer combobox

Change-Id: I5fa27836dab7f604f1a065c65efa099c7a2f0f96
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* ci: update build version to 01.08.00.55

Change-Id: If1865d561cf274719204662314de163497759e89

* FIX:fix GLmodel deconstruction causing section not to be rendered

Jira: STUDIO-5156
Change-Id: Ibb2f459920989ee54f7b827352dc8893424b4de6

* FIX: missing unlock cause device or resource busy

Change-Id: I87563312ea9c6ce4e4e471da7ce7a02b53b64762

* FIX: some translation

Change-Id: I9758cbc758030b5a3945697a50ca4898af9fcb1b

* ci: update build version to 01.08.00.56

Change-Id: Id5ee53dd2ebb0b37b6927dc58b3cca94a1f66a83

* ENH: remove PLA GLOW in A1 mini

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Id99c1bbd4248e28df9150a85eecec831f6f32856

* ci: update build version to 01.08.00.57

Change-Id: Ib4dfa60f097128b76b95bb14ca04978619021b56

* Allow line width of nozzle diameter * 2.5

As it were, 1 mm would be disallowed but 0.99 would be allowed for 0.4
nozzle.  1 mm is the sane maximum and 0.99 is unnecessary tedious to write.

* Russian translation update

Russian translation Bambu Studio_v1.8.0 Beta

* FIX: scale problem in needs_retraction

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Idfbe954b22fa6aa5769c55e46874fa6a80ecbf45
(cherry picked from commit 4e853f50b748e3af11e2d64862b6ee557fda361b)

* ENH: CLI: support load_assemble_list

JIRA: STUDIO-4848
Change-Id: Ife11533740988331ea71eac86c370e625970cb8b

* FIX: align to Y not working

This is a bug introduced in 7fbb650 when solving jira STUDIO-4695.
Now we use a more decent way to solve it.

Change-Id: I92deffcb9fe53e8a24c93fe973446ae37df07375
(cherry picked from commit bd98430dbd15eb6c9bb4b447990e0dcf8a50eef0)

* ENH: Add buried points for cut and meshboolean

JIRA: NONE

Signed-off-by: Kunlong Ma <kunlong.ma@bambulab.com>
Change-Id: I67ce498d0c335dd7a8582f56b880c2c8314f8541

* FIX: 5092 edit filament add scrolled window

Jira: 5092

Change-Id: I53ae996b04e4e2f1b1ddce6a858d505001b11615
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX: can not select user preset when create filament

Jira: XXXX
github: 1936
and fix add preset for printer dialog can not show selected printer

Change-Id: Id4308c6bdca17d52d4aa321db359941aa87e0e45
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* ENH: template filament don't be show in filament list and sort

Jira: 5160 5179

Change-Id: I56a7e1897e1ef3c061dc66d318896413ca25b76b
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX: [5174] export configs dialog issue

filament name too long to can not show all

Jira: 5174

Change-Id: I92018c9d7f86009b78b533592d899b4b5d78c3c8
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* ENH: add filament Bambu TPU 95A HF

1.As title

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I752ec43da6297a6c172679997ce68f2318a7b8fb

* ENH: modify some params with filaments

1.Modify the PEI bed temperature of PLA Basic, Matte, and Tough to 65 in
 A1 mini. Set the bed temperature for the first layer of Bambu PETG-CF
 to 65 and 70 for the other layers

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ia902bbb7f824082d5346709d781cac64296f47a8

* ENH: add more status during printing

JIRA: STUDIO-5195

Change-Id: I85b3107839c6e2fdecbc10d90a876463e284468c
Signed-off-by: Stone Li <stone.li@bambulab.com>

* FIX:cut imgui has overlapping rendering on Apple

Jira: STUDIO-5150
Change-Id: I7969e19dc189cd617026a183067dad628208955c

* FIX:not TakeSnapshot for m_start_dragging_m

Jira: STUDIO-5176

Change-Id: Ia03e3e2c2664dbdcffa19ec8d0fa97dfd95e6d35

* FIX: rendered color changes

Jira: STUDIO-4956
during the drag processin connectors editing state

Change-Id: I3027176ea9f93a9ba9d6a2052f41aaa4adef79f1

* FIX: merge the patch from Prusa

Thanks for PrusaSlicer and YuSanka
Jira:STUDIO-5175
commit 510d59687b3b19c4a0f4e6540620d0694dd1b7ac
Author: YuSanka <yusanka@gmail.com>
Date:   Thu Oct 5 14:13:14 2023 +0200
    Follow-up 1b451cdf: Fixed #11415 - Connectors disappear when slicing => only when using multiple cut planes AND excluding parts

Change-Id: I9ccd5b85f482d723d21fccf5e104c9e0a9cc4849

* FIX:Press ESC directly to exit after entering the profile rendering

rendering is not normal,Code from PrusaSlicer,thanks for PrusaSlicer and enricoturri1966
commit a078627552f54497ed0518dc7bc349d243576d19
Author: enricoturri1966 <enricoturri@seznam.cz>
Date:   Mon Jan 30 14:00:02 2023 +0100

    Follow-up of 1218103fd620b319c56fd08116f81b581c537188 - Fixed gizmo missbehavior when closing a gizmo by resetting the selection clicking on the scene

Jira: STUDIO-5164
Change-Id: I261da9dba2a5ac37f3e263c175fbccd80d8045bd

* FIX: correct the strings and move create printer dialog center

Jira: 5221 5183

Change-Id: Ida4eba63f0e962ffcc8000fcc04cf20849577217
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* ENH: CLI: skip layer height limit validate when slicing for existing models

JIRA: no jira
Change-Id: I1444a28b500ca7d08ed2606eecfa5cfaf261105e

* ENH:update the translation of auto refill

jira:[for translation]

Change-Id: Iaa7b4f3d7cd88c8b4f69a3db721ebd8ca8986eea

* FIX: icon issue for copying

Jira: STUDIO-4168

Icon issue when filling bed with copies

Change-Id: I61a03ecae02b75602c236ed2810e9c9cfe5a19f9
(cherry picked from commit b5079f8a2e79f19f65803f23ef4fd83aff17c84a)

* ENH: update some filament params

1. Modify texture bed temp to 65
2. Modify max-v-speed for ABS
3. Modify some params in Generic PA
4. Modify PLA,PVA params

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I42584a6015b8526f6bbb93024316968198bd76ce

* FIX: 3770 printable checkbox incorrect display in darkUI

Jira: 3770

Change-Id: I97f67d7a0ffc41f6ee625abeecc52ee4e73cf318

* FIX:Display garbled code in AmsMaterialsSetting pop-up

Change-Id: I50531e939afa7715ae376bac47172ccf7b248114

* ENH:Modifying the Line Color of Transparent Materials

JIRA: STUDIO-4311,5088,4983
Change-Id: I9e63413dc9cd7d523f0f7f1a2e32c4537a84467a

* FIX: crash when async delete printer file

Change-Id: I92c5e812d04da263338fb0eea2fd7583cf9ecde0
Jira: STUDIO-5222

* FIX: 3733 backup time not effective

Jira: 3733

Change-Id: I50c2ce156fcbd0a17aa8a6777bce04aa6093c830
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX: enable edit and delete preset btn and fix issue

Jira: XXXX

Change-Id: I724d7236b28fcc4746698f094531948a8fbb5d93
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX:send print job,file name displays error

JIRA:3137
Change-Id: I1c113025d274a13fba1b845a58aada14058fadd4

* FIX: skip hold user preset from sync

Change-Id: I2252246e19bd80903ad82170782ea49535d30d05
Jira: STUDIO-5185

* FIX: 5115 translations

Jira: 5115

Change-Id: I21b03bdd4d28c0bb097226143177e763cf8c777f
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX: add link for ironing parameter

Change-Id: I451f5549db3ac2205aa5703a2e5edc831e946af8

* FIX: scale problem in lift type decide

1. Scale the travel threshhold

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ib594d640fe63b0919bc9318af88577513f7dbf30

* ENH: add small perimeter speed and threshold

The original param is added by Prusa. Thanks orca for adding threshold.

1. Re add small perimeter speed and threhold.

github: #2221

Change-Id: I35b269b26f085d80f0edca28650bb21fc04898d7

* FIX: modify the picture of pa manual cali

Jira: STUDIO-5102
Change-Id: Id87898959ad4461b7bd2505b159271f2aa589c36

* FIX: Filament preset is the same with the first one

Jira: STUDIO-4519

Filament preset is the same wit the first one, it should align with the
last one.

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: I304d0ff0fbc1c8948d410ea552e4d42b6a4e8fd9

* FIX: scoreDailog dark mode issue

Jira: 4570

Change-Id: I8be97b306a1494f73e3bba678ecc864e7ff88ca3

* FIX: CLI: fix the slicing issue while only one object with multicolor using seq-print

JIRA: no-jira
Change-Id: Iea2d23ff8e484bf2fd58aa2f596a8e4e4292fe39

* ENH: open support wall count for normal support

1. open support wall count for normal support
  Enabling this option makes normal support stronger and gives
  better overhang quality, but also more difficult to removal.
  Jira: STUDIO-5192
2. fix a bug where tree support (hybrid style) may get overlapped
  extrusions near the walls.
3. fix a bug where raft layers can't be 1 in tree support
  Jira: STUDIO-5261

Change-Id: Iadc0c67a9b50b5b221c8e83d5aa22ed282018cf8
(cherry picked from commit c0bb0084e386cb70ed6e16edf93190e4b38f5b90)

* FIX: compiling error on linux

jira: none
Change-Id: I1a4563503b5ddf74a1979cc0cee7a15b8aced904
(cherry picked from commit de52c6ca62c9f3a6314ddf5a856c1d8534329886)

* ENH: add translation for small perimeter

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I95013649e4e0c07c0f04b89a91488814c8d228cc

* FIX: clone shortcut key issue on macos

jira: STUDIO-5166

Change-Id: I1967da1d443ed43bd750dad8e11560688d7bd533

* FIX: custom gcode window cannot paste/ navigate

jira: STUDIO-5208、STUDIO-5070

Change-Id: I4ecb9d06cf5db0ae53a4678181aae9298bac106b

* ENH: modify dailytips collapse & expand interaction

jira: STUDIO-5209、STUDIO-5210

Change-Id: Ifb0b998e5004d4b49390ba5a250eaf4743bf3471

* ENH:Add shortcut keys and lists for objects search

JIRA: STUDIO-5157 STUDIO-5158 STUDIO-5240

Signed-off-by: Kunlong Ma <kunlong.ma@bambulab.com>
Change-Id: Ic7cfaaa9b4bb8a85208bafab7fe3bafdb78f0045

* FIX:Re-calculate button with White Box displayed in dark mode

JIRA: STUDIO-5098

Signed-off-by: Kunlong Ma <kunlong.ma@bambulab.com>
Change-Id: I07cc6c72d5dbd03b72573cd27dd5938bb0e6a29a

* NEW: display plate index when printing a task

JIRA: STUDIO-2689

display on the thumbnail of the current task

Change-Id: I5f1f46c56e9d1e9120a66d491551908dfad099d6
Signed-off-by: Stone Li <stone.li@bambulab.com>

* ENH:fixed incorrect path prefix

jira:[for file path prefix]

Change-Id: Ie9e3999f02b78272e528ceceb479e746d46a7e6c

* FIX: thumbnail is not clear in dark mode

JIRA: STUDIO-5087

Change-Id: Ie86493ed71b5554095927f061509a1f551758b61
Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>

* FIX: translation

Jira: XXXX

Change-Id: Id03f0d704aa852632a907ea628d1277400112062
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* ENH: first nozzle change to 0.4 and nozzle change to mm

Jira: XXXX

Change-Id: I14defd36442dbd7008e46782b08415b6244224f1
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* ENH:editing_window_width's value is small on the laptop

Jira: STUDIO-5238 STUDIO-5265
apply_selected_connectors should check_and_update_connectors_state

Change-Id: I8c2c1c920cc4d197d1908815a3e62f4962335451

* FIX: fix new_bed_shape's calculation process

Jira: STUDIO-5122
Change-Id: I5f3e6a301a297123af28692c90bef6759f425b06

* ENH:update some translations

jira:[STUDIO-5262]

Change-Id: Idb1d3586888043ac325f272bc7a2b788adb3e9e5

* FIX: edit text command resets object settings

Jira: STUDIO-4655

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: Iac25c4e40f1d0d32e6d1f40e62226cc22bc96042

* ci: update build version to 01.08.00.58

Change-Id: Iacfec02aa50c617e4c9fe566319b07b30d47dce1

* FIX: remove GetUserAgent

Change-Id: I92886e1f0dcb091109231a10da8c19d51178e13b
Jira: STUDIO-5205

* FIX: nozzle_diameter_map data structure adjustment

Change-Id: Ifb724afc0fcf974e6d331e73ecac723107a102cf

* ENH:add _A and _B for perform_with_groove

Jira: STUDIO-5267
Change-Id: Iee3310dfa1cd8e6680310f0af0eff5c817490813

* ENH:is_equal for min_z and max_z

Jira: STUDIO-5267
Change-Id: I9493883d8be9d44e26ddc9afe62b7e9eb09c5052

* ci: update build version to 01.08.00.59

Change-Id: Ie8ed29ccf5d6c94594eb2ab8b717416fbeace3bd

* FIX:Image display unclear in light mode

JIRA:5161
Change-Id: I134cc64a2af0dfff60c47d0ff09d78d9c0f86b3f

* FIX:fix bugs of non manifold edge

Jira: STUDIO-5267

Change-Id: I8ac9a2cf96da0bc07ee00b309e65611b92fd174d

* ENH:nozzle type detection

jira:[STUDIO-5246]

Change-Id: Ic41a2161a0e41d23f56af93ad8ec34cc83ada0e3

* ENH: upadte P1S start gcode

1.turn on MC board fan by default on P1S

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I5b2f7868e350942fb8b7baf7d429e22a0987184a
(cherry picked from commit e866a575b6b7d9552f7412f84272f4b48dfc3961)

* ENH: improve support style's tooltip

jira: none
Change-Id: I8ee858d7052f04ce7ea6b226a500c7d1bf8a482f
(cherry picked from commit 665f31c4fcde22bd894cbb4a5fb160635947f2a4)

* ENH: set layer range error to warning

1. If layer range exceeds maximum/minimum layer range in printer
settings,pop up a window to warn

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I0304ee790e557ecf967f355c171993d1f51b5057

* ENH: CLI: remove the warning of layer height

JIRA: no jira
Change-Id: Idaceee4f52611479fc3f4238d016d891b4dc8cd1

* FIX: the word search is not translated

Jira: STUDIO-5224

The world search in the device panel is not translated.

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: Ia3d651c2159a3aad94e10cd0a6da98848f53ee2a
(cherry picked from commit 4a46a0a4750d82d49c9523f4b668a1a00c41ed83)

* FIX: Bitmap will flash when sending printing task

Jira: STUDIO-5278

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: Ib0c8710b8d5d6b98fad043c950f054aa35bea965

* ENH:display the euler angle of rotation plane

Jira: STUDIO-5268
Change-Id: I6b7b431931d60f1a9a832908400417781798c472

* ci: update build version to 01.08.00.60

Change-Id: I1c15b5c6437554c43327cd6b537f7a5860dba5a0

* ENH:cancel EnterReturnsTrue for imgui in cut

Jira: STUDIO-5269
Change-Id: I2832e1dccaf9755448debe7b2bd56426f90dfe0d

* ci: update build version to 01.08.00.61

Change-Id: Ib03e664a20990322c788686550c491d0139d8237

* FIX: some translation problems

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: If9f2af53b4f0bfa9469e84bcba68cc182df4a473

* add: Ukrainian lang support for 1.8

* FIX: calibration selected preset is null in some case

jira: STUDIO-5258

Change-Id: Iee63593c5f833c5a43e3b1d1c9ddb82f8c69569a

* FIX: create filament issue

Jira: 5296 5297 5295 5302 5311 5276

5296 create filament: list has same printer
5297 create filament: filament combobox has blank options
5298 edit filament: delete last preset prompt users
5302 create filament: filament combox has cili preset
5311 create filament: printer name too long to can not show all
5276 edit filament: PLA Aero filament type filter issue
add prusa vendor
Revised copy

Change-Id: I5dcc615ce0951b1a9953fa12283f6090f5069045

* FIX: some translation

Change-Id: Icb8614a0af18f96d15f3b97c17e0f6f708296847

* FIX:cancel is_equal for slicing function

Jira: STUDIO-5267
Change-Id: I66d759aa2c968f8a28a6a5d8378929754f2db689

* FIX:UI stuck due to pop-up window with wrong chamber temperature

JIRA: 5304
Change-Id: I1a49a7219b7a6f5700243704c348724e7930ce1a

* FIX: allow input '+' and hide edit preset btn

Change-Id: I97aec7c3ac4cc8b9d6c535f0126aaa1926553d86

* ENH: handle printer direct close and not retry

Change-Id: I5dd55f8085cf6383a8420ab41e614ea6ae210c78
Jira: STUDIO-5305

* ci: update build version to 01.08.00.62

Change-Id: I09716bf79354b503197c751272fd3171e0abc8fd

* add: new translation to ukr for AirFlow and Prusa

* add: Texture Plate name fix

* FIX:add slice_facet_for_cut_mesh api for cut tool

and modify section_vertices_map 's traverse
Jira: STUDIO-5267
Change-Id: Ifc4b183a4e4c4fdb4f47742f14f70a1ed93fa056

Change-Id: I52bfaef8926ef967b78a6cb712a1731a1b528a24

* FIX: Make the front smaller for Czech in device panel

Jira: STUDIO-5151

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: I315174b55f923da069854fb4fed8cf3937b82074

* FIX: there is no object can be jumped to in notification

jira: new

Change-Id: Ib81bf49236952ede24a2de126051572d63916e01

* FIX: add height range, modifier in Preview pane will crash

jira: STUDIO-5340

1. fix crash at add height range, modifiers in Preview from objectList
2. fix an assert hit when slicing
3. fix an assert hit when enter AssembleView
4. forbidden popup menu by right-click objectList in Preview

Change-Id: I444bc76b1a4307999b387e4f60386b2d272bd308

* FIX: Black spot in the sending printing task page

Jira: STUDIO-5307

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: I3bd97c063ec5f0faf7d12047da39f60ce55cae4b

* FIX: reset_cut_by_contours should update_buffer_data

Jira: STUDIO-5376
Change-Id: I5aacb1f7b65822031d7138abd61a45b09c743531

* ENH:editing_window_width's value is small on the laptop

Jira: STUDIO-5238 STUDIO-5265
Change-Id: Ia958772bcb081817da621115f99328bb62770cd5

* ENH: bumped version to 1.8.1

Change-Id: I9d25403daa5b7b8ca415c0b364670da9e0f932b0

* FIX: create filament dialog: create btn can not show all

Jira: 5310 5331

Change-Id: I185272c90d9ff1c3d6b47abbefbf488d0d965cca

* FIX:update custom_texture when new_shape=false

Jira: STUDIO-5287
Change-Id: I3add95f9f9345c14a48cc7467513d1b3ce95f4c9

* ENH:editing_window_width's value is small on the laptop

Jira: STUDIO-5238
Change-Id: I9044129f4e0c8ca7469db05b3e547fca4754342a

* FIX:add slash_to_back_slash for saving file path

Jira: STUDIO-5287
Change-Id: I9f3c176cd0831c793958f08601c63efac98176a4

* FIX: a button color didn't response to dark mode change

jira: STUDIO-5315

Change-Id: I95489f01ccd1f77b9e95b0d0f69e5398d2e88487

* FIX: height range layers displayed in wrong position

jira: STUDIO-5341

Change-Id: I83918b4624f367efa54321f1898e1176cdb04ea9

* FIX: auto arranging issues with locked plates

1. global auto arranging may put items overlap with wipe tower if some plates are locked
jira: STUDIO-5329
2. items outside bed may overlap with plate boundary if it's rotated
jira: STUDIO-5329
3. plate-wise auto arranging uses wrong min_obj_distance if the
plate is by-layer printing but global setting is by-object printing
jira: STUDIO-5330

Change-Id: I5dba2f1317e183c9aeec1cb2bd227fbddf4316e6
(cherry picked from commit db1eac41efff5f1e8d5ac0af74c6fc7ab59fc253)

* FIX:  a mistake in upward machine

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ibdb26c3d904634f322aef0dc0c7b8867d9fb5854

* FIX:a blank pop-up appears

JIRA:XXXX
Change-Id: Ice92b55204e4897fec024a6d99412eb810bddd4a

* FIX:fixed failure in updating nozzle type

jira:[STUDIO-5248]

Change-Id: Iad37b5d5b76d37cb1723ef21d7c39b1e3fcaf8d7

* FIX:fixed issue with AI monitoring settings

jira:[STUDIO-5082]

Change-Id: I967fe3c1e9da61a55bcbfaa2a8e067dd5af18f72

* FIX:fixed issue with lan mode

jira:[STUDIO-5189]

Change-Id: I1d0a05f19dcea154cf3ef2b61ed0546d3581905e

* FIX:update text for loading or unloading filaments

jira:[STUDIO-5231]

Change-Id: Ic7729c3ec012485b3d87e3d01f11e87502c67895

* FIX: Revert "ENH: do not leave a gap for top...

Revert "ENH: do not leave a gap for top interface if the top z distance is 0"

This reverts commit 79ea32c7cbbdb7e689637980af7c36caf42284c9.

Revert reason: the supports are impossible to remove in some cases.
jira: STUDIO-5385

Change-Id: I376a6f4dfd78da6dfea68b9ac3d552cddd0b4272
(cherry picked from commit 34e38b705fde7f5d7f9a3a89c96a3627ce0c998e)

* ENH: improve normal support's quality

1. Add a base_interface_layer when using Supp.W
2. Fix a bug where base_angle and interface_angle are wong

jira: STUDIO-5386
Change-Id: I52ab32c63b3cd1e6e2ba6463b01ae26699cf13d3
(cherry picked from commit 92ddd4a10b793572a1fa009da5b9e44fcdf81de2)

* NEW:tracking stl model files

jira:[STUDIO-5372]

Change-Id: Idb1275b07441f0cd06c24588d5f7c20f81f1556c

* FIX: edit filament dialog: preset name too long to del btn nan't show

Jira: 5336 5174
and verify string normalization

Change-Id: I380c3bed2bf43d01094b68979a8b67f4187c0b93

* FIX: some translation

Jira: 5232 5300 5334

Change-Id: Ie474ca823011e81aab82a9809af3d6e42980496b

* FIX: some translation

Change-Id: Iaabe6087bed3b7d47d911cf4fb51c770804e72fb

* ENH: change default tree_support_wall_count to 0

Now normal support also uses this option, so we can't default it to 1, otherwise normal supports will be too hard to remove.

jira: none
Change-Id: Ic5700af5c17e3a7b265c8915f28b0db35c6e06e6
(cherry picked from commit 6b84a9826da108b76569e686bd9def0b23ae29fd)

* FIX:The name of the material in the error prompt is empty

JIRA:STUDIO-4907
Change-Id: I3cf44f099256a51f21a44a89c89c000f734d1f36

* ci: update build version to 01.08.01.51

Change-Id: Ib20f5a12b65472102befec0a2adf82744fc29c46

* FIX: imgui textinput cannot paste on macos

jira: STUDIO-5070、STUDIO-5365

Change-Id: Iea8f41e12744ecda0fbb95c1a8f2e014a7cdc384

* FIX: not cache printer file list on error

Change-Id: I99843aedbf14d3d1d553ccac9b0bd26403274a82
Jira: none

* FIX: thread of close BBLUserPresetExceedLimit notify

Change-Id: I9698134ba1cc91fc83eac441f900d68c4c4b556a

* ENH: Resolve non manifold edges by fixing model interfaces

Jira: STUDIO-5124
Change-Id: I7ea86be44acb80b6c4762a76208b4a031acd0b27

* FIX:nozzle type sync

jira:[STUDIO-5248]

Change-Id: I63d48628832473d8d371ed643dc8528b00382531

* FIX: array bound happen in TriangleSelector::deserialize

Jira: STUDIO-5170
Change-Id: I92b72a887845b462fad208f13607293b44d3d333

* FIX:cropping rendering without considering assembly views

Jira: STUDIO-5260
Change-Id: Ia56cf80b305ae05f25f06ec277f85b3c5430a6df

* FIX: PA for custom filament not available in BL Studio

github: 2971
Change-Id: I6ccd36a183e7367d69557300f7242f5403f4bb33

* FIX: Bitmap is way too small on Mac

Jira: STUDIO-5393

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: I6b550669fa8cd5fc9bfa6ed96d64d19a949f01b2

* FIX: move shutdown wait to OnExit

Change-Id: I70d9a2bb686525ae5273aa9d63e25691da4ab65c
Jira: STUDIO-2884

* FIX: calibration manage result dialog issue on macos

jira: STUDIO-4949 STUDIO-5378

Change-Id: I00abefd45a0d274a4b68bb1ab18debe8f91d169e

* FIX: adjust bed shape dialog button UI style

fix that button text is hard to see in dark mode
jira: STUDIO-5247

Change-Id: I2cf5b3cdd2eff9b821bdf5525bec4f329fc58dd1

* FIX: 5331 rescale btn

Jira: STUDIO-5331

Change-Id: If153424b8480e64b166018e3cd98c17db557d0a8
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX: support do not generate

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ide9709d95203185538e280517f7aa6136beeda44

* FIX: remove not match printer config ota cache

Change-Id: Ib73fc2ea31fa2186061cfcb5a170bc59b9db84ca
Jira: none

* FIX:cancel the variable of "checkbox_size"  as a fixed value

Jira: STUDIO-5150
Change-Id: I30d876d141b8b35ab4a3fee4889993d87b7c1741

* ENH:add reset_cut_by_contours in on_load function

Jira:STUDIO-5269
m_connector_size_tolerance default value is 0.1f

Change-Id: I6c67fff3cb0c1190e9141ed6f68fbfa848679f35

* ENH:cancel EnterReturnsTrue for imgui in cut

Jira: STUDIO-5269
Change-Id: Ifc4b183a4e4c4fdb4f47742f14f70a1ed93fa056
Signed-off-by: zhou.xu <zhou.xu@bambulab.com>

* FIX: dailytips should not change content frequently when slicing all

jira: STUDIO-5234

Change-Id: Icb7e9c28404d9db8ebed58d937e13f89c5403b5c

* FIX: objectList clone shortcut key issue

jira: new

Change-Id: Ia75bf58a7d53f962e1af6c2fd97497270b7eea84

* ENH:handling cases without msgs

jira:[STUDIO-5401 STUDIO-5399]

Change-Id: Iae651d5a19a45b0138a6aa621326a8b4a9649824

* ENH: optimize param description

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Id0ca9224227a716b21fc0b8430722264dc319344

* ENH: add translation

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I3b1f04fee3cd6322793794ad8b8707859f6c7d26

* FIX: close edit preset paramsDialog, mac unresponsive

Jira: 5298

Change-Id: I021e00567354cfb1f2f5f1f2bf6ba1fc35b164c5

* ENH:disable AI monitoring on the p1p series

Change-Id: I514bb1fb1ced6c03dd619230a9adac3be63f2de2

* ci: update build version to 01.08.01.52

Change-Id: I9f5e30d3fc4b7ef9321c522d3c18fce98f03742f

* FIX: close edit preset paramsDialog, mac unresponsive

Change-Id: Ic816754a20b7f6a5cdb46475750eb301fec3ad3a

* FIX: organic support not work with raft only

There is no raft generated when only raft enabled but no support needed.
jira: none

Change-Id: Ic0c9269e2f98038d85c9bc54e4a85f892dc5d764

* FIX: CLI: add object config when assemble

JIRA: no jira
Change-Id: I945f820fb58f2f643170b4b0b66742f6bbbdfd29

* FIX: delete preset prompt

Jira: XXXX

Change-Id: I6511c806c56393d4f6bd72d1c506da59675d49ff

* FIX:Reorganize the assignment of variables of "m_editing_window_width"

Jira: STUDIO-5238
Change-Id: If369916f3f5c21510f5f297bfd05c1230bdda7a4

* ENH: CLI: re-compute flush_volumes_matrix when it is missed

Change-Id: Ie8f53c6bef003b1434de02ea14de5787b376484f

* FIX: some translation for delete filament

Change-Id: Ib46a8eba33f2e21016476aaab4a57a740e86b1b8

* FIX: scrolled window / del preset / edit filament issue

Jira: 5092
GitHub: 1936
edit filament: just one preset, the scroll bar obscures the preset name
edit filament: delete selected preset, click no, but preset be deleted
from UI
edit filament: serial sometimes displays incorrectly

Change-Id: Ibc91609e252179de0c05ca065099756da6631165

* ci: update build version to 01.08.01.53

Change-Id: I5563a2c0812ab9a0d7727df27e17e681066ffa08

* FIX: mistake in filament vendor

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I3af712e417379d8b98ae18feebffe465bfa1e72d

* NEW:set customized materials for the A1 P1 series

Change-Id: I9c34f62867c074bf9ebb315013e5e40526e0eac7

* ci: update build version to 01.08.01.54

Change-Id: I579dcee428417ae7e7f7a96bd315a7066d72d974

* FIX: the flow rate ratio crashes after load model

for third party printer
Jira: 5244

Change-Id: Idd829c9d99eeba9d180653ac8de4e51b9a0d6370

* FIX: The maximum value is not printed in PA line mode

Jira: 5046  4951
Change-Id: Ic81f9a75ce7f088fe950fdde283ff5c942cd6e83

* ENH:add preset check for sending files

Change-Id: Ia3313d281b5ce91e277b380498014ffdac5debd3

* ci: update build version to 01.08.01.55

Change-Id: Ia839344d01a43f7159f376d4147337575c4edbe1

* FIX: locale loading user preset

Change-Id: I88521e4b10cb802d9253eb79a6b78b3286f15a33
Jira: STUDIO-5436

* FIX: sync user preset notify crash on exit

Change-Id: I88f5dbcbd487293ea847ea6092efb61744399541
Jira: STUDIO-5413

* ci: update build version to 01.08.01.56

Change-Id: Id7a9718d5f920da50d52fd2ef220acf5d3270d3c

* GUI/Field: Fix crash in color picker init (#2220)

wxButton->GetBitmap() may return an invalid wxBitmap.
Guard against this.

* FIX: custom filament preset display in cali history issue

jira: new

Change-Id: I4145450a231adff542ab1a7428b3479f4074e06a

* FIX: meshboolean transform result issue

jira: STUDIO-5425

Change-Id: If66fe909ce4458c1b3192e4fd8a3d758fe7c7eaa

* FIX: fix combobox and delete btn in filament setting enabled

Jira: XXXX

Change-Id: I8b659bd77ceb97c8cea9d3e5e931f4ea50822721

* ci: update build version to 01.08.01.57

Change-Id: I7a6f5439863ca81275ae8b80f1b5cf0bb36c4c0f

* unix: Use canonical mime-type for 3MF files

model/3mf is the canonical mime-type, but keep the
application/vnd.ms-3mfdocument alias.

See for details:
https://gitlab.freedesktop.org/xdg/shared-mime-info/-/merge_requests/179

* FIX: fix the compiling issue under windows

github: https://github.com/bambulab/BambuStudio/issues/3028
Change-Id: Iafde9d2086c0cd31aa12e39cef7ded1e19e9d3e7

* add: K1 and K1Max Support

* fix: Optimized STL and PNG for plates K1 & K1Max

* fix: simple version of models

* FIX: Close scan_first_layer when PA line cali

Jira: XXXX
Change-Id: Ide5c0038f4028b8f1d445a6b2d09b705d7872fb8

* FIX: CLI: fix the wipe tower disappear issue

JIRA: no jira
Change-Id: I547a8468b0bea06912d5d9ceee1c8deead85e28f

* FIX: the preset is the same with the first one when switching printers

Jira: STUDIO-5433

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: Icf1979f2bcffbc9c59a072924df5073fc3eac363

* FIX: [5504] Optimization description

Jira: 5540

Change-Id: I9379f2c69b6724ec1ef5294dd3c404b0e3189486

* FIX: [5451]Directly crash when memory is low

Jira: 5451

Change-Id: I5c75994e2bd556bec7ce8de6be44888e6924ff56

* ci: update build version to 01.08.01.58

Change-Id: I12b1e3ca6b07ed13f3ad42ab2f40b825cb84a8dc

* ENH: CLI: refine some logic

1. set wipe tower position to default when duplicate object
2. add cli_safe check logic when switch printers

JIRA: no jira
Change-Id: Iebe62f8be6acd6f44743abf3b0fe92ec04c94197

* ENH: CLI: allow height shrink when printer switch

to let the error generated at validate
JIRA: no jira

Change-Id: I94db90db858659a9254dfdc0a6eed04fd40d3768

* ENH: add support for A1

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I5dfd8f3b6b872c01d8093527df1a3c37b8a0d56d

* ENH: refine description of interface not for base

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ibe11e845b90ef2caf96d5780eaaf8764755cce1d

* ENH: version: bumped to 1.8.2

Change-Id: Ic9acb5607ec94188112999afa41f2052281a08f1

* ENH: update some machine settings

1. Update A1 mini start  gcode
2. Update A1 load/unload filament time

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I84825a47f2741e95ca122382e4119d35a61bdbf6

* ENH: support for head wrap detect

1.Add "in_head_wrap_detect_zone".Detect if the model projection enters
a specified area.

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I6aed5a782d2f33f023bdc19cf06dff0957828eeb

* ENH: modify default head detect zone

1. Set default head detect to empty

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I686c4c3115041471bc016cf3b0972ed730af64d3

* ENH: change head wrap detect zone

Change to (156,156)-(180,180)

jira:[new]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I7b9dec3fbf44d31311fd7eb331e52f307f45ede1

* FIX:backup iterator location

Jira: STUDIO-5267
Change-Id: Id035c9225a858bb551aa4f09870fc4c6bb30b255

* NEW:compatible with p1p (plus)

jira:[p1p]

Change-Id: I7b30903dc0a728604c4f33c325aa79fd3bd08f68

* NEW:installed & supported p1p(plus)

jira:[pip plus]

Change-Id: I0a69f8629749e3076465b85f28aa39d5e7ae6277

* ENH: modify default head wrap detect zone

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I39ccc810a19192919a21b5608d3fa2a806c787ee

* FIX: excpetion when plate center is negative

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ia1066bd7457181711d0a59b9544d65ed502410e0

* FIX: big window's scaling causes incomplete display

Jira: STUDIO-5530
Change-Id: I1d69e60658e49e43d4b3de718f2fd6739bab73ce

* ENH: update: remove the comment which is not used when updating preset

JIRA: no jira
Change-Id: Ic930eea50a7beb78aa6dc7c53fbb5c366857e825
(cherry picked from commit e0225fc147702cf73e6eda4830a2592c7598901c)

* FIX: wrong initial layer height in profile

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I91f1779761a13f70d68ad51041b7f75ef872c138

* NEW:add N2S picture and printers

JIRA: XXXX
Change-Id: Id8eddd9fafd07c967abfb1543c1b01ad8c0e1b0c

* ENH: rearrange machine pos on printer selection page

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Iccc52043c232d19384487884e4071343744976a9

* ci: update build version to 01.08.02.51

Change-Id: I1985730c4ea29528a6f9b03f56c73131a07779b0

* ENH: some translations

Jira: STUDIO-5434

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: Ie6868728edfc40bd1d20dec6a78d8e5ea7f8edf8

* ENH: do not cancel printing job when timeout

JIRA: STUDIO-5009

Change-Id: I067470173acc26d7ecd8ceb6f0e04ac7f03e3a4d
Signed-off-by: Stone Li <stone.li@bambulab.com>
(cherry picked from commit 7ab5817c7229c5179adca026ffacb97c2affd292)

* ENH: udpate A1 series gcode

1. Update A1 mini change layer gcode
2. Update A1 start gcode

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I131676a991f4727bca1ea2fa727f40f293d06139

* ENH:After cutting,fix non manifold edges needed confirmed by user

Jira: STUDIO-5217
Change-Id: I52ba0db27ebe0b7b763c49311c7aa305bc4dcd5a

* ENH: linux: refine the d-bus name

github: #3075
Change-Id: Icf997f4f9203f4d429e3b6058d6d6e5f23bf29ac
(cherry picked from commit 5c766bff445cefee488ba9d057121b04c8e1445d)

* NEW:add "bed type to follow machine preset" function

Jira: STUDIO-5535
Change-Id: I2ef99a0a783a074d9379685adde11fddfd6f8cec

* NEW:add "default_bed_type"

Jira: STUDIO-5535
Change-Id: Ice1262937923b62854b0196229d5fb99392470af

* ENH:comment out two line code

Jira: STUDIO-5535
Change-Id: I5475e4f9ec6fb7e4abdb3d950da34fadead3b606

* ENH:translate three texts

Jira: STUDIO-5535
Change-Id: I00938567f0ae30bb354042769021451364bef308

* FIX: incorrect flag in A1 mini gcode

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: If587678bf0aa06c079a9d3cbff9f2c7628c5e380

* ci: update build version to 01.08.02.52

Change-Id: I2d8310b7321fefcb742d4cdbe5e4bc9a035ec45a

* FIX: Allow vendors that are not entirely numerical

github: #3082

Change-Id: I318f4df7f65c934ab6703e0970d775b754b24276

* ENH: update A1 series first layer speed

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I597bcf86f202f681eccfda4306be5619d669ea5a

* FIX: CLI: fix the wipe tower issue while mapping to one filament

JIRA: STUDIO-5550
Change-Id: I0b8d3af09d16bdfc45cdc5951d182f7e33dc9b93

* FIX: crash when support type and style are inconsistent

jira: STUDIO-5428
Change-Id: Ib1e79c71736810099e15282c30524e55e8f60f34
(cherry picked from commit aefb7fbaf25146c03bd2eb336f58ed2eb0e83ea6)

* NEW:display beta version

JIRA: XXXX
Change-Id: I78d748e53b266c3397b1c038c3425a52c573cc88

* FIX: slice error: WipeTowerIntegration::append_tcr

when print by object with multi-color
Jira: XXXX

Change-Id: Ic9ee2f6de45abb4a118fdb4cf89dea9ca7335094

* ci: update build version to 01.08.02.53

Change-Id: I980bff783b59fc6e9d6fd12a016c2daa2840991f

* FIX: remove duplicated profiles

jira:[NEW]

Signed-off-by: XunZhangBambu <xun.zhang@bambulab.com>
Change-Id: Iaa87233ae6c327faf43a152bdb0cd6fa8c5131d7

* FIX: translation: vendor can not be number

Jira: XXXX

Change-Id: I7bd45de944e8b25b30c88ab742b35d996c933966

* ci: update build version to 01.08.02.54

Change-Id: Ib83b131c533a03d6e48e9ded5e6f9ba574819756

* ENH: update A1 extruder clearance radius

jira:[NEW]

Signed-off-by: XunZhangBambu <xun.zhang@bambulab.com>
Change-Id: I13cfb882c672083dcd1af2c1be448c5422fdbc0a

* ci: update build version to 01.08.02.55

Change-Id: I8d7016d27166b457e4cdc198b61e6aa36a72b8c1

* FIX: bed_type not follow machine preset

Jira: STUDIO-5578
when direct open project from https://makerworld.com/

Change-Id: I3281cf45e3057d766008487975b4585d2e277110

* ci: update build version to 01.08.02.56

Change-Id: I43cadeeb1a2fa150fa9396a63b9bc471da1500d5

* update strings

* autofix mesh after cut

---------

Signed-off-by: Kunlong Ma <kunlong.ma@bambulab.com>
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Signed-off-by: Stone Li <stone.li@bambulab.com>
Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Signed-off-by: zhou.xu <zhou.xu@bambulab.com>
Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Signed-off-by: XunZhangBambu <xun.zhang@bambulab.com>
Co-authored-by: chunmao.guo <chunmao.guo@bambulab.com>
Co-authored-by: zorro.zhang <zorro.zhang@bambulab.com>
Co-authored-by: hu.wang <hu.wang@bambulab.com>
Co-authored-by: liz.li <liz.li@bambulab.com>
Co-authored-by: Kunlong Ma <kunlong.ma@bambulab.com>
Co-authored-by: maosheng.wei <maosheng.wei@bambulab.com>
Co-authored-by: gerrit <gerrit@bambulab.com>
Co-authored-by: tao wang <tao.wang@bambulab.com>
Co-authored-by: zhou.xu <zhou.xu@bambulab.com>
Co-authored-by: xun.zhang <xun.zhang@bambulab.com>
Co-authored-by: the Raz <rasmus@abc.se>
Co-authored-by: Andy <andylg@yandex.ru>
Co-authored-by: lane.wei <lane.wei@bambulab.com>
Co-authored-by: Arthur <arthur.tang@bambulab.com>
Co-authored-by: Stone Li <stone.li@bambulab.com>
Co-authored-by: enricoturri1966 <enricoturri@seznam.cz>
Co-authored-by: wenjie.guo <wenjie.guo@bambulab.com>
Co-authored-by: zhimin.zeng <zhimin.zeng@bambulab.com>
Co-authored-by: Dmytro Chystiakov <dlchistyakov@gmail.com>
Co-authored-by: mia <652892+mia-0@users.noreply.github.com>
Co-authored-by: Bastien Nocera <hadess@hadess.net>
Co-authored-by: qing.zhang <qing.zhang@bambulab.com>
2023-12-19 23:46:19 +08:00
Ocraftyone
75b1a30293 fix pwsh variable in CICD (#3188) 2023-12-19 16:07:30 +08:00
SoftFever
1a1760ffd9 Fix unicode path for nanosvg (#3179) 2023-12-19 11:15:44 +08:00
Noisyfox
cc06a2e83b Fix sidebar not shown when open 3mf file from command line arg (#3172)
* Show sidebar when open file from cmd

* Fix issue that sidebar collapse button is not enabled when load 3mf file with gcode
2023-12-19 11:15:26 +08:00
Olcay ÖREN
60a9b38404 Turkish words were edited. (#3184)
* Update OrcaSlicer_tr.po

New English terms were translated into Turkish.

* Update OrcaSlicer_tr.po

* Turkish language sentences were added.

* Turkish words were edited.

* Turkish words were edited.

* Turkish words were edited.

* Turkish words were edited.

* Turkish words were edited.
2023-12-19 11:09:05 +08:00
Noisyfox
871f163a32 Fix regression that shell is not rendered unless slice is completed (#3181)
* Fix issue that `is_update_alpha` doesn't work

* Fix regression that shell is not rendered unless slice is completed

* Format
2023-12-19 11:07:21 +08:00
Thomas
3ee42f42da Update OrcaSlicer_fr.po (#3177)
* Update OrcaSlicer_fr.po

Translated all remaining text that were not yet translated in French.

* Update OrcaSlicer_fr.po

Reverted slicer name.
2023-12-18 22:48:18 +08:00
SoftFever
0ab5601add Add "Cancel Objects" support for Prusa/Marlin/RRF firmware (#3164)
object cancel support for Prusa/Marlin/RRF
2023-12-18 04:21:55 +00:00
SoftFever
9c76cefde0 add hints to locale 2023-12-18 12:21:35 +08:00
Heiko Liebscher
5c9f7e24e5 fix Bamabu to Bambu (#3166)
* fix Bamabu to Bambu

* fix dup typo
2023-12-18 04:17:26 +00:00
SoftFever
9e3c393665 Move downloaded deps into DL_CACHE subfolder 2023-12-18 12:16:40 +08:00
Heiko Liebscher
9d5959c353 fix de and other localization files (#3159)
* fix de and other localization files

* Turkish words were edited. (#3161)

* Update OrcaSlicer_tr.po

New English terms were translated into Turkish.

* Update OrcaSlicer_tr.po

* Turkish language sentences were added.

* Turkish words were edited.

* Turkish words were edited.

* kor translation update (#3163)

* fix pot and de

* fix hints de
2023-12-17 22:39:14 +08:00
Lee Jong Mun
b2832270b3 kor translation update (#3163) 2023-12-17 22:05:03 +08:00
Olcay ÖREN
78090aa02a Turkish words were edited. (#3161)
* Update OrcaSlicer_tr.po

New English terms were translated into Turkish.

* Update OrcaSlicer_tr.po

* Turkish language sentences were added.

* Turkish words were edited.

* Turkish words were edited.
2023-12-17 22:04:09 +08:00
SoftFever
522b8485aa Fixed a regression that non spiral vase mode was broken. #3091 2023-12-17 20:27:46 +08:00
andrewboktor
9acd550a9c Full re-write of spiral vase (#3091)
* Practically full re-write of spiral vase
- Adds transition out to prevent sharp edge at the top of spiral vase.
- Adds XY interpolation
- Adds option to turn XY interpolation on/off

* - Increasing E to 5 decimal digits (I observed uneven flow with less than that)
- Excluding all travel moves (I saw a bug where somehow we ended up with travel moves within the print so excluding all travel moves)

* - max_xy_smoothing is now configurable, default is 200% of nozzle_diameter
- fixed no-op travel moves in the middle of spiral that now show up as defects when Smooth Spiral is enabled!

* - Avoiding namespace pollution
- Fixing dist_XY == 0 bug

---------

Co-authored-by: Andrew Boktor <aboktor@microsoft.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-17 13:48:21 +08:00
SoftFever
995ed049cb Revert "Do not limit the max window size (#2889) (#3142)"
This reverts commit fe80dc6ca6.
2023-12-17 09:01:59 +08:00
SoftFever
dea7f419cf Revert "Fix window maximize when task bar is on the left. (#3148)"
This reverts commit 0f87fdb98b.
2023-12-17 09:01:52 +08:00
Noisyfox
0f87fdb98b Fix window maximize when task bar is on the left. (#3148)
Partially revert fe80dc6
2023-12-16 15:31:10 +00:00
SoftFever
183f8fb012 update locale 2023-12-16 22:41:45 +08:00
SoftFever
1929fb0e18 Tweak dailytip: remove images/added a few new tips 2023-12-16 22:41:36 +08:00
Noisyfox
fe80dc6ca6 Do not limit the max window size (#2889) (#3142) 2023-12-16 14:25:28 +00:00
Ioannis Giannakas
712c28251c Updated wipe logic to respect retraction speed during wiping (#3094)
* Wipe retraction adjusted based on available wipe distance and retraction speed

* Wipe Improvements: Removed debug code, removed retract before wipe and made the respect retract speed an option.

* Wipe improvements: Spelling & grammar

* Revert "Wipe improvements: Spelling & grammar"

This reverts commit c8f8612b3f.

* Revert "Wipe Improvements: Removed debug code, removed retract before wipe and made the respect retract speed an option."

This reverts commit ba515ffb62.

* Wipe improvements: Using retraction before wipe parameter to judge when to do excess retraction

* Wipe Improvements: Floating point comparison check

* Wipe Improvements: Refactoring the code

* Wipe Improvements: Updated Wipe Distance tool tip

* Wipe Improvements: Removed redundant code

* Wipe Improvements: Use unscale_
2023-12-16 13:54:03 +00:00
Noisyfox
7b6dbfdbcc Fix checking is volume svg (#3129)
(cherry picked from commit prusa3d/PrusaSlicer@f31d7f1d8c)

Co-authored-by: Filip Sykala - NTB T15p <Filip.Sykala@Prusa3D.cz>
2023-12-15 22:59:17 +08:00
SoftFever
1e7300a476 Update M106 macro for auxiliary fan. fix is by @IntenseWiggling from PR #3133 2023-12-15 22:57:27 +08:00
IntenseWiggling
de0f5c9d1e Fix value passed to SPEED in air-filteration.md macro. (#3133)
Fix value passed to SPEED

The SPEED parameter of SET_FAN_SPEED needs to be between 0.0  and 1.0. Since the S param, which is between 0 and 255, was being passed as is to SPEED, it effectively resulted in the target fan running at 100% if any value > 0 was passed to M106.
2023-12-15 22:54:16 +08:00
Seth LaForge
3ca290d503 Improve ExtrusionLine::simplify, eliminating many very-short extrusion segments which led to blemishes in thin-wall models sliced with Arachne (#3014)
Improve toolpath simplification to avoid blemishes when using Arachne on thin walls.

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-15 02:46:33 +00:00
Alex Khalilieh
41f0e4d1ce Adds rotate on stl import (#3116)
* Adds rotate on stl import

* Fixed comma placement

* update location of rotate variables

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-15 00:59:35 +00:00
SoftFever
dc840ea451 update some profiles 2023-12-14 19:46:17 +08:00
Ioannis Giannakas
0a31b33b2b Fix #2662 - "Extra length on restart" setting is ignored when wipe is enabled (#3065)
Fix #2662
2023-12-13 22:16:39 +08:00
SoftFever
fa9148670c Update dependencies for compiling Orca on Mac 2023-12-13 20:59:34 +08:00
SoftFever
7393d61e8d Neptune4 profile updates, support preview image and some setting changes 2023-12-13 20:55:19 +08:00
SoftFever
dad0f348ab Update QIDI profile to display preview images on printer's monitor. 2023-12-13 18:27:02 +08:00
SoftFever
58e43ccb39 Fix a regression that thumbnails were not zoomed properly 2023-12-13 18:13:25 +08:00
Ev
d75bac2f01 make fan percentages a float (#3087)
makes fan percentages an int.

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-12 21:56:20 +08:00
SoftFever
103d778e63 Fix false "The 3mf has following modified G-codes in filament or printer presets" warning when loading a project 2023-12-12 19:24:31 +08:00
SoftFever
057926f957 Reuse bed model across Voron 2.4 and Trident 2023-12-11 22:52:41 +08:00
SoftFever
dd5fd06356 Add ColPic encoding for thumbnails(;gimage/;simage) as metadata.
This will enable showing preview images on QIDI/Elegoo machines
2023-12-11 22:27:40 +08:00
SoftFever
ae8995fec2 update user agent 2023-12-11 22:20:42 +08:00
Dylan
62bd10a27c Disable the cooling moves for snapmaker printers (#3081)
disable the cooling moves for snapmaker printers
2023-12-11 22:04:24 +08:00
StdVectorBool
2174cd6999 FIX: K1/Max profiles use consistently higher accelerations (#3052)
* FIX: K1/Max consistently increase Default accel to match Creality.

* FIX: K1/Max consistently decrease initial_layer_acceleration.

* FIX: K1/Max consistently increase Top accel to match Outer Wall quality.

* FIX: K1/Max consistently increase Travel accel instead of inherited slow default.

* More tweaks

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-11 22:03:09 +08:00
Nevax
fdd42eccd2 add bed models for voron 2.4 variants (#3075)
Credits to ldo for 3d models.
https://github.com/MotorDynamicsLab/LDOVoron2/tree/main/Slicer/PlateModels
2023-12-11 22:01:43 +08:00
SoftFever
e70da30753 Fixed a regression issue that wrong accel was used for PA Line 2023-12-10 21:21:12 +08:00
Ioannis Giannakas
9e10266646 Updated PA test to address crash when default line width was zero (#3055)
Updated PA test address "bug" #3043
2023-12-10 09:57:50 +08:00
SoftFever
b218d81d38 Fix btt tft thumbnail regression (#3056)
fix btt tft thumbnail regression
2023-12-10 09:56:40 +08:00
Noisyfox
933aa3050b Port Emboss & SVG gizmo from PrusaSlicer (#2819)
* Rework UI jobs to make them more understandable and flexible.

* Update Orca specific jobs

* Fix progress issue

* Fix dark mode and window radius

* Update cereal version from 1.2.2 to 1.3.0

(cherry picked from commit prusa3d/PrusaSlicer@057232a275)

* Initial port of Emboss gizmo

* Bump up CGAL version to 5.4

(cherry picked from commit prusa3d/PrusaSlicer@1bf9dee3e7)

* Fix text rotation

* Fix test dragging

* Add text gizmo to right click menu

* Initial port of SVG gizmo

* Fix text rotation

* Fix Linux build

* Fix "from surface"

* Fix -90 rotation

* Fix icon path

* Fix loading font with non-ascii name

* Fix storing non-utf8 font descriptor in 3mf file

* Fix filtering with non-utf8 characters

* Emboss: Use Orca style input dialog

* Fix build on macOS

* Fix tooltip color in light mode

* InputText: fixed incorrect padding when FrameBorder > 0. (ocornut/imgui#4794, ocornut/imgui#3781)
InputTextMultiline: fixed vertical tracking with large values of FramePadding.y. (ocornut/imgui#3781, ocornut/imgui#4794)

(cherry picked from commit ocornut/imgui@072caa4a90)
(cherry picked from commit ocornut/imgui@bdd2a94315)

* SVG: Use Orca style input dialog

* Fix job progress update

* Fix crash when select editing text in preview screen

* Use Orca checkbox style

* Fix issue that toolbar icons are kept regenerated

* Emboss: Fix text & icon alignment

* SVG: Fix text & icon alignment

* Emboss: fix toolbar icon mouse hover state

* Add a simple subtle outline effect by drawing back faces using wireframe mode

* Disable selection outlines

* Show outline in white if the model color is too dark

* Make the outline algorithm more reliable

* Enable cull face, which fix render on Linux

* Fix `disable_cullface`

* Post merge fix

* Optimize selection rendering

* Fix scale gizmo

* Emboss: Fix text rotation if base object is scaled

* Fix volume synchronize

* Fix emboss rotation

* Emboss: Fix advance toggle

* Fix text position after reopened the project

* Make font style preview darker

* Make font style preview selector height shorter

---------

Co-authored-by: tamasmeszaros <meszaros.q@gmail.com>
Co-authored-by: ocornut <omarcornut@gmail.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-09 22:46:18 +08:00
Ioannis Giannakas
7a8e1929ee Fixed a bug that caused curled edge detection not to work as expected for left facing edges when using Arachne. Enabled fan speed control for curled overhangs (#3034)
* Update malformation distance factors (curled edge detection)

* Updated curled detection logic from latest prusa 2.7 release, including updated estimate_points_properties algorithm

Updated curled detection logic from latest prusa 2.7 release, including updated estimate_points_properties algorithm

* Curled distance expansion const introduction

* Enable overhang fan speed logic for curled edges slow downs

* Reverted erroneous change
2023-12-09 09:17:49 +00:00
Jim Broadus
325009bc48 Fix build error with CGAL 5.6 with -std=gnu++17 on Fedora (#3045)
Fix build with CGAL 5.6

Surface_mesh iterators no longer return references, so it's necessary to
use const references or copies when iterating.
2023-12-09 09:14:20 +00:00
Olcay ÖREN
a8f69377df Turkish language sentences were added for web wizard. (#3047)
* Update OrcaSlicer_tr.po

New English terms were translated into Turkish.

* Update OrcaSlicer_tr.po

* Turkish language sentences were added.
2023-12-09 08:42:05 +00:00
Noisyfox
59164bff88 Various fix & improvements to collapse sidebar (#3044)
* Fix sidebar collapse button color in dark mode

* Make collapse button half the size

* Add tooltip to sidebar collapse button

* Don't trigger sidebar collapse hotkey twice

* Fix sidebar disable on gcode-only mode
2023-12-09 08:41:09 +00:00
Noisyfox
f598a1209a Only regenerate bed triangles if actually changed (#3039)
* Remove unused bed texture

* Only regenerate bed triangles if actually changed
2023-12-09 08:40:04 +00:00
SoftFever
d24aef36ae set osx deployment target for openssl 2023-12-09 14:08:19 +08:00
SoftFever
ccd3c44fab fix mac build pack error 2023-12-09 00:34:54 +08:00
Ioannis Giannakas
1c6f2c6817 Merge upstream BBL changes up to 5th Dec (01.08.01.57) & fix issues with 1.8 BBL merge (#2994)
* FIX: mistake in filament vendor

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I3af712e417379d8b98ae18feebffe465bfa1e72d

* NEW:set customized materials for the A1 P1 series

Change-Id: I9c34f62867c074bf9ebb315013e5e40526e0eac7

* FIX: the flow rate ratio crashes after load model

for third party printer
Jira: 5244

Change-Id: Idd829c9d99eeba9d180653ac8de4e51b9a0d6370

* FIX: The maximum value is not printed in PA line mode

Jira: 5046  4951
Change-Id: Ic81f9a75ce7f088fe950fdde283ff5c942cd6e83

* ENH:add preset check for sending files

Change-Id: Ia3313d281b5ce91e277b380498014ffdac5debd3

* FIX: locale loading user preset

Change-Id: I88521e4b10cb802d9253eb79a6b78b3286f15a33
Jira: STUDIO-5436

* FIX: sync user preset notify crash on exit

Change-Id: I88f5dbcbd487293ea847ea6092efb61744399541
Jira: STUDIO-5413

* ci: update build version to 01.08.01.56

Change-Id: Id7a9718d5f920da50d52fd2ef220acf5d3270d3c

* GUI/Field: Fix crash in color picker init (#2220)

wxButton->GetBitmap() may return an invalid wxBitmap.
Guard against this.

* FIX: custom filament preset display in cali history issue

jira: new

Change-Id: I4145450a231adff542ab1a7428b3479f4074e06a

* FIX: meshboolean transform result issue

jira: STUDIO-5425

Change-Id: If66fe909ce4458c1b3192e4fd8a3d758fe7c7eaa

* FIX: fix combobox and delete btn in filament setting enabled

Jira: XXXX

Change-Id: I8b659bd77ceb97c8cea9d3e5e931f4ea50822721

* ci: update build version to 01.08.01.57

Change-Id: I7a6f5439863ca81275ae8b80f1b5cf0bb36c4c0f

* Fix crashing of flow rate calibration post BS 1.8 merge

* Revert Staggered Inner Seam logic from Prusa slicer that was overwritten by the BS1.8 update

---------

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Co-authored-by: xun.zhang <xun.zhang@bambulab.com>
Co-authored-by: hu.wang <hu.wang@bambulab.com>
Co-authored-by: zhimin.zeng <zhimin.zeng@bambulab.com>
Co-authored-by: tao wang <tao.wang@bambulab.com>
Co-authored-by: chunmao.guo <chunmao.guo@bambulab.com>
Co-authored-by: gerrit <gerrit@bambulab.com>
Co-authored-by: mia <652892+mia-0@users.noreply.github.com>
Co-authored-by: liz.li <liz.li@bambulab.com>
Co-authored-by: maosheng.wei <maosheng.wei@bambulab.com>
2023-12-08 10:27:24 +00:00
Noisyfox
7cfa4f3bcd QoL: Make sidebar collapsible, resizable, movable, floatable and dockable (#2972)
* Add sidebar docking

* Fix sidebar initial size

* Fix sidebar collapse

* Hide floating sidebar when switch away from model view

* Add option to reset window layout

* Save & load window layout

* Fix a small issue with gcode toggle

* Properly save & restore sidebar state

* Show collapse icon based on sidebar docking state

* Adjust toolbar position based on docking position

* Fix return toolbar position

* Fix plate list position
2023-12-08 09:16:16 +00:00
Thomas
3d2ab8e2e2 French language update (#3019)
* French language update

Imported FR strings from Bambustudio to keep same strings.
Fixed a syntax error.
Added missing translations.

* Update OrcaSlicer_fr.po

Changed mention to Bambu Studio, updated name to OrcaSlicer (1 word instead of 2 like before)
2023-12-07 11:34:11 +00:00
Dylan
63d46c5c83 Update snapmaker files (#3009) 2023-12-06 22:40:15 +08:00
Olcay ÖREN
77e0c164e8 Update OrcaSlicer_tr.po (#3017)
* Update OrcaSlicer_tr.po

New English terms were translated into Turkish.

* Update OrcaSlicer_tr.po
2023-12-06 22:02:52 +08:00
Lee Jong Mun
ca4c75f577 kor translation update (#2991)
fix

remove c-format

fix typo

fix
2023-12-06 22:02:28 +08:00
Fabio Forcina
7030ec55cf Italian translation update (#3006)
Some corrections and updating to version 1.8.1
2023-12-05 22:47:48 +08:00
SoftFever
685de31088 Revert "Add a simple subtle outline effect by drawing back faces using wireframe mode (#2934)"
This reverts commit 0cee513416.
2023-12-05 22:05:11 +08:00
Armael
f0e35839fb Update OrcaSlicer_ru.po (#3007)
Misprint in translation
2023-12-05 21:56:43 +08:00
Trist0ne
a850cd9f3f HOTFIX: Fixed T500 broken fdm_process file and added new build plate texture (#2999)
Fixed broken fdm_process file and added new build plate texture
2023-12-05 21:56:13 +08:00
Kalooth
dae9d62be5 Initial add of Neptune 4 Plus profile (#2980)
* Initial add of N4Plus profile

Still some tuning to get it "right" but way better than nothing or just copying the Max profile.

* Fixing machine_start and manual filament change

Adding PRINT_START to the machine_start_gcode
Adding manual_filament_change override to True since this printer doesn't have automatic filament change.

* Adjusting accelerations and removing Z-Hop

Bumping accelerations to stock levels for all sizes and removing Z-Hop by default.

* Adding Z-Hop back in to be safe

Getting more stringing with Z-hop on but also rubbing prints during some moves.

* Removing print_start and lower accels a little

PRINT_START is automatically called on this printer so removing it from machine start gcode
Lowering accelerations a tiny bit. May bump it back up later but wanted a safer value.
2023-12-05 21:35:34 +08:00
Ioannis Giannakas
82cb9e3565 QOL: Dev 1.9 - Regroup Advanced Quality Options (#2962)
* Dev 1.9 - Regroup Advanced Quality Options

* Regroup Advanced Quality Options

* Regroup advanced quality options and flow rate labels

* Updates labels for consistency. Renamed Order of walls to Walls printing order. Updated walls printing order and print infill first tooltip

* Another option spelling mistake

* Another spelling mistake part 2

* Updated localisation files

* Updated de localisation file post upstream merge to resolve conflicts

* Fix merge error when transferring change to branch.

* update locale file for one more message

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-05 21:23:31 +08:00
Dylan
1998ec41c5 Update Snapmaker profiles (#2939)
* fix printing parameters for Snapmaker printers

* update

* Update Snapmaker profiles

* update end gcode
2023-12-05 21:08:48 +08:00
SoftFever
d45ac9201d create debug folder automatically 2023-12-05 20:55:42 +08:00
SoftFever
7699dbb272 fix an issue that image is not showen in precise wall wiki 2023-12-05 20:55:42 +08:00
SoftFever
9e63d42444 Sign app and notary Mac build for Release branches 2023-12-05 20:55:42 +08:00
Ocraftyone
25a055491e Update wxWidgets to v3.2.1 (#2905)
* Upgrade wxWidgets to 3.2.1
Based on prusa3d/PrusaSlicer@9a7e024

Co-authored-by: tamasmeszaros <meszaros.q@gmail.com>

* Implement BitmapCache

* update wxExtensions while keeping legacy items

* update dc.DrawBitmap calls to use get_bitmap

* Fix GetSize/Width/Height calls

* update BitmapComboBox

* fix ifndef in wxExtensions.hpp

* update my todos to OcraftyoneTODO

* Get to a compilable state
Everything seems to be working (including the plater). I am not seeing any graphical issues

* fix extruder color icons

* fix crash on opening support tab

* remove GetBmpSize method from DropDown.cpp

* Update TextInput to use bitmap bundles

* update a TODO after testing

* fix the rendering of the icons on combobox

* fix a few todos

* fix WipeTowerDialog.cpp

* Overhaul WipeTowerDialog

Removed simple version of the dialog since BBS removed the functionality but left the code.
Center the table (only seen when the table is smaller than the minimum size of the dialog)
Fix issue where editing a value causes the m_min_flush_label to change colors slightly
Fix an issue where changing a value or running an auto calc changes the disabled value from "-" to "0"

* update a few todos

* Update some todos

* Show dropdown when editing is started

* Update NanoSVG.cmake

Update NanoSVG to work with PR #2780

* Dim the icon on ComboBox when disabled

* solve ObjectDataViewModel todos

leaving colPrint and colEditing cases alone as it does not seem to impact anything

* Update names in wxExtensions

-Rename msw_rescale to sys_color_changed
-Replace GetBmpSize, GetBmpWidth, GetBmpHeight with renamed version (same name without "Bmp")

Both of these changes were also made by PrusaSlicer.

Original Commit: Prusa3D/PrusaSlicer@066b567
Co-authored-by: YuSanka <yusanka@gmail.com>

* update BitmapCache::from_svg

disable finding bundle in the cache to match load_svg
update to match values used in load_svg

* Update ScalableButton

change the signature and remove functions/vars pertaining to a default bmp
fix TODOs in ScalableButton

Original Commit: Prusa3D/PrusaSlicer@066b567
Co-authored-by: YuSanka <yusanka@gmail.com>

* fix up some more todos in wxExtensions

* update ScalableBitmap to use bmp bundles

use wxBitmapBundle by default
add flag to use old scaled bitmap function (specifically to solve issue with advanced toggle)

* attempt to fix macos deps build

* fix ubuntu build

* Revert "attempt to fix macos deps build"

Mistakenly made change to wrong file

This reverts commit d9c20b5121.

* update wxWidgets patch

an attempt to fix macOS build

* Remove duplicate variable from OrcaSlicer.cpp

* Fix macOS build issue

* Fix blank DataViewItem being added to objects list

* Filament ComboBox editor updates

-Add show drop down feature to ObjectTable
-Call finish editing when ComboBox is closed in ObjectList

* remove Apple specific declarations missed during refactor

* delete old wxWidgets patch

* fix ubuntu seg fault

* include patch from #2926

* update patch to include wxWidgets/wxWidgets@991a74c

* fix deps not compiling on Windows

* update WipeTowerDialog

relocates the recalculate button back to its previous position
changes the wording of the tip message label
add spacing below the matrix

* finish patching wxWidgets

from prusa3d/PrusaSlicer@f8477d1 and prusa3d/PrusaSlicer@066b567

Co-authored-by: YuSanka <yusanka@gmail.com>

* fix combobox crash

* revert outside plate changes

---------

Co-authored-by: tamasmeszaros <meszaros.q@gmail.com>
Co-authored-by: YuSanka <yusanka@gmail.com>
2023-12-04 15:21:49 +00:00
Paul
0bf65aa217 Additional Nozzles for the Creality Ender-5 Pro (2019) (#2964)
* Add 0.6mm Nozzle Configurations for CE5Pro

* Add 0.5mm Nozzle Configurations for CE5Pro

* Add Nozzle Size Printer Variants 0.2-1.0mm

* Add 0.3mm Printer Variant

* Add 0.5mm Printer Variant

* Fix: 0.6mm Printer Variant

* Add Remaining Printer Variants

* Add CE5Pro Nozzles to list of Compatible Filament

* Add Generic FDM Process for Creality 0.3 Nozzle

* Update Generic FDM Process for Creality 0.6 Nozzle

* Add FDM Process for Remaining Creality Nozzle

* Add Processes For CE5Pro 0.8mm Nozzle

* Add Processes For CE5Pro 1.0mm Nozzle

* Add Processes For CE5Pro 0.2mm Nozzle

* Fix Initial Layer Settings

* Add Processes For CE5Pro 0.25mm Nozzle

* Add Processes For CE5Pro 0.3mm Nozzle

* Remove Profiles Outside their Min/Max Layer Height

* Update CE5Pro 0.4 Nozzle Naming Scheme to PR1100

* Update CE5Pro 0.2 Nozzle Naming Scheme to PR1100

* Update CE5Pro 0.25 Nozzle Naming Scheme to PR1100

* Update CE5Pro 0.3 Nozzle Naming Scheme to PR1100

* Update CE5Pro 0.5 Nozzle Naming Scheme to PR1100

* Update CE5Pro 0.6 Nozzle Naming Scheme to PR1100

* Update CE5Pro 0.8 Nozzle Naming Scheme to PR1100

* Update CE5Pro 1.0 Nozzle Naming Scheme to PR1100

* Incl. Remaining Base Config That Diff Is Based On

* Remove whitespace

* Revert from Nozzle Naming Scheme in PR1100

* Update Nozzle Names

* Revert "Incl. Remaining Base Config That Diff Is Based On"

This reverts commit 87e15d621b.
These settings were already captured by fdm_process_creality_common.json

* Fix Indentations
2023-12-03 12:02:03 +08:00
SoftFever
d22a7254c4 Fix precise wall for Arachne wall generator (#2966)
Update WIKI for it
2023-12-03 09:43:18 +08:00
Heiko Liebscher
8f660f5b6a fix typo "Improt Preset" and add new de for 1.9dev (#2968)
Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-03 09:42:58 +08:00
Ioannis Giannakas
b86b077075 Dev 1.9 - Fix Spelling Mistake on Create Printer dialog box (#2961)
* Fix Spelling Mistake on Create Printer dialog box

* Dev 1.9 - Regroup Advanced Quality Options

* Revert "Dev 1.9 - Regroup Advanced Quality Options"

This reverts commit 6ffae875f0.
2023-12-03 09:38:17 +08:00
stew675
ab2a2d5725 Add zhop to PA pattern (#2952)
The current PA pattern implementation does not lift the nozzle
when moving.  The way the pattern is drawn means that the nozzle
is often dragged over already printed lines, which can pull the
pattern off the bed, or damage the lines already drawn. As a
result I often see failed prints with the PA pattern, or moderate
damage to already drawn lines.
This change adds a 1 layer hop between each move to eliminate
nozzle drag.
2023-12-03 09:37:33 +08:00
Noisyfox
a6c927d87f Add option to disable emitting M73 gcode (#2114) (#2940) 2023-12-03 09:36:27 +08:00
Noisyfox
0cee513416 Add a simple subtle outline effect by drawing back faces using wireframe mode (#2934)
* Add a simple subtle outline effect by drawing back faces using wireframe mode

* Show outline in white if the model color is too dark

* Make the outline algorithm more reliable

* Enable cull face, which fix render on Linux

* Fix `disable_cullface`
2023-12-03 09:27:03 +08:00
SoftFever
2745575dd2 bump version to 1.9.0-dev 2023-12-02 13:03:47 +08:00
SoftFever
c6bf6ec15c update locale 2023-12-02 13:03:09 +08:00
SoftFever
bfd8ac6e40 Improve PA calibration Line method so it works for bed origin not in (0,0)
(cherry picked from commit f0522065d8)
2023-12-02 12:53:43 +08:00
SoftFever
cd1be11458 thick internal bridges (#2954)
(cherry picked from commit f2f2ede5d5)
2023-12-02 12:53:34 +08:00
SoftFever
be91ae6ebe disable misleading 3mf version warning
(cherry picked from commit b4b9805383)
2023-12-02 12:53:11 +08:00
Ioannis Giannakas
643476084a Feature Merge: Fix missing options on print window (#2951)
Fix missing options on print window - Feature merge
2023-12-02 04:51:28 +00:00
Ioannis Giannakas
205bf5db3f Feature Merge: Fix for inner-outer-inner mode post BBS feature merge (#2949)
Fix for inner-outer-inner mode post BBS feature merge
2023-12-02 04:51:14 +00:00
SoftFever
f899025363 Revert "Adding new nozzle profiles for the Creality Ender-5 Pro (2019) (#2817)"
This reverts commit eab8139d3c.
2023-12-02 10:24:12 +08:00
Ioannis Giannakas
ae9a2d5929 Updated internal bridging flow change and reverted bridge PR (#2943)
Updated internal bridging flow change & reverted bridge PR
2023-12-01 15:50:58 +00:00
Ocraftyone
6ba1e6d6ae Set PointerAlignment to Left (#2948)
A lot of the codebase that I have seen typically uses a left justified pointer character. This would update the formatter to also follow that.
2023-12-01 15:32:48 +00:00
SoftFever
3923b9c846 Improve arc fitting when new overhang slowdown is used (#2942) 2023-12-01 15:13:26 +00:00
SoftFever
d8dd8fa634 Feature/bs1.8beta (#2844)
* ENH: Show Recent File Image Keep Scale

Change-Id: Ib8a6cf916eaee8e353bf858bc4f2ea503705809e

* FIX: wipetower position problem

jira: STUDIO-4914

Change-Id: I7b05d3c53931ed8ce3d4603ff21ee6ef675611e5

* FIX: dailytips adapts screen scale

jira: STUDIO-5019 STUDIO-5026 STUDIO-5027 STUDIO-5028 STUDIO-5025

Change-Id: I63d3af1870218ba8e0f048a6ef03fb29fabe27cb

* FIX: generate process preset based on template

Jira: XXXX

Change-Id: I50adf0790dc239307d236a4cebece860ef6beb16
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX: object list plate name edit

Change-Id: I61d3dcd7d9598d759a3a0b44cc77d2af2adca25a
Jira: STUDIO-4937

* ENH:no longer checking nozzle type

jira:[for nozzle type check]

Change-Id: I0e88445a264f21b0c11519e9a22a165d05611d14

* ENH: improve first layer tree support

First layer support can't be top interface, and
min brim width of auto mode should be larger
than 0.

Jira: STUDIO-5010
Change-Id: I02f8b017b535f8a47965387e8679f692b1966e04
(cherry picked from commit 3e7d54abe352e8ab5f9d6492b5a86a96f9067f94)

* ENH: version: bumped to 1.8

JIRA: no jira
Change-Id: I50903098b59f1dd9a6b6cf7656cec7d388f3ff17

* ENH:try again after subscription failure

jira:[Try again after subscription failure]

Change-Id: Ibfb1e8e26eb166d786a372632a86ef98030db034

* ENH:display msg dialog once

jira:[for http error msg]

Change-Id: I12e9c155fdb567cac99c35b6feeef650269ba75d

* ENH:remove config.json file

Change-Id: Idfcf3a63fefe968e88153c26fb691fd05cd83dc4

* ENH:add protection in threads

jira:[for random crash]

Change-Id: I6286012dd77abccba461f7cd72a6fc531a84c95f

* FIX: add protection for get_model_task_thread thread

Jira: XXXX

Change-Id: I3cbc17d181a0e13c658f31eaeb6a4df878e6df41
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX: delete all compatible presets when delete third printer

Jira: XXXX

Change-Id: I1a294402627e7ab7a8c6701f20679b3d04aff059
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* ci: update build version to 01.08.00.51

Change-Id: I20a01adacbdb5fe69c106b9efd029f7308136e10

* ENH: default open support_interface_not_for_body

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I48e084deb18633f9ec47a8ec4ec643163bf66318

* ENH:modified text with too low version

jira:[for low version]

Change-Id: I862a0defda976a35f326a8805e002330f2ed7fdf

* NEW:update printer config file version

Change-Id: I9a46b29b03beb67a3da0b8f76d8b5c4b3c482928

* FIX:The plane should rotate around the world coordinate system

Jira: STUDIO-5054
Change-Id: I16e484b38d79cabd9473acf1abf3c5c6b0adc4c6

* ENH:translate for limit file size and so on

Jira: STUDIO-5007
Change-Id: I2c279eb690841aa51cd8128f8028266cbc17e977

* ENH:use on_render_rotate_gizmos() replace GLGizmoRotate3D::on_render()

Jira: STUDIO-4227
Change-Id: If9b9ea5596e59472d5fa87ac56aeb7f6ecc65643

* FIX: some mistakes in filament profiles

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ibe7f3650f2d9cf47561dd5f2ec591a5f6c553503

* FIX: fix shard_ptr is null

Change-Id: I0187cf64ffbb08a2265a11900b5c865e9ac9678f

* FIX:N1 printer image in dark mode

JIRA:STUDIO-4057
Change-Id: I22c001d96839daf213d5096f6ff6e3d6398fa8c4

* FIX: create printer issue

Jira: 5034 5059 5053
5034 create printer but filament is repeat
5039 create successful dialog remove to center
5053 create existing printer copywriting adjustments and preset updates
Delete printer secondary confirmation dialog

Change-Id: Ifb3822d1e168459d2af11e02b31ecaf3719d338a
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* ENH:just don't check the nozzle diameter

jira:[for nozzle check]

Change-Id: I678e7d62832eaa14b9be47d6dce70f29ebd601f6

* NEW:p1 and x1 series added motor noise calibration

JIRA: 5085
Change-Id: Id73cc2d34b6130f215d81ffcdc39ba6b241445bf

* ci: update build version to 01.08.00.52

Change-Id: I93d800b413f2751d132fac53fbd9b191603d0352

* FIX: ObjectSetting changed when search plate

JIRA: STUDIO-5095

Signed-off-by: Kunlong Ma <kunlong.ma@bambulab.com>
Change-Id: I39b1ad997d51ac4224ff5ad2b3555f56da4bd911

* FIX: invalid support params in 3rd party profiles

Many params are not right.Just use default

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I5c4a1e8b046940e174f5681a79031b5f20fcafc5

* ENH: update A1 mini start gcode

Change x-axis freq sweep amp 5->10

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I2e731cc6392c0204d5e4467bf4b933ab233bc157

* FIX: [STUDIO-4946] use utf8 path to create sub process

Change-Id: I5873c114e8cd36978a7d50bf13c3aa7bf8b740ca
Jira: STUDIO-4946

* FIX: fix a plate state not correct issue

JIRA: no-jira
the object and instance states lost after undo

Change-Id: I527df9a7d426d994501a4ed5bbb198c7bbac810b

* FIX: some translation

Jira: 5096 5089 5036 5004

Change-Id: I4f1bd6e352b11451f5caf02cbc4eeb31dfa03eee
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX: [STUDIO-4935] plate name edit in object list

Change-Id: I271fa217281d0c7ceca61166497136628a66681e
Jira: STUDIO-4935

* FIX: take custom root as AMS sync candicate

Change-Id: I9c71babcd74238d1533b15d77a978b19997c70c0
Jira: none

* FIX: modify some default support params in code

1. Modify default values of some supports params, so 3rd party profiles are easier to setup.
3. Fix a bug that organic support may cause crash.

Jira: none

Change-Id: Icae348d8fe5985f4287404e96089198a499283f2
(cherry picked from commit 8889cfc703b72e142f288e525b89c87619f2213c)

* FIX: do not generate sheath for normal support

Jira: none
Change-Id: I8f3f3e39171055f8d18c06ceee8e245594273238
(cherry picked from commit 93bc7ecf4346f179f502bebc3cf47b0030b56e2c)

* FIX: push_notification on GUI thread

Change-Id: Iaec347f5684fe0f65d6418759518189b67033c42
Jira: STUDIO-5106

* ENH: CLI: add some params to support more functions

1. uptodate_filaments to support update the original filaments to newest config
2. allow_rotations/avoid_extrusion_cali_region for auto-arrange
3. skip_modified_gcodes to support skip modified gcodes

JIRA: STUDIO-5112
Change-Id: I95c09af1b5462cce3bf27aea32228d6d1d1d201d

* FIX: missed manually entered values for secondary processing

Jira: STUDIO-4964
Change-Id: I5cf0da1ae77cccd34de05b4a0318a751ac9f6753

* FIX: Z hop is still enabled when upper boundary is zero.

Jira: STUDIO-4893

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: I5f46a02e1fbb15ff43e253e3a184aa6cc38e7598

* ENH: update default filaments for Bambu printers

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ic6380f39e546854ad0b7dc36929a8605c9ab3acc

* ENH: dailytips modification

1. modify closing behavior
2. dailytips can adjust self size according to the canvas size. And also adjust
   GodeViewer legend window size
3. fix a button text encoding bug
4. support vertical/horizontal layout(horizontal layout currently not used)

jira: new

Change-Id: I8e0b6e85c455d0608d7388fb441829c1991ad01f

* FIX: [4857 5097] export list and del preset two confirm issue

Jira: 4857 5097

Change-Id: If7cc4967a663f575527a227e9c4ac31e0491930c

* FIX: UUID conflict issue when referencing volume

Jira: XXXX
3mf file standard

Change-Id: I953a87294684ea85d03a95e7d2843c096904aeae
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX: [4483 5003 5109] create printer and edit filament issue

Jira: 4483 5003 5109
4483 dialog blink
5003 preset list too long
5109 encode

Change-Id: I190e12272ca09f36b841f2f85a6cf60f2c2614bd
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX: cloud use presets limit notify

Change-Id: I6cc7b4e560cb83db0fc30921633b10531957128e
Jira: STUDIO-5091, STUDIO-5104

* FIX: do user preset sync later on startup

Change-Id: I0653a0438477b1c803ce1cddc66ef47f95616dae
Jira: STUDIO-5106

* FIX: linux: pressing enter in height range will crash

jira: STUDIO-4391
Change-Id: I6bf990951d1456f5b2605b8d62a05bceb3cc4c10

* FIX: failed to limit the max width of DropDown

Jira: STUDIO-4503

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: Id9352d16f4bc016daade72a9c8d3d90164a1cb3d

* FIX: not jump to preview after first wizard

Change-Id: I8c94d66a91aa15a7874441a300b40438638bd33b
Jira: STUDIO-5018

* ENH: CLI: clear custom gcodes when skip_modified_gcodes

JIRA: STUDIO-5112
Change-Id: I2e7346d2ac57519029a4e80e5492c34d3d91ed77

* FIX: [4492 4851 4883 5121] create printer issue

Jira: 4492 4851 4883 5121

Change-Id: If252b5f30be0403f79410aa8c00fc14b066d5bbd
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* ENH: add 'edit preset' and 'delete preset' btn for each preset

Jira: 5200 5113

Change-Id: I208ad63eb4b895306fa76db424da2e1df10a582e
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX: add skip label before tool change

Jira: 5074
github: 2776

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Icaafd3b45da1e78c1a82e7d17d7505d9439b9100

* FIX:Network test dark mode adaptation

JIRA:STUDIO-2468
Change-Id: I20cb7f1fd8eca3ce852acb563c1cc87978e216dc

* FIX:n1 external feed prompt pop-up without retry button

JIRA: STUDIO-4696
Change-Id: I31069c72e29d3398469d71cdbc2a344a5430fc2c

* FIX: not show device page when switch printer preset

Change-Id: I00d8524625a4682b6a39876ddb66bf8bd928dbef
Jira: none

* ENH: Check the nozzle diameter when sending calibration

Jira: 4977
Change-Id: Iabbba44583bbd9fbaaa889ca546ee0ccbb2aa77f

* FIX: Generate UUID from objectID and volumeIndex

Jira: XXXX

Change-Id: I65147ef9b695f8af8de260d722e604b0e0bab563
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX: disable filament_typep

Jira: XXXX

Change-Id: Ib605b33e4474525fbe49e70596fc09aa356f478a
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* ci: update build version to 01.08.00.53

Change-Id: I1d574fa2cf2a4d0eb63a38eb8ced7587d06a4272

* ENH: refine display logic of param

1. Refine the display logic of "support_interface_not_for_body".Only
toggle if support_filament is default and support_interface_filament
is specified

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ia2af030c4531ad6b04a198bfe8a1677b3d20a800

* FIX: user preset sync token

Change-Id: Id2aa865b778ee9ac4cfddb68ceef0374507b519b
Jira: none

* FIX: Bitmap cache not take effect

Change-Id: I972098fdbda0b4542c6c759a8f5e1f0f2a30852b
Jira: STUDIO-4991

* NEW: Open HotModel Link With GetParam-From bambustudio

JIRA: NO JIRA

Change-Id: I4ac49bac5ee0c50988c76a38b00b7ba7dc3201f5

* NEW:AmsMaterialsSetting Support for user-preset

JIRA: STUDIO-5135
Change-Id: If848047cd5dbd059d440de30989c505c361305a7

* FIX: upload custom root preset fail

Change-Id: I621c8d542dd604b07cc5df63d97d7a31558d3aba
Jira: none

* FIX: show custom filament in AMS filament list

Change-Id: I79b9f8f2f08db8c52bbed76f1ea133baff383c00
Jira: none

* FIX: dailytips window and gcodeviwer legend window size issue

reset to original logic of dailytips and legend window size

jira: new

Change-Id: Iacb016bb222ba3f87317cfbe1f2b003802d773a5

* ENH: add text translation

jira: new

Change-Id: I780cfb8a0a64d806b5e0a414b6598e3b7bdf52dc

* FIX: Delete and search object outside the plate

JIRA:
1. STUDIO-5132 Deleting object outside the plate will crash
2. STUDIO-5146 The search function cannot search for object outside the plate

Signed-off-by: Kunlong Ma <kunlong.ma@bambulab.com>
Change-Id: I84cb3fe990a9c2a182e7434c262466a70545280e

* FIX: [5149 5142 5141 5140 5136] create printer and filament issue

Jira: 5149 5142 5141 5140 5136
5149 process preset name can not show all
5142 improt configs combobox not update
5141 disable modify filament_vendor
5140 disable input Bambu and Generic vendor
5136 preset list window adjust

Change-Id: I111a23996146cc16cc7f533c8616d50223d34c40
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* ci: update build version to 01.08.00.54

Change-Id: Ifd69c01a82f627a9c6cf4fe0d48a759563ee90e7

* FIX: print model from sdcard with p1p

Change-Id: If85383ba762022ead3dd754ae02a08817b891114
Jira: none

* FIX: dailytips text translation

jira: STUDIO-2556

Change-Id: If44e503615b09ee1692f42ba1f998918ec5bd691

* FIX: clone shortcut key conflict with quit in macos

jira: STUDIO-5166

Change-Id: I548f275bb68d3b0e6bb3cfad6fe93df09d507da3

* FIX:User preset material settings dependent on firmware

JIRA: 5167
Change-Id: I82cf26848594b01155883ad0aa2e9ee77d371fb2

* ENH:update the description of nozzle detection

Change-Id: Id27b25c69dc11fcf66fc82053af705906ae8c370

* FIX: [5159 5165 5171 5172] create printer and filament issue

Jira: 5159 5165 5171 5172
5159 create printer dialog no refresh
5165 create printer 2 step dialog no refersh
5171 change font
5172 edit filament dialog darkUI issue
input special character is prohibited
'/' in preset name translate to '-'
update printer combobox

Change-Id: I5fa27836dab7f604f1a065c65efa099c7a2f0f96
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* ci: update build version to 01.08.00.55

Change-Id: If1865d561cf274719204662314de163497759e89

* FIX:fix GLmodel deconstruction causing section not to be rendered

Jira: STUDIO-5156
Change-Id: Ibb2f459920989ee54f7b827352dc8893424b4de6

* FIX: missing unlock cause device or resource busy

Change-Id: I87563312ea9c6ce4e4e471da7ce7a02b53b64762

* FIX: some translation

Change-Id: I9758cbc758030b5a3945697a50ca4898af9fcb1b

* ci: update build version to 01.08.00.56

Change-Id: Id5ee53dd2ebb0b37b6927dc58b3cca94a1f66a83

* ENH: remove PLA GLOW in A1 mini

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Id99c1bbd4248e28df9150a85eecec831f6f32856

* ci: update build version to 01.08.00.57

Change-Id: Ib4dfa60f097128b76b95bb14ca04978619021b56

* Allow line width of nozzle diameter * 2.5

As it were, 1 mm would be disallowed but 0.99 would be allowed for 0.4
nozzle.  1 mm is the sane maximum and 0.99 is unnecessary tedious to write.

* Russian translation update

Russian translation Bambu Studio_v1.8.0 Beta

* FIX: scale problem in needs_retraction

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Idfbe954b22fa6aa5769c55e46874fa6a80ecbf45
(cherry picked from commit 4e853f50b748e3af11e2d64862b6ee557fda361b)

* ENH: CLI: support load_assemble_list

JIRA: STUDIO-4848
Change-Id: Ife11533740988331ea71eac86c370e625970cb8b

* FIX: align to Y not working

This is a bug introduced in 7fbb650 when solving jira STUDIO-4695.
Now we use a more decent way to solve it.

Change-Id: I92deffcb9fe53e8a24c93fe973446ae37df07375
(cherry picked from commit bd98430dbd15eb6c9bb4b447990e0dcf8a50eef0)

* ENH: Add buried points for cut and meshboolean

JIRA: NONE

Signed-off-by: Kunlong Ma <kunlong.ma@bambulab.com>
Change-Id: I67ce498d0c335dd7a8582f56b880c2c8314f8541

* FIX: 5092 edit filament add scrolled window

Jira: 5092

Change-Id: I53ae996b04e4e2f1b1ddce6a858d505001b11615
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX: can not select user preset when create filament

Jira: XXXX
github: 1936
and fix add preset for printer dialog can not show selected printer

Change-Id: Id4308c6bdca17d52d4aa321db359941aa87e0e45
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* ENH: template filament don't be show in filament list and sort

Jira: 5160 5179

Change-Id: I56a7e1897e1ef3c061dc66d318896413ca25b76b
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX: [5174] export configs dialog issue

filament name too long to can not show all

Jira: 5174

Change-Id: I92018c9d7f86009b78b533592d899b4b5d78c3c8
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* ENH: add filament Bambu TPU 95A HF

1.As title

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I752ec43da6297a6c172679997ce68f2318a7b8fb

* ENH: modify some params with filaments

1.Modify the PEI bed temperature of PLA Basic, Matte, and Tough to 65 in
 A1 mini. Set the bed temperature for the first layer of Bambu PETG-CF
 to 65 and 70 for the other layers

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ia902bbb7f824082d5346709d781cac64296f47a8

* ENH: add more status during printing

JIRA: STUDIO-5195

Change-Id: I85b3107839c6e2fdecbc10d90a876463e284468c
Signed-off-by: Stone Li <stone.li@bambulab.com>

* FIX:cut imgui has overlapping rendering on Apple

Jira: STUDIO-5150
Change-Id: I7969e19dc189cd617026a183067dad628208955c

* FIX:not TakeSnapshot for m_start_dragging_m

Jira: STUDIO-5176

Change-Id: Ia03e3e2c2664dbdcffa19ec8d0fa97dfd95e6d35

* FIX: rendered color changes

Jira: STUDIO-4956
during the drag processin connectors editing state

Change-Id: I3027176ea9f93a9ba9d6a2052f41aaa4adef79f1

* FIX: merge the patch from Prusa

Thanks for PrusaSlicer and YuSanka
Jira:STUDIO-5175
commit 510d59687b3b19c4a0f4e6540620d0694dd1b7ac
Author: YuSanka <yusanka@gmail.com>
Date:   Thu Oct 5 14:13:14 2023 +0200
    Follow-up 1b451cdf: Fixed #11415 - Connectors disappear when slicing => only when using multiple cut planes AND excluding parts

Change-Id: I9ccd5b85f482d723d21fccf5e104c9e0a9cc4849

* FIX:Press ESC directly to exit after entering the profile rendering

rendering is not normal,Code from PrusaSlicer,thanks for PrusaSlicer and enricoturri1966
commit a078627552f54497ed0518dc7bc349d243576d19
Author: enricoturri1966 <enricoturri@seznam.cz>
Date:   Mon Jan 30 14:00:02 2023 +0100

    Follow-up of 1218103fd620b319c56fd08116f81b581c537188 - Fixed gizmo missbehavior when closing a gizmo by resetting the selection clicking on the scene

Jira: STUDIO-5164
Change-Id: I261da9dba2a5ac37f3e263c175fbccd80d8045bd

* FIX: correct the strings and move create printer dialog center

Jira: 5221 5183

Change-Id: Ida4eba63f0e962ffcc8000fcc04cf20849577217
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* ENH: CLI: skip layer height limit validate when slicing for existing models

JIRA: no jira
Change-Id: I1444a28b500ca7d08ed2606eecfa5cfaf261105e

* ENH:update the translation of auto refill

jira:[for translation]

Change-Id: Iaa7b4f3d7cd88c8b4f69a3db721ebd8ca8986eea

* FIX: icon issue for copying

Jira: STUDIO-4168

Icon issue when filling bed with copies

Change-Id: I61a03ecae02b75602c236ed2810e9c9cfe5a19f9
(cherry picked from commit b5079f8a2e79f19f65803f23ef4fd83aff17c84a)

* ENH: update some filament params

1. Modify texture bed temp to 65
2. Modify max-v-speed for ABS
3. Modify some params in Generic PA
4. Modify PLA,PVA params

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I42584a6015b8526f6bbb93024316968198bd76ce

* FIX: 3770 printable checkbox incorrect display in darkUI

Jira: 3770

Change-Id: I97f67d7a0ffc41f6ee625abeecc52ee4e73cf318

* FIX:Display garbled code in AmsMaterialsSetting pop-up

Change-Id: I50531e939afa7715ae376bac47172ccf7b248114

* ENH:Modifying the Line Color of Transparent Materials

JIRA: STUDIO-4311,5088,4983
Change-Id: I9e63413dc9cd7d523f0f7f1a2e32c4537a84467a

* FIX: crash when async delete printer file

Change-Id: I92c5e812d04da263338fb0eea2fd7583cf9ecde0
Jira: STUDIO-5222

* FIX: 3733 backup time not effective

Jira: 3733

Change-Id: I50c2ce156fcbd0a17aa8a6777bce04aa6093c830
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX: enable edit and delete preset btn and fix issue

Jira: XXXX

Change-Id: I724d7236b28fcc4746698f094531948a8fbb5d93
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX:send print job,file name displays error

JIRA:3137
Change-Id: I1c113025d274a13fba1b845a58aada14058fadd4

* FIX: skip hold user preset from sync

Change-Id: I2252246e19bd80903ad82170782ea49535d30d05
Jira: STUDIO-5185

* FIX: 5115 translations

Jira: 5115

Change-Id: I21b03bdd4d28c0bb097226143177e763cf8c777f
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX: add link for ironing parameter

Change-Id: I451f5549db3ac2205aa5703a2e5edc831e946af8

* FIX: scale problem in lift type decide

1. Scale the travel threshhold

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ib594d640fe63b0919bc9318af88577513f7dbf30

* ENH: add small perimeter speed and threshold

The original param is added by Prusa. Thanks orca for adding threshold.

1. Re add small perimeter speed and threhold.

github: #2221

Change-Id: I35b269b26f085d80f0edca28650bb21fc04898d7

* FIX: modify the picture of pa manual cali

Jira: STUDIO-5102
Change-Id: Id87898959ad4461b7bd2505b159271f2aa589c36

* FIX: Filament preset is the same with the first one

Jira: STUDIO-4519

Filament preset is the same wit the first one, it should align with the
last one.

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: I304d0ff0fbc1c8948d410ea552e4d42b6a4e8fd9

* FIX: scoreDailog dark mode issue

Jira: 4570

Change-Id: I8be97b306a1494f73e3bba678ecc864e7ff88ca3

* FIX: CLI: fix the slicing issue while only one object with multicolor using seq-print

JIRA: no-jira
Change-Id: Iea2d23ff8e484bf2fd58aa2f596a8e4e4292fe39

* ENH: open support wall count for normal support

1. open support wall count for normal support
  Enabling this option makes normal support stronger and gives
  better overhang quality, but also more difficult to removal.
  Jira: STUDIO-5192
2. fix a bug where tree support (hybrid style) may get overlapped
  extrusions near the walls.
3. fix a bug where raft layers can't be 1 in tree support
  Jira: STUDIO-5261

Change-Id: Iadc0c67a9b50b5b221c8e83d5aa22ed282018cf8
(cherry picked from commit c0bb0084e386cb70ed6e16edf93190e4b38f5b90)

* FIX: compiling error on linux

jira: none
Change-Id: I1a4563503b5ddf74a1979cc0cee7a15b8aced904
(cherry picked from commit de52c6ca62c9f3a6314ddf5a856c1d8534329886)

* ENH: add translation for small perimeter

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I95013649e4e0c07c0f04b89a91488814c8d228cc

* FIX: clone shortcut key issue on macos

jira: STUDIO-5166

Change-Id: I1967da1d443ed43bd750dad8e11560688d7bd533

* FIX: custom gcode window cannot paste/ navigate

jira: STUDIO-5208、STUDIO-5070

Change-Id: I4ecb9d06cf5db0ae53a4678181aae9298bac106b

* ENH: modify dailytips collapse & expand interaction

jira: STUDIO-5209、STUDIO-5210

Change-Id: Ifb0b998e5004d4b49390ba5a250eaf4743bf3471

* ENH:Add shortcut keys and lists for objects search

JIRA: STUDIO-5157 STUDIO-5158 STUDIO-5240

Signed-off-by: Kunlong Ma <kunlong.ma@bambulab.com>
Change-Id: Ic7cfaaa9b4bb8a85208bafab7fe3bafdb78f0045

* FIX:Re-calculate button with White Box displayed in dark mode

JIRA: STUDIO-5098

Signed-off-by: Kunlong Ma <kunlong.ma@bambulab.com>
Change-Id: I07cc6c72d5dbd03b72573cd27dd5938bb0e6a29a

* NEW: display plate index when printing a task

JIRA: STUDIO-2689

display on the thumbnail of the current task

Change-Id: I5f1f46c56e9d1e9120a66d491551908dfad099d6
Signed-off-by: Stone Li <stone.li@bambulab.com>

* ENH:fixed incorrect path prefix

jira:[for file path prefix]

Change-Id: Ie9e3999f02b78272e528ceceb479e746d46a7e6c

* FIX: thumbnail is not clear in dark mode

JIRA: STUDIO-5087

Change-Id: Ie86493ed71b5554095927f061509a1f551758b61
Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>

* FIX: translation

Jira: XXXX

Change-Id: Id03f0d704aa852632a907ea628d1277400112062
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* ENH: first nozzle change to 0.4 and nozzle change to mm

Jira: XXXX

Change-Id: I14defd36442dbd7008e46782b08415b6244224f1
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* ENH:editing_window_width's value is small on the laptop

Jira: STUDIO-5238 STUDIO-5265
apply_selected_connectors should check_and_update_connectors_state

Change-Id: I8c2c1c920cc4d197d1908815a3e62f4962335451

* FIX: fix new_bed_shape's calculation process

Jira: STUDIO-5122
Change-Id: I5f3e6a301a297123af28692c90bef6759f425b06

* ENH:update some translations

jira:[STUDIO-5262]

Change-Id: Idb1d3586888043ac325f272bc7a2b788adb3e9e5

* FIX: edit text command resets object settings

Jira: STUDIO-4655

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: Iac25c4e40f1d0d32e6d1f40e62226cc22bc96042

* ci: update build version to 01.08.00.58

Change-Id: Iacfec02aa50c617e4c9fe566319b07b30d47dce1

* FIX: remove GetUserAgent

Change-Id: I92886e1f0dcb091109231a10da8c19d51178e13b
Jira: STUDIO-5205

* FIX: nozzle_diameter_map data structure adjustment

Change-Id: Ifb724afc0fcf974e6d331e73ecac723107a102cf

* ENH:add _A and _B for perform_with_groove

Jira: STUDIO-5267
Change-Id: Iee3310dfa1cd8e6680310f0af0eff5c817490813

* ENH:is_equal for min_z and max_z

Jira: STUDIO-5267
Change-Id: I9493883d8be9d44e26ddc9afe62b7e9eb09c5052

* ci: update build version to 01.08.00.59

Change-Id: Ie8ed29ccf5d6c94594eb2ab8b717416fbeace3bd

* FIX:Image display unclear in light mode

JIRA:5161
Change-Id: I134cc64a2af0dfff60c47d0ff09d78d9c0f86b3f

* FIX:fix bugs of non manifold edge

Jira: STUDIO-5267

Change-Id: I8ac9a2cf96da0bc07ee00b309e65611b92fd174d

* ENH:nozzle type detection

jira:[STUDIO-5246]

Change-Id: Ic41a2161a0e41d23f56af93ad8ec34cc83ada0e3

* ENH: upadte P1S start gcode

1.turn on MC board fan by default on P1S

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I5b2f7868e350942fb8b7baf7d429e22a0987184a
(cherry picked from commit e866a575b6b7d9552f7412f84272f4b48dfc3961)

* ENH: improve support style's tooltip

jira: none
Change-Id: I8ee858d7052f04ce7ea6b226a500c7d1bf8a482f
(cherry picked from commit 665f31c4fcde22bd894cbb4a5fb160635947f2a4)

* ENH: set layer range error to warning

1. If layer range exceeds maximum/minimum layer range in printer
settings,pop up a window to warn

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I0304ee790e557ecf967f355c171993d1f51b5057

* ENH: CLI: remove the warning of layer height

JIRA: no jira
Change-Id: Idaceee4f52611479fc3f4238d016d891b4dc8cd1

* FIX: the word search is not translated

Jira: STUDIO-5224

The world search in the device panel is not translated.

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: Ia3d651c2159a3aad94e10cd0a6da98848f53ee2a
(cherry picked from commit 4a46a0a4750d82d49c9523f4b668a1a00c41ed83)

* FIX: Bitmap will flash when sending printing task

Jira: STUDIO-5278

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: Ib0c8710b8d5d6b98fad043c950f054aa35bea965

* ENH:display the euler angle of rotation plane

Jira: STUDIO-5268
Change-Id: I6b7b431931d60f1a9a832908400417781798c472

* ci: update build version to 01.08.00.60

Change-Id: I1c15b5c6437554c43327cd6b537f7a5860dba5a0

* ENH:cancel EnterReturnsTrue for imgui in cut

Jira: STUDIO-5269
Change-Id: I2832e1dccaf9755448debe7b2bd56426f90dfe0d

* ci: update build version to 01.08.00.61

Change-Id: Ib03e664a20990322c788686550c491d0139d8237

* FIX: some translation problems

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: If9f2af53b4f0bfa9469e84bcba68cc182df4a473

* add: Ukrainian lang support for 1.8

* fix linux

* fix some string and colors

* fix linux build error 2

* fix .gitignore

* FIX: calibration selected preset is null in some case

jira: STUDIO-5258

Change-Id: Iee63593c5f833c5a43e3b1d1c9ddb82f8c69569a

* FIX: create filament issue

Jira: 5296 5297 5295 5302 5311 5276

5296 create filament: list has same printer
5297 create filament: filament combobox has blank options
5298 edit filament: delete last preset prompt users
5302 create filament: filament combox has cili preset
5311 create filament: printer name too long to can not show all
5276 edit filament: PLA Aero filament type filter issue
add prusa vendor
Revised copy

Change-Id: I5dcc615ce0951b1a9953fa12283f6090f5069045

* FIX: some translation

Change-Id: Icb8614a0af18f96d15f3b97c17e0f6f708296847

* FIX:cancel is_equal for slicing function

Jira: STUDIO-5267
Change-Id: I66d759aa2c968f8a28a6a5d8378929754f2db689

* FIX:UI stuck due to pop-up window with wrong chamber temperature

JIRA: 5304
Change-Id: I1a49a7219b7a6f5700243704c348724e7930ce1a

* FIX: allow input '+' and hide edit preset btn

Change-Id: I97aec7c3ac4cc8b9d6c535f0126aaa1926553d86

* ENH: handle printer direct close and not retry

Change-Id: I5dd55f8085cf6383a8420ab41e614ea6ae210c78
Jira: STUDIO-5305

* ci: update build version to 01.08.00.62

Change-Id: I09716bf79354b503197c751272fd3171e0abc8fd

* add: new translation to ukr for AirFlow and Prusa

* add: Texture Plate name fix

* add new feature to localization .de, fix .it (#2876)

* FIX:add slice_facet_for_cut_mesh api for cut tool

and modify section_vertices_map 's traverse
Jira: STUDIO-5267
Change-Id: Ifc4b183a4e4c4fdb4f47742f14f70a1ed93fa056

Change-Id: I52bfaef8926ef967b78a6cb712a1731a1b528a24

* FIX: Make the front smaller for Czech in device panel

Jira: STUDIO-5151

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: I315174b55f923da069854fb4fed8cf3937b82074

* FIX: there is no object can be jumped to in notification

jira: new

Change-Id: Ib81bf49236952ede24a2de126051572d63916e01

* FIX: add height range, modifier in Preview pane will crash

jira: STUDIO-5340

1. fix crash at add height range, modifiers in Preview from objectList
2. fix an assert hit when slicing
3. fix an assert hit when enter AssembleView
4. forbidden popup menu by right-click objectList in Preview

Change-Id: I444bc76b1a4307999b387e4f60386b2d272bd308

* FIX: Black spot in the sending printing task page

Jira: STUDIO-5307

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: I3bd97c063ec5f0faf7d12047da39f60ce55cae4b

* FIX: reset_cut_by_contours should update_buffer_data

Jira: STUDIO-5376
Change-Id: I5aacb1f7b65822031d7138abd61a45b09c743531

* ENH:editing_window_width's value is small on the laptop

Jira: STUDIO-5238 STUDIO-5265
Change-Id: Ia958772bcb081817da621115f99328bb62770cd5

* ENH: bumped version to 1.8.1

Change-Id: I9d25403daa5b7b8ca415c0b364670da9e0f932b0

* FIX: create filament dialog: create btn can not show all

Jira: 5310 5331

Change-Id: I185272c90d9ff1c3d6b47abbefbf488d0d965cca

* FIX:update custom_texture when new_shape=false

Jira: STUDIO-5287
Change-Id: I3add95f9f9345c14a48cc7467513d1b3ce95f4c9

* ENH:editing_window_width's value is small on the laptop

Jira: STUDIO-5238
Change-Id: I9044129f4e0c8ca7469db05b3e547fca4754342a

* FIX:add slash_to_back_slash for saving file path

Jira: STUDIO-5287
Change-Id: I9f3c176cd0831c793958f08601c63efac98176a4

* FIX: a button color didn't response to dark mode change

jira: STUDIO-5315

Change-Id: I95489f01ccd1f77b9e95b0d0f69e5398d2e88487

* FIX: height range layers displayed in wrong position

jira: STUDIO-5341

Change-Id: I83918b4624f367efa54321f1898e1176cdb04ea9

* FIX: auto arranging issues with locked plates

1. global auto arranging may put items overlap with wipe tower if some plates are locked
jira: STUDIO-5329
2. items outside bed may overlap with plate boundary if it's rotated
jira: STUDIO-5329
3. plate-wise auto arranging uses wrong min_obj_distance if the
plate is by-layer printing but global setting is by-object printing
jira: STUDIO-5330

Change-Id: I5dba2f1317e183c9aeec1cb2bd227fbddf4316e6
(cherry picked from commit db1eac41efff5f1e8d5ac0af74c6fc7ab59fc253)

* FIX:  a mistake in upward machine

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ibdb26c3d904634f322aef0dc0c7b8867d9fb5854

* FIX:a blank pop-up appears

JIRA:XXXX
Change-Id: Ice92b55204e4897fec024a6d99412eb810bddd4a

* FIX:fixed failure in updating nozzle type

jira:[STUDIO-5248]

Change-Id: Iad37b5d5b76d37cb1723ef21d7c39b1e3fcaf8d7

* FIX:fixed issue with AI monitoring settings

jira:[STUDIO-5082]

Change-Id: I967fe3c1e9da61a55bcbfaa2a8e067dd5af18f72

* FIX:fixed issue with lan mode

jira:[STUDIO-5189]

Change-Id: I1d0a05f19dcea154cf3ef2b61ed0546d3581905e

* FIX:update text for loading or unloading filaments

jira:[STUDIO-5231]

Change-Id: Ic7729c3ec012485b3d87e3d01f11e87502c67895

* FIX: Revert "ENH: do not leave a gap for top...

Revert "ENH: do not leave a gap for top interface if the top z distance is 0"

This reverts commit 79ea32c7cbbdb7e689637980af7c36caf42284c9.

Revert reason: the supports are impossible to remove in some cases.
jira: STUDIO-5385

Change-Id: I376a6f4dfd78da6dfea68b9ac3d552cddd0b4272
(cherry picked from commit 34e38b705fde7f5d7f9a3a89c96a3627ce0c998e)

* ENH: improve normal support's quality

1. Add a base_interface_layer when using Supp.W
2. Fix a bug where base_angle and interface_angle are wong

jira: STUDIO-5386
Change-Id: I52ab32c63b3cd1e6e2ba6463b01ae26699cf13d3
(cherry picked from commit 92ddd4a10b793572a1fa009da5b9e44fcdf81de2)

* NEW:tracking stl model files

jira:[STUDIO-5372]

Change-Id: Idb1275b07441f0cd06c24588d5f7c20f81f1556c

* FIX: edit filament dialog: preset name too long to del btn nan't show

Jira: 5336 5174
and verify string normalization

Change-Id: I380c3bed2bf43d01094b68979a8b67f4187c0b93

* FIX: some translation

Jira: 5232 5300 5334

Change-Id: Ie474ca823011e81aab82a9809af3d6e42980496b

* FIX: some translation

Change-Id: Iaabe6087bed3b7d47d911cf4fb51c770804e72fb

* ENH: change default tree_support_wall_count to 0

Now normal support also uses this option, so we can't default it to 1, otherwise normal supports will be too hard to remove.

jira: none
Change-Id: Ic5700af5c17e3a7b265c8915f28b0db35c6e06e6
(cherry picked from commit 6b84a9826da108b76569e686bd9def0b23ae29fd)

* FIX:The name of the material in the error prompt is empty

JIRA:STUDIO-4907
Change-Id: I3cf44f099256a51f21a44a89c89c000f734d1f36

* ci: update build version to 01.08.01.51

Change-Id: Ib20f5a12b65472102befec0a2adf82744fc29c46

* FIX: imgui textinput cannot paste on macos

jira: STUDIO-5070、STUDIO-5365

Change-Id: Iea8f41e12744ecda0fbb95c1a8f2e014a7cdc384

* FIX: not cache printer file list on error

Change-Id: I99843aedbf14d3d1d553ccac9b0bd26403274a82
Jira: none

* FIX: thread of close BBLUserPresetExceedLimit notify

Change-Id: I9698134ba1cc91fc83eac441f900d68c4c4b556a

* ENH: Resolve non manifold edges by fixing model interfaces

Jira: STUDIO-5124
Change-Id: I7ea86be44acb80b6c4762a76208b4a031acd0b27

* FIX:nozzle type sync

jira:[STUDIO-5248]

Change-Id: I63d48628832473d8d371ed643dc8528b00382531

* FIX: array bound happen in TriangleSelector::deserialize

Jira: STUDIO-5170
Change-Id: I92b72a887845b462fad208f13607293b44d3d333

* FIX:cropping rendering without considering assembly views

Jira: STUDIO-5260
Change-Id: Ia56cf80b305ae05f25f06ec277f85b3c5430a6df

* FIX: PA for custom filament not available in BL Studio

github: 2971
Change-Id: I6ccd36a183e7367d69557300f7242f5403f4bb33

* FIX: Bitmap is way too small on Mac

Jira: STUDIO-5393

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: I6b550669fa8cd5fc9bfa6ed96d64d19a949f01b2

* FIX: move shutdown wait to OnExit

Change-Id: I70d9a2bb686525ae5273aa9d63e25691da4ab65c
Jira: STUDIO-2884

* FIX: calibration manage result dialog issue on macos

jira: STUDIO-4949 STUDIO-5378

Change-Id: I00abefd45a0d274a4b68bb1ab18debe8f91d169e

* FIX: adjust bed shape dialog button UI style

fix that button text is hard to see in dark mode
jira: STUDIO-5247

Change-Id: I2cf5b3cdd2eff9b821bdf5525bec4f329fc58dd1

* FIX: 5331 rescale btn

Jira: STUDIO-5331

Change-Id: If153424b8480e64b166018e3cd98c17db557d0a8
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX: support do not generate

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ide9709d95203185538e280517f7aa6136beeda44

* FIX: remove not match printer config ota cache

Change-Id: Ib73fc2ea31fa2186061cfcb5a170bc59b9db84ca
Jira: none

* FIX:cancel the variable of "checkbox_size"  as a fixed value

Jira: STUDIO-5150
Change-Id: I30d876d141b8b35ab4a3fee4889993d87b7c1741

* ENH:add reset_cut_by_contours in on_load function

Jira:STUDIO-5269
m_connector_size_tolerance default value is 0.1f

Change-Id: I6c67fff3cb0c1190e9141ed6f68fbfa848679f35

* ENH:cancel EnterReturnsTrue for imgui in cut

Jira: STUDIO-5269
Change-Id: Ifc4b183a4e4c4fdb4f47742f14f70a1ed93fa056
Signed-off-by: zhou.xu <zhou.xu@bambulab.com>

* FIX: dailytips should not change content frequently when slicing all

jira: STUDIO-5234

Change-Id: Icb7e9c28404d9db8ebed58d937e13f89c5403b5c

* FIX: objectList clone shortcut key issue

jira: new

Change-Id: Ia75bf58a7d53f962e1af6c2fd97497270b7eea84

* ENH:handling cases without msgs

jira:[STUDIO-5401 STUDIO-5399]

Change-Id: Iae651d5a19a45b0138a6aa621326a8b4a9649824

* ENH: optimize param description

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Id0ca9224227a716b21fc0b8430722264dc319344

* ENH: add translation

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I3b1f04fee3cd6322793794ad8b8707859f6c7d26

* FIX: close edit preset paramsDialog, mac unresponsive

Jira: 5298

Change-Id: I021e00567354cfb1f2f5f1f2bf6ba1fc35b164c5

* ENH:disable AI monitoring on the p1p series

Change-Id: I514bb1fb1ced6c03dd619230a9adac3be63f2de2

* ci: update build version to 01.08.01.52

Change-Id: I9f5e30d3fc4b7ef9321c522d3c18fce98f03742f

* FIX: close edit preset paramsDialog, mac unresponsive

Change-Id: Ic816754a20b7f6a5cdb46475750eb301fec3ad3a

* FIX: organic support not work with raft only

There is no raft generated when only raft enabled but no support needed.
jira: none

Change-Id: Ic0c9269e2f98038d85c9bc54e4a85f892dc5d764

* FIX: CLI: add object config when assemble

JIRA: no jira
Change-Id: I945f820fb58f2f643170b4b0b66742f6bbbdfd29

* FIX: delete preset prompt

Jira: XXXX

Change-Id: I6511c806c56393d4f6bd72d1c506da59675d49ff

* FIX:Reorganize the assignment of variables of "m_editing_window_width"

Jira: STUDIO-5238
Change-Id: If369916f3f5c21510f5f297bfd05c1230bdda7a4

* ENH: CLI: re-compute flush_volumes_matrix when it is missed

Change-Id: Ie8f53c6bef003b1434de02ea14de5787b376484f

* FIX: some translation for delete filament

Change-Id: Ib46a8eba33f2e21016476aaab4a57a740e86b1b8

* FIX: scrolled window / del preset / edit filament issue

Jira: 5092
GitHub: 1936
edit filament: just one preset, the scroll bar obscures the preset name
edit filament: delete selected preset, click no, but preset be deleted
from UI
edit filament: serial sometimes displays incorrectly

Change-Id: Ibc91609e252179de0c05ca065099756da6631165

* ci: update build version to 01.08.01.53

Change-Id: I5563a2c0812ab9a0d7727df27e17e681066ffa08

---------

Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Signed-off-by: Kunlong Ma <kunlong.ma@bambulab.com>
Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Signed-off-by: Stone Li <stone.li@bambulab.com>
Signed-off-by: zhou.xu <zhou.xu@bambulab.com>
Co-authored-by: zorro.zhang <zorro.zhang@bambulab.com>
Co-authored-by: liz.li <liz.li@bambulab.com>
Co-authored-by: maosheng.wei <maosheng.wei@bambulab.com>
Co-authored-by: chunmao.guo <chunmao.guo@bambulab.com>
Co-authored-by: tao wang <tao.wang@bambulab.com>
Co-authored-by: Arthur <arthur.tang@bambulab.com>
Co-authored-by: lane.wei <lane.wei@bambulab.com>
Co-authored-by: gerrit <gerrit@bambulab.com>
Co-authored-by: xun.zhang <xun.zhang@bambulab.com>
Co-authored-by: zhou.xu <zhou.xu@bambulab.com>
Co-authored-by: hu.wang <hu.wang@bambulab.com>
Co-authored-by: Kunlong Ma <kunlong.ma@bambulab.com>
Co-authored-by: wenjie.guo <wenjie.guo@bambulab.com>
Co-authored-by: qing.zhang <qing.zhang@bambulab.com>
Co-authored-by: zhimin.zeng <zhimin.zeng@bambulab.com>
Co-authored-by: the Raz <rasmus@abc.se>
Co-authored-by: Andy <andylg@yandex.ru>
Co-authored-by: Stone Li <stone.li@bambulab.com>
Co-authored-by: enricoturri1966 <enricoturri@seznam.cz>
Co-authored-by: Dmytro Chystiakov <dlchistyakov@gmail.com>
Co-authored-by: Heiko Liebscher <hliebscher@idn.de>
2023-12-01 10:42:45 +00:00
SoftFever
2f3ec2ab7d Build release branches (#2941)
update cicd to build release branches
2023-11-30 23:58:52 +08:00
SoftFever
82fe9beb57 Update status badge 2023-11-30 13:36:52 +00:00
Noisyfox
e8a053e248 Use windows API to copy files (#2923) 2023-11-29 22:43:37 +08:00
FlashforgeOfficial
930eac0abb Flashforge: Machine G-code Fix (#2922)
Machine G-code Fix
2023-11-29 22:36:09 +08:00
Trist0ne
10a0f58a61 T500 profile fixes and optimizations (#2848)
Corrected corrupted buildplate texture, corrected too high accelerations that made printing 0.4mm impossible, optimized T500 print and filament profiles with testing
2023-11-29 22:35:30 +08:00
Andy
48c9143769 Russian translation update OrcaSlicer V1.8.0 Release. (#2873)
* Russian translation update

Russian translation update

* Russian translation update

Russian translation update
2023-11-29 22:33:52 +08:00
Paul
eab8139d3c Adding new nozzle profiles for the Creality Ender-5 Pro (2019) (#2817)
* Add 0.6mm Nozzle Configurations for CE5Pro

* Add 0.5mm Nozzle Configurations for CE5Pro

* Add Nozzle Size Printer Variants 0.2-1.0mm

* Add 0.3mm Printer Variant

* Add 0.5mm Printer Variant

* Fix: 0.6mm Printer Variant

* Add Remaining Printer Variants

* Add CE5Pro Nozzles to list of Compatible Filament

* Add Generic FDM Process for Creality 0.3 Nozzle

* Update Generic FDM Process for Creality 0.6 Nozzle

* Add FDM Process for Remaining Creality Nozzle

* Add Processes For CE5Pro 0.8mm Nozzle

* Add Processes For CE5Pro 1.0mm Nozzle

* Add Processes For CE5Pro 0.2mm Nozzle

* Fix Initial Layer Settings

* Add Processes For CE5Pro 0.25mm Nozzle

* Add Processes For CE5Pro 0.3mm Nozzle

* Remove Profiles Outside their Min/Max Layer Height

* Update CE5Pro 0.4 Nozzle Naming Scheme to PR1100

* Update CE5Pro 0.2 Nozzle Naming Scheme to PR1100

* Update CE5Pro 0.25 Nozzle Naming Scheme to PR1100

* Update CE5Pro 0.3 Nozzle Naming Scheme to PR1100

* Update CE5Pro 0.5 Nozzle Naming Scheme to PR1100

* Update CE5Pro 0.6 Nozzle Naming Scheme to PR1100

* Update CE5Pro 0.8 Nozzle Naming Scheme to PR1100

* Update CE5Pro 1.0 Nozzle Naming Scheme to PR1100

* Incl. Remaining Base Config That Diff Is Based On

* Remove whitespace
2023-11-29 22:32:58 +08:00
Noisyfox
0fa884d9ca Various infill improvements (#2716)
* Fix issue that sparse infill threshold no longer working

* Turn all internal sparse infill into solid infill if infill density is 100%

* Allow combining solid infill when sparse infill density is 100%
2023-11-29 21:28:23 +08:00
discip
d48c279762 Update OrcaSlicer_fr.po (#2874)
Fixes #2866
2023-11-29 21:25:47 +08:00
Noisyfox
284c3e71eb Some changes to gcode window toggles (#2704)
* Show gcode window automatically (#2572)

* Move the show gcode toggle to view menu, and remember if gcode window is shown last time

* fix an issue when merging main branch

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-11-29 21:19:56 +08:00
Ocraftyone
b86b8ea810 Update BuildLinux.sh (#2919)
getting the value for FOUND_GTK* variables seems to cause an error which prevents using the -u option to install the needed packages. This is fixed by moving the "exit on first error" flag to after setting these vars.
2023-11-29 10:25:00 +08:00
Ioannis Giannakas
4985cc7e67 Fix purging not working for BBL printers (#2912) 2023-11-28 20:44:29 +08:00
andrewboktor
7c3d97c287 Fuzzy skin fixes + on/off for first layer (#2903)
* Fixing fuzzy skin so it doesn't exit the desired geometry at line ends
Adding option to enable/disable fuzzy skin on first layer

* Whitespace + removing extra file
2023-11-28 15:40:26 +08:00
Ioannis Giannakas
d71eaf958e Fix crash when closing application (#2904)
* Update GUI_ObjectList.cpp

* Update GUI_ObjectList.cpp
2023-11-27 21:39:16 +08:00
Ioannis Giannakas
ce9a8d7b20 Internal Bridge Flow rate parameter introduction (#2859)
* Internal Bridge Flow rate parameter introduction

* updated incorrect capitalisation

* Updated parameter ordering
2023-11-26 21:43:47 +08:00
Jim Broadus
cd35995402 Fix cmake error (#2871)
Use the correct target name when setting properties on cereal.
2023-11-26 13:17:29 +08:00
Noisyfox
a6163a1550 Another fix to the preview shell (#2821) 2023-11-22 23:21:34 +08:00
Ikko Eltociear Ashimine
a085ac6e32 Update README.md (#2815)
oppened -> opened
2023-11-21 17:17:53 +08:00
Noisyfox
03a9014d3a Show wireframe in MMU painter gizmo (#2808)
* Remove unused shader files

* Port wireframe shader from BBS

* Enable wireframe in MMU painter

Co-Authored-By: zhou.xu <zhou.xu@bambulab.com>

---------

Co-authored-by: zhou.xu <zhou.xu@bambulab.com>
2023-11-21 17:17:22 +08:00
Noisyfox
70d86af253 Fix color blending of preview shells (#2799) 2023-11-19 22:20:42 +08:00
Lee Jong Mun
50a9345ddd kor_translation update (#2794) 2023-11-19 19:10:30 +08:00
SoftFever
5c64a0587a Fix toolbar rendering on Windows (#2784)
Currently on windows, when you resize the window relatively small, the
end of the toolbar will be clipped like so:

![d95d24afdc47eef04df4a2c755d13494](https://github.com/SoftFever/OrcaSlicer/assets/1537155/5f060966-3613-4bd7-8036-e9b27c12ffd3)

This is what it look like on Linux/macOS:

![image](https://github.com/SoftFever/OrcaSlicer/assets/1537155/167ab075-1c48-4531-a2ef-3f225874cfbd)

This PR fixes this issue so it behaves like on Linux/macOS:

![60cb540f198c5d680fceaa387302c475](https://github.com/SoftFever/OrcaSlicer/assets/1537155/7e1b404b-bdf7-4c3b-bee7-5d2f0a11f91e)
2023-11-19 19:10:01 +08:00
SoftFever
93f62a47f5 Merge pull request #2780 from Noisyfox:bugfix/amd-png
Fix PNG build plate texture not rendering on AMD GPUs
2023-11-19 19:08:04 +08:00
Ioannis Giannakas
cd475f0f94 Add option to "Reverse only internal perimeters" under the reverse on odd feature to reduce part warping (#2722) 2023-11-19 19:02:47 +08:00
SoftFever
e9f519d092 Port PrusaSlicer's Measure & Cut gizmos (#2603)
Build on top of #2520 and replaces it.

This PR includes:
- Rewrite the opengl rendering code, which now renders (almost)
everything using shaders instead of legacy opengl function calls
- Rewriting the gizmo mouse handling code that moves the mouse handling
coding into each gizmo themselves
- Rewriting the mouse picking code, now it uses ray casting to figure
out what's under the mouse cursor
- Porting of the PrusaSlicer's measure tool
- Replacing existing cuting tool with the better one PrusaSlicer has
- Updating of other gizmos using PrusaSlicer's latest code base

There was a plan to also port PrusaSlicer's emboss & svg tools, but this
PR is already very big and the changes needed for emboss will be even
bigger and might take forever to finish. So I decided to separate them
so we can get something out and start rolling out testing builds for
people to play with as soon as possible.

This was developed mainly using Windows, be prepared it could have
graphic issue under Linux & macOS.

Huge credit to Prusa for their amazing job!


![image](https://github.com/SoftFever/OrcaSlicer/assets/1537155/b7ec85d7-1013-4d8e-9914-c2b4d8cb5360)

![image](https://github.com/SoftFever/OrcaSlicer/assets/1537155/1e97d744-99c0-402d-9b23-456d95e07bba)

![image](https://github.com/SoftFever/OrcaSlicer/assets/1537155/f0a5dbea-677a-43f5-918b-c6817ff659c8)


Fixes #717
Fixes #1150
Fixes #1590
2023-11-19 16:50:32 +08:00
SoftFever
0e6197f0a7 Set openssl osx target properly 2023-11-19 16:45:36 +08:00
SoftFever
df48b05f73 Merge branch 'main' into dev/gizmo 2023-11-19 15:47:47 +08:00
SoftFever
ebbe5a4d80 fix secrets were not passed from build_check_cache to build_deps 2023-11-19 12:12:01 +08:00
SoftFever
d7453aa20f Fix CICD: failed to sign Mac build 1. upload PDB 2023-11-19 11:23:36 +08:00
niklasb
8ca0d79b05 Adds overview for custom gcodes like pause, change filament, custom #2191 (#2728)
* Adds overview for custom gcodes like pause, change filament, custom

* Fix: incorrect time display of inserted pauses
2023-11-19 00:04:30 +08:00
SoftFever
07d5a06794 fix windows CICD error 2023-11-18 23:51:55 +08:00
Noisyfox
a590d4cead Fix toolbar rendering on Windows 2023-11-18 17:24:08 +08:00
SoftFever
cc55957070 Zip Windows portable build and PDB before upload artifacts 2023-11-18 16:23:40 +08:00
Ocraftyone
cbb7c3381c Rework Github Build Actions (#2566)
update workflows from dev branch

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-11-18 15:30:06 +08:00
Noisyfox
5045642de0 Merge branch 'main' into dev/gizmo 2023-11-18 14:51:32 +08:00
Noisyfox
67fe5ee7f5 Bring back anti-aliasing to toolbar icons (#2739) 2023-11-18 14:51:22 +08:00
Jason Pell
b3db0a560a the layer height should be 0.24 not 0.2 (#2779) 2023-11-18 13:43:57 +08:00
enricoturri1966
8c0cf34a6c Fixed generation of texture mipmap using glGenerateMipMap (added also for png)
Fix mipmap of compressed textures on AMD Radeon graphics cards by forcing the use of squared power of two textures

(cherry picked from commit prusa3d/PrusaSlicer@971f2a08e2)
(cherry picked from commit prusa3d/PrusaSlicer@eee4453993)
2023-11-18 10:21:41 +08:00
Ocraftyone
c0386d786c Fix macOS deps build issues (#2541)
update deps/CMakeLists.txt and MPFR.cmake
2023-11-17 21:59:18 +08:00
SoftFever
f5ec607b6a update WIKI 2023-11-17 20:00:12 +08:00
SoftFever
cb038d0469 fix Prusa MK3S and Mini profile issues
Fixed #2768
2023-11-17 20:00:05 +08:00
mariuske
698440d5a4 Removed print_flow_ratio from Flashforge process (#2769)
For some reason this value stayed in this profile file after a recent merge and it's now been removed again.
2023-11-17 19:40:03 +08:00
Noisyfox
b2642039c7 Fix creality k1/max default materials (#2609) (#2767) 2023-11-17 14:28:48 +08:00
Lukas Matena
67c1f40eae Fixed a crash when deleting the last object with autocenter enabled (prusa3d/PrusaSlicer#11186).
(cherry picked from commit prusa3d/PrusaSlicer@926af1ab8d)
2023-11-17 09:32:45 +08:00
Noisyfox
f6e4c48fe7 Merge branch 'main' into dev/gizmo 2023-11-17 09:18:31 +08:00
SVNMLR
4dcfd97181 [Multi Material] Fix first layers of prime tower when using "no sparse layers" (#2764)
* MM - Add check for first layer

* Change: If no sparse layer is on -> Respect the toolchange in the first-layer checkup, to use a brim and slow down printspeed if using a primetower

* Fix comment
2023-11-17 08:01:52 +08:00
SoftFever
9505f93717 fix thumbnails regression 2023-11-17 07:54:59 +08:00
SoftFever
bc05653a72 orca bot: processing issues in ascending order 2023-11-16 23:25:28 +08:00
SoftFever
9af22da7d1 bump version to 1.8 2023-11-16 23:17:59 +08:00
SoftFever
09c77c45da update profile version to 1.08.00.00 2023-11-16 23:02:10 +08:00
mariuske
6c957d40d0 Restructured Flashforge process profiles (#2718)
* Restructured Flashforge process profiles

* Fixed typo in machine profiles

* Changed skirt loops to 2

Based on best practise (other profiles), I have changed the number of skirt loops from 1 to 2
2023-11-16 22:07:02 +08:00
Andy
75c019a1a9 Russian translation update (#2760)
Russian translation update
2023-11-16 22:02:13 +08:00
SoftFever
7566df566d fix snapmaker J1 not displaying bug
fixed #2750
2023-11-16 19:42:40 +08:00
Noisyfox
2fc5a7d01e Fix layer height modifier layout (#2708) (#2756) 2023-11-16 19:15:37 +08:00
SoftFever
565732a027 remove print_flow_ratio from profiles and hide it from process setting. It should be only displayed for parts 2023-11-16 19:07:40 +08:00
FlyingbearOfficial
e8ac1575e7 Flyingbear official patch 9 (#2746)
* Add a new brand named Flyingbear

Add a new brand named Flyingbear
Model name: Flyingbear Reborn3

* Update fdm_machine_common.json

fix
z_hop 0,2(2)

* make bed model smaller and set default internal_solid_infill_pattern to monotonic

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-11-16 18:46:32 +08:00
Fabio Forcina
24ae038e0e Italian translation (#2706)
* Update OrcaSlicer_it.po

* Italian translation

Italian translation

* fix errors

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-11-16 18:18:50 +08:00
Exerqtor
f61c504696 Fix for QOI thumbnails not working (#2755)
Fix for QOI not working

Should remidy the issues in https://github.com/SoftFever/OrcaSlicer/issues/2741
2023-11-16 18:13:08 +08:00
SoftFever
bbdd580bb1 fix wipe tower bug: filament end inserted twice 2023-11-16 01:00:59 +08:00
SoftFever
930e1b3bdf limit max wipe tower speed to 90 mm/s 2023-11-16 00:59:45 +08:00
SoftFever
cf4aceec79 remove filament_max_volumetric_speed cap 2023-11-15 19:03:16 +08:00
Noisyfox
016d3a74eb Improve Windows crash log (#2736)
* Show RVA of each call stack so we can locate the symbol with pdb file

* CI upload pdb file
2023-11-15 19:00:55 +08:00
Olcay ÖREN
3f3bd08a70 Update OrcaSlicer_tr.po (#2742)
* Update OrcaSlicer_tr.po

Missing fields in Turkish are filled in and word errors are improved.

* Update OrcaSlicer_tr.po

Editing the missing and incorrect parts in the Turkish language file.

* Update OrcaSlicer_tr.po

Editing the missing and incorrect parts in the Turkish language file.

* Update OrcaSlicer_tr.po

The bug on line 6082 has been fixed.

* Update OrcaSlicer_tr.po

character fixes
2023-11-15 18:56:21 +08:00
Hotsolidinfill
dcddf9974a Update translation Korean (#2731)
update translation korean
2023-11-14 17:16:00 +08:00
Noisyfox
b1a164b67f Fix scaling of min_width_top_surface when using abs value (#2725) 2023-11-14 17:15:29 +08:00
SoftFever
4754b38afa diable activate_air_filtration by default for ABS/ASA 2023-11-13 22:31:06 +08:00
SoftFever
5213fbfa86 Support initial_tool variable for filename format 2023-11-13 22:25:32 +08:00
Hukete
c03d58318a Update fdm_process_qidi_x3_common.json 11/13 (#2717)
* 10-25

Add TPU-95A HF

* 1030

Adding Introduction of Chamber Temperature Control Macros(M191) to Notes

* 1102

Add ABS-GF10 profile,
Remove a extra "s" from the "0.36mm Standard @Qidi XPlus3 0.6 nozzle.json" file

* 1106

Add the PA value to some genetic filament profiles

* Update fdm_filament_pla.json

Change the fan rate of begin layers

* Update fdm_process_qidi_x3_common.json

Reduction of top surface particles

* Update fdm_process_qidi_x3_common.json

Add  M140 S90 to M191 macro, Preventing slow chamber warming in cold winter environments
2023-11-13 22:22:21 +08:00
SoftFever
60424baac0 Fix draft_shield error for MK3S profile
Fixed #2660
2023-11-12 23:31:18 +08:00
SoftFever
9731ea3277 update chamber temperature WIKI 2023-11-12 22:10:10 +08:00
Noisyfox
d6c2192fe2 Merge branch 'main' into dev/gizmo 2023-11-12 11:03:05 +08:00
SoftFever
b1c325a419 bump version to 1.8.0-rc2 2023-11-12 10:28:32 +08:00
SoftFever
50f776fe6b fixed an issue when purge_in_prime_tower is disabled for non bbl printers 2023-11-12 09:52:07 +08:00
SoftFever
15358b211d Fix a regression issue that retraction is not correct when wipe is off
Fix #2697
2023-11-12 09:52:07 +08:00
mariuske
da4e7817a8 Enable skirt for Flashforge process profiles (#2695)
Activate skirt for Flashforge profiles
2023-11-12 09:51:32 +08:00
Carlos Caruncho
153cba58e5 Update Spanish translation (#2696)
* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Revert "Merge remote-tracking branch 'upstream/main' into spanish_translation"

This reverts commit 694a900845, reversing
changes made to 4f53ce4f88.

* Revert "Update OrcaSlicer_es.po"

This reverts commit 4f53ce4f88.

* Revert "Revert "Update OrcaSlicer_es.po""

This reverts commit 53bd15617c.

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Revert "Update OrcaSlicer_es.po"

This reverts commit b21aad079f.

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_en.po

* Update OrcaSlicer_es.po

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-11-12 09:49:05 +08:00
SoftFever
4f48afd6fe update WIKI for exhuast/auxiliar fan and active chamber temperature features 2023-11-11 23:30:54 +08:00
Noisyfox
5669b4fef0 Merge branch 'main' into dev/gizmo 2023-11-11 16:28:17 +08:00
Noisyfox
6510fd4054 Hide raycast debug window 2023-11-11 16:27:44 +08:00
Noisyfox
4e5e5a7ae8 Fix min brush size when using scroll wheel (#2534) (#2693) 2023-11-11 15:15:57 +08:00
Noisyfox
714667ee1c Add search printer model in Setup wizard (#2692)
Add search printer model in Setup wizard (#2563)
Adopted from #2464

Co-authored-by: ZdDroid <601865048@qq.com>
2023-11-11 15:13:24 +08:00
YuSanka
799b0965f5 Fix for prusa3d/PrusaSlicer#11487 - Cut Connectors Broken when assigning part to other side
+ Added check objects after cut
+ CutUtils: Ensuring that volumes start with solid parts after solid parts merging for proper slicing

(cherry picked from commit prusa3d/PrusaSlicer@a9410edc2c)
2023-11-11 12:51:29 +08:00
renemosner
de35ff9a6c Update CZ (#2688) 2023-11-11 08:58:32 +08:00
Noisyfox
66d4b4d59a Merge branch 'main' into dev/gizmo 2023-11-10 23:32:14 +08:00
Noisyfox
ee8ea0df04 Rewrite bed raycaster registering that fixes crash when creating new project 2023-11-10 23:02:11 +08:00
SoftFever
1e040f2fc3 bump version to 1.8.0-rc 2023-11-10 21:13:27 +08:00
Heiko Liebscher
09b84a0850 fix de language new feature (#2686)
fix de
2023-11-10 20:52:21 +08:00
Hukete
4645943360 Update fdm_process_qidi_x3_common.json (#2683)
* 10-25

Add TPU-95A HF

* 1030

Adding Introduction of Chamber Temperature Control Macros(M191) to Notes

* 1102

Add ABS-GF10 profile,
Remove a extra "s" from the "0.36mm Standard @Qidi XPlus3 0.6 nozzle.json" file

* 1106

Add the PA value to some genetic filament profiles

* Update fdm_filament_pla.json

Change the fan rate of begin layers

* Update fdm_process_qidi_x3_common.json

Reduction of top surface particles
2023-11-10 20:51:44 +08:00
SoftFever
c860680b21 Fixed a issue that support_bottom_z_distance was not working as expected.
Fixed #2667
2023-11-10 19:46:01 +08:00
SoftFever
edb5676dd1 Fixed a bug that filament start gcode was inserted twice when wipe tower is enabled
fixed #2673
2023-11-10 18:00:56 +08:00
SoftFever
109176864e Update locale 2023-11-10 18:00:29 +08:00
SoftFever
c5a10b302a fix Voron profiles 2023-11-10 18:00:09 +08:00
Noisyfox
7984b4dc48 Fix complie error after merge 2023-11-10 10:54:02 +08:00
Jeff Papiez
466a17b8b4 Adding additional configurations for Voron Trident, V0, and Switchwiare (#2672)
* Updating voron profiles

* Add missing V0 configs and add default print profiles

* Update nozzle_diameter for v0, switchwire, and triedent

* Correcting names, nozzle diameters, and adding missing min and max layer heights
2023-11-10 10:19:48 +08:00
Noisyfox
cf5c19fa24 Merge remote-tracking branch 'origin/main' into dev/gizmo 2023-11-10 09:57:11 +08:00
Ocraftyone
120a3576a0 SS port - Change extrusion role gcode (#2459)
implement custom gcode for when the extrusion role is changed

Co-authored-by: supermerill <merill@free.fr>
2023-11-09 22:30:30 +08:00
renemosner
1b53d1b72d Update OrcaSlicer_cs.po (#2670) 2023-11-09 22:24:49 +08:00
niklasb
2203131211 Fix: Height range Modifier translation in German #2613 (#2668)
Update OrcaSlicer_de.po
2023-11-09 22:23:43 +08:00
Noisyfox
97502df924 Fix cli segfault (#2661) (#2665) 2023-11-09 22:22:43 +08:00
Noisyfox
f16feff2a4 Fixes scars on thing walls when "avoid crossing wall" is turned on (#2659)
* Travel very close to the inner holes, could cross external perimeter when the avoid crossing perimeters was enabled.

(cherry picked from commit prusa3d/PrusaSlicer@6c51e5148c)

* Modified variable offset in the avoid crossing perimeters to not cause scars on thin objects (#7699).

Previously, the minimum contour width was chosen too conservative and, on some thin objects, only allowed minimal (or non) offset. This could result in travels being planned along the outer perimeter.

Now, the minimum contour width is chosen much smaller at the start and tested if the variable offset wasn't failed (the outer contour broke up into more parts, more or fewer holes, etc.).
If any problem is detected, the variable offset is recalculated with a larger minimum contour width.

(cherry picked from commit prusa3d/PrusaSlicer@dc00f0bf98)

---------

Co-authored-by: Lukáš Hejl <hejl.lukas@gmail.com>
2023-11-09 22:21:44 +08:00
Hukete
333287535b Update fdm_filament_pla.json (#2657)
* 10-25

Add TPU-95A HF

* 1030

Adding Introduction of Chamber Temperature Control Macros(M191) to Notes

* 1102

Add ABS-GF10 profile,
Remove a extra "s" from the "0.36mm Standard @Qidi XPlus3 0.6 nozzle.json" file

* 1106

Add the PA value to some genetic filament profiles

* Update fdm_filament_pla.json

Change the fan rate of begin layers
2023-11-09 22:20:14 +08:00
Noisyfox
cd8f555714 Fix some gui issues (#2653)
* Fix text gizmo input dialog caption alignment

* Fix issue that layer slider top/bottom label left edge been cut by draw region (#2603)
2023-11-09 22:19:40 +08:00
SoftFever
22abe8cc9d Automatically recover from corrupted config file 2023-11-09 22:09:41 +08:00
SoftFever
df0a49a73d Fix retraction issues 2023-11-09 20:54:33 +08:00
Noisyfox
5f001c89fd Merge remote-tracking branch 'origin/main' into dev/gizmo 2023-11-08 09:14:28 +08:00
Noisyfox
483475ff48 Fix canvas background in dark mode 2023-11-08 09:14:16 +08:00
SoftFever
2d849fec6c update locale 2023-11-07 21:37:07 +08:00
SoftFever
42f8efc0d8 Fixed a regression that checking new version didn't work
Fixed #2622
2023-11-07 21:32:36 +08:00
SoftFever
e001b66192 Fixed a regression that bed type was not remembered and switched when switching bed types 2023-11-07 18:36:20 +08:00
SoftFever
132e531fb8 Misc profiles fixes
fixed #2636
2023-11-07 18:34:44 +08:00
Geoffrey Ward
94e35737e6 Update the retraction defaults to account for the M5c (#2640)
* Remove retraction_length from common

M5c should never retract more then 0.8mm or it will clog

* Preserve M5 retraction length

Moved previous retraction length from core to M5

* Update Anker M5C retraction length to prevent clogs

Anything beyond a 0.8mm retraction length will clog the printer over time.
2023-11-07 18:14:21 +08:00
Geoffrey Ward
472821922a Update AnkerMake printers to make use of Marlin 2 gcode (#2639) 2023-11-07 18:13:38 +08:00
ablegods
9c34a8c082 Update OrcaSlicer_zh_TW.po (#2630)
* Update OrcaSlicer_zh_TW.po

* update locale for 1.8 beta2

Following the version update of 1.8 beta2, new localizations will be added

* Update OrcaSlicer_zh_TW.po

* Update OrcaSlicer_zh_TW.po

fixed some conflict
2023-11-07 18:13:07 +08:00
mariuske
70f28ba3c1 Adjusted Flashforge machine profiles (#2632)
* Added correct machine pause code for FlashForge printers

Added machine pause code for Flashforge printers to support pause action in firmware 2.3.6-2.1.9-20231101

* Removed redundant gcodes for Flashforge profiles

Removed redundant gcodes for Flashforge profiles as they are already added by Orca Slicer
2023-11-07 13:10:16 +08:00
FlashforgeOfficial
5788fd30e7 1106 Flashforge: Update TPU, classic mode change etc. (#2627)
Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-11-07 13:09:30 +08:00
Noisyfox
c0a8f430f8 Add back the option to disable ensure vertical shell thickness and detect narrow internal solid infill (#2626)
* Add back the option to disable `ensure vertical shell thickness` (#2602)

* Add back the option to disable `detect narrow internal solid infill` (#2623)
2023-11-06 23:21:07 +08:00
SoftFever
9f599cd51f Fixed #2537: pa pattern issues on delta printers 2023-11-06 23:02:40 +08:00
Hukete
bea9b54689 Update profiles for Qidi printers (#2629)
* 10-25

Add TPU-95A HF

* 1030

Adding Introduction of Chamber Temperature Control Macros(M191) to Notes

* 1102

Add ABS-GF10 profile,
Remove a extra "s" from the "0.36mm Standard @Qidi XPlus3 0.6 nozzle.json" file

* 1106

Add the PA value to some genetic filament profiles

* Update fdm_process_qidi_x3_common.json

The macro code cant add to the bottom of the printer.cfg
2023-11-06 21:57:24 +08:00
Noisyfox
e57f68a266 Fix painter gizmos crash on macOS 2023-11-06 20:42:02 +08:00
SoftFever
4eae93080f Fix vector too long issues 2023-11-06 18:32:19 +08:00
SoftFever
fcc4b03054 small_perimeter_speed shouldn't be 0 2023-11-06 18:31:31 +08:00
SoftFever
c24648d470 Update orca_bot.yml 2023-11-06 14:20:04 +08:00
SoftFever
129547f2ce Update orca_bot.yml 2023-11-06 14:19:13 +08:00
SoftFever
e018e0ade0 Update orca_bot.yml (#2625)
increase operations-per-run to 3000
2023-11-06 13:36:16 +08:00
SoftFever
7510eb6f72 Update orca_bot.yml 2023-11-06 13:07:30 +08:00
SoftFever
efaf2f8e34 Add orca bot 2023-11-05 21:42:50 +08:00
Noisyfox
28e2995a01 Cut: Fix crashing in programming cut. Also fixes the cut z offset. 2023-11-05 16:03:10 +08:00
ablegods
35f65893f8 Update OrcaSlicer_zh_TW.po (#2607) 2023-11-05 13:32:21 +08:00
SoftFever
e0aae93c0a update locale for 1.8 beta2 2023-11-04 14:19:17 +08:00
Noisyfox
018b2744db Text: Fix text moving grabber 2023-11-04 11:41:11 +08:00
Noisyfox
090a9247cb Cut: Fix model rendering 2023-11-04 11:41:11 +08:00
Noisyfox
3ec927a841 Cut: Use Orca color schema and dialog layout 2023-11-04 11:41:11 +08:00
enricoturri1966
18406c31c0 Cut: Initial porting of Cut Gizmo 2023-11-04 11:41:11 +08:00
Noisyfox
ce2836a7f9 Measure: Fix copy to clipboard encoding 2023-11-04 11:41:11 +08:00
Noisyfox
1bfd9f63b6 Measure: Update measure dialog layout 2023-11-04 11:41:11 +08:00
Noisyfox
4843cda535 Measure: Use Orca color schema 2023-11-04 11:41:11 +08:00
Noisyfox
2c00408d08 Measure: Update measure gizmo tooltip 2023-11-04 11:41:11 +08:00
Noisyfox
d25780ae4a Fix-position tooltip should also be clamped inside render area 2023-11-04 11:41:10 +08:00
Noisyfox
c31e1f5229 Measure: Fix measure window position 2023-11-04 11:41:10 +08:00
enricoturri1966
f72d42f920 Measure: Initial porting of Measure Gizmo 2023-11-04 11:41:10 +08:00
enricoturri1966
1561d65712 Sync most of the gizmos with latest PrusaSlicer 2023-11-04 11:41:10 +08:00
enricoturri1966
049dfd3e08 Added method const GLVolume* Selection::get_first_volume() const to simplify client code
(cherry picked from commit prusa3d/PrusaSlicer@0e3490620e)
2023-11-04 11:41:10 +08:00
Filip Sykala
9dbb2dfe0d Various gizmos refactoring 2023-11-04 11:41:10 +08:00
Filip Sykala
30af274d44 Separate GizmoManager on_move into gizmo itself
(cherry picked from commit prusa3d/PrusaSlicer@c751d6327d)
2023-11-04 11:41:10 +08:00
Noisyfox
005b83912d Do not compile sla related gizmos 2023-11-04 11:41:10 +08:00
Filip Sykala
8e2ab660c5 Add virtual function to process mouse_event
(cherry picked from commit prusa3d/PrusaSlicer@2ab44546bd)
2023-11-04 11:41:10 +08:00
Filip Sykala
158bb47af3 Suggestion to detect volume modification instead of check some gizmos during dragging
(cherry picked from commit prusa3d/PrusaSlicer@96610ecea9)
2023-11-04 11:41:10 +08:00
Filip Sykala
da4a70785d remove unnecessary getting of raw pointer from unique pointer
(cherry picked from commit prusa3d/PrusaSlicer@209eda75a0)
2023-11-04 11:41:10 +08:00
enricoturri1966
094acdb645 Tech ENABLE_RAYCAST_PICKING - Gizmo flatten: fixed update of raycasters transformations
(cherry picked from commit prusa3d/PrusaSlicer@2a2d442b28)
2023-11-04 11:41:10 +08:00
enricoturri1966
e4ec0cfc2e Tech ENABLE_RAYCAST_PICKING - Method GLCanvas3D::_mouse_to_3d() modified to use the new scene raycaster instead of reading data from the depth buffer
(cherry picked from commit prusa3d/PrusaSlicer@a7af73795d)
2023-11-04 11:41:09 +08:00
enricoturri1966
d2d77456ac Tech ENABLE_RAYCAST_PICKING - Rendering for rectangle selection made only inside the rectangle, on systems supporting framebuffers
Various other refactorings & fixes

(cherry picked from commit prusa3d/PrusaSlicer@39b1222b22)
2023-11-04 11:41:09 +08:00
enricoturri1966
f0199159e7 Removed tech ENABLE_RENDER_PICKING_PASS
(cherry picked from commit prusa3d/PrusaSlicer@f45711e7e5)
2023-11-04 11:41:09 +08:00
enricoturri1966
1e7a91e2d5 Tech ENABLE_RAYCAST_PICKING - Raytraced picking of Gizmo Flatten
(cherry picked from commit prusa3d/PrusaSlicer@f5e68a6ac6)
2023-11-04 11:41:09 +08:00
enricoturri1966
ab090bf20d Tech ENABLE_RAYCAST_PICKING - Refactoring to allow for easier update of raycasters transform
(cherry picked from commit prusa3d/PrusaSlicer@9ac5ab857b)
2023-11-04 11:41:09 +08:00
enricoturri1966
29be4cc9a3 Tech ENABLE_RAYCAST_PICKING - Raytraced picking of Move, Rotate and Scale Gizmo 2023-11-04 11:41:09 +08:00
Noisyfox
6a40d3af16 Fix volume picking in cut gizmo 2023-11-04 11:41:09 +08:00
enricoturri1966
1cd421c4b1 Tech ENABLE_RAYCAST_PICKING - Raytraced picking of gizmos - Move Gizmo
(cherry picked from commit prusa3d/PrusaSlicer@df47ba7122)
2023-11-04 11:41:09 +08:00
Noisyfox
cd1705e6eb Implement plate picking 2023-11-04 11:41:06 +08:00
enricoturri1966
3577a259d5 Tech ENABLE_RAYCAST_PICKING - Raytraced picking of volumes 2023-11-04 11:41:06 +08:00
enricoturri1966
02f83f29c7 Tech ENABLE_GIZMO_GRABBER_REFACTOR - Refactoring of GLGizmoBase::Grabber to have a single static instance of the cube and cone models to be shared by all grabbers
(cherry picked from commit prusa3d/PrusaSlicer@f504236734)
2023-11-04 11:41:06 +08:00
Noisyfox
b2f94e16aa Fix variable init 2023-11-04 11:41:06 +08:00
Noisyfox
65b6856262 Fix macos build 2023-11-04 11:41:06 +08:00
Noisyfox
467223b8b0 Fix move gizmo grabber rendering 2023-11-04 11:41:06 +08:00
enricoturri1966
461fa63cbf Tech ENABLE_LEGACY_OPENGL_REMOVAL - Fixed rendering of layer editing background on older OpenGL compatibility profile
(cherry picked from commit prusa3d/PrusaSlicer@642f64cb41)
2023-11-04 11:41:06 +08:00
enricoturri1966
19ad0ca4d9 Tech ENABLE_LEGACY_OPENGL_REMOVAL - Fixed calculation of normal matrices sent to shaders
(cherry picked from commit prusa3d/PrusaSlicer@c468dcbed7)
2023-11-04 11:41:06 +08:00
enricoturri1966
4fb5b1f904 Cherry-picked a few changes from Tech ENABLE_GL_CORE_PROFILE 2023-11-04 11:41:06 +08:00
Noisyfox
5ce3ec716e Fix draw cut line 2023-11-04 11:41:06 +08:00
enricoturri1966
fe78e40cb4 Various fixes 2023-11-04 11:41:06 +08:00
Noisyfox
a50c5a2b7a Fix preview shell transparency 2023-11-04 11:41:05 +08:00
Noisyfox
0d27e084f3 Fix thumbnail shader 2023-11-04 11:41:05 +08:00
enricoturri1966
eb2b6af0d7 Tech ENABLE_LEGACY_OPENGL_REMOVAL - Fix into GLModel::send_to_gpu()
(cherry picked from commit prusa3d/PrusaSlicer@4b4ed423ef)
2023-11-04 11:41:05 +08:00
enricoturri1966
59b7c52862 Tech ENABLE_LEGACY_OPENGL_REMOVAL - Calculation of camera projection matrix
(cherry picked from commit prusa3d/PrusaSlicer@a0630420d9)
2023-11-04 11:41:05 +08:00
enricoturri1966
1e4f16bd39 Tech ENABLE_GL_SHADERS_ATTRIBUTES - Added shaders for glsl version 140
(cherry picked from commit prusa3d/PrusaSlicer@76d1d4949b)
2023-11-04 11:41:05 +08:00
enricoturri1966
bb044754af ENABLE_GL_IMGUI_SHADERS - Fixes in ImGuiWrapper::render_draw_data()
(cherry picked from commit prusa3d/PrusaSlicer@4964d6ecd5)
2023-11-04 11:41:05 +08:00
enricoturri1966
7081ebddfa Follow-up of 6b2fea5f8bb67a38bdcb7e3fb43c06a12a6d7798 - Fixed warnings
(cherry picked from commit prusa3d/PrusaSlicer@9701d3b01d)
2023-11-04 11:41:05 +08:00
enricoturri1966
cabb8fcf6e Tech ENABLE_GL_SHADERS_ATTRIBUTES - Fixed rendering of default bed in thumbnails
(cherry picked from commit prusa3d/PrusaSlicer@568bd39c5a)
2023-11-04 11:41:05 +08:00
enricoturri1966
96c8c11030 Removed obsolete code from GCodeViewer
(cherry picked from commit prusa3d/PrusaSlicer@033bee6431)
2023-11-04 11:41:05 +08:00
enricoturri1966
63272a9df8 Tech ENABLE_GL_SHADERS_ATTRIBUTES - Use shader's vertex attributes and matrices in GLMmSegmentationGizmo3DScene
(cherry picked from commit prusa3d/PrusaSlicer@4eee0d05f3)
2023-11-04 11:41:05 +08:00
enricoturri1966
15bad7fc19 Tech ENABLE_GL_IMGUI_SHADERS - Render imgui using shaders
(cherry picked from commit prusa3d/PrusaSlicer@d0d89a4d5b)
2023-11-04 11:41:05 +08:00
enricoturri1966
8dc82e7a8d Few small fixes 2023-11-04 11:41:05 +08:00
Noisyfox
ac001f8816 Fix pick rendering depth issue 2023-11-04 11:41:05 +08:00
Noisyfox
e211e7d144 Fix mm rendering 2023-11-04 11:41:05 +08:00
Noisyfox
511bfa71b6 Fix plate texture rendering depth issue 2023-11-04 11:41:05 +08:00
Noisyfox
8f49be40b7 Fix preview shell rendering 2023-11-04 11:41:04 +08:00
Noisyfox
03daf61862 Fix outline rendering 2023-11-04 11:41:04 +08:00
enricoturri1966
71fd4084c2 Tech ENABLE_LEGACY_OPENGL_REMOVAL - porting remaining changes
(cherry picked from commit prusa3d/PrusaSlicer@2f572d3cf0 )
2023-11-04 11:41:04 +08:00
enricoturri1966
9f4713eee8 Tech ENABLE_GLBEGIN_GLEND_SHADERS_ATTRIBUTES - Use vertex attributes and matrices in shaders. 1st installment.
Shader: flat - Default bed

(cherry picked from commit prusa3d/PrusaSlicer@a5ff37013b)
2023-11-04 11:41:04 +08:00
enricoturri1966
5fc056edfb Some refactoring into GLGizmoSlaSupports::render_points()
(cherry picked from commit prusa3d/PrusaSlicer@5621f00ee6)
2023-11-04 11:41:04 +08:00
enricoturri1966
d8551d7a7d Tech ENABLE_GLBEGIN_GLEND_REMOVAL - Use 2D vertices to render GLGizmoPainterBase circle
(cherry picked from commit prusa3d/PrusaSlicer@5193a15852)
2023-11-04 11:41:04 +08:00
enricoturri1966
61ed6143e6 Removed unneeded pairs glPushMatrix()/glPopMatrix()
(cherry picked from commit prusa3d/PrusaSlicer@5f9aeb1e38)
2023-11-04 11:41:04 +08:00
Noisyfox
e6443b5b27 Removed empty IMSlider_Utils.hpp 2023-11-04 11:41:04 +08:00
Noisyfox
c5b209270c Fix a few issues in cut gizmo 2023-11-04 11:41:04 +08:00
enricoturri1966
1fedcb61b7 Tech ENABLE_GLBEGIN_GLEND_REMOVAL - Fix in GLGizmoRotate::render_angle_arc():
Tech ENABLE_GLINDEXEDVERTEXARRAY_REMOVAL - Fix in GLModel::render()

(cherry picked from commit prusa3d/PrusaSlicer@2379588196)
2023-11-04 11:41:04 +08:00
enricoturri1966
d09dc36ff1 Tech ENABLE_GLINDEXEDVERTEXARRAY_REMOVAL - Replace GLIndexedVertexArray with GLModel: GLVolume geometry + removed class GLIndexedVertexArray from codebase
(cherry picked from commit prusa3d/PrusaSlicer@1eac357739)
2023-11-04 11:41:04 +08:00
enricoturri1966
d85bbcba50 Tech ENABLE_GLBEGIN_GLEND_REMOVAL - Fixed bug in rendering gizmo rotate
(cherry picked from commit prusa3d/PrusaSlicer@5fcb618f96)
2023-11-04 11:41:04 +08:00
enricoturri1966
d1b0743735 Removed obsolete member variable GLCanvas3D::m_color_by
(cherry picked from commit prusa3d/PrusaSlicer@5089d1460d)
2023-11-04 11:41:04 +08:00
enricoturri1966
dd51ce3b90 Follow-up of fdf8b11d4cfa793d1e45d82560d4bd97d0466d40 - Fixed GLGizmoSlaSupports::render_points()
(cherry picked from commit prusa3d/PrusaSlicer@0c74081f7d)
2023-11-04 11:41:03 +08:00
enricoturri1966
dde64acf72 Tech ENABLE_GLBEGIN_GLEND_REMOVAL - SLA caps rendered using GLModel
(cherry picked from commit prusa3d/PrusaSlicer@c9ff260d13)
2023-11-04 11:41:03 +08:00
enricoturri1966
10243b3a8c Tech ENABLE_GLBEGIN_GLEND_REMOVAL - Removed OpenGL legacy calls from GLCanvas3D::init()
(cherry picked from commit prusa3d/PrusaSlicer@aa4714a239)
2023-11-04 11:41:03 +08:00
enricoturri1966
12dbbf2d1c Tech ENABLE_GLBEGIN_GLEND_REMOVAL - Another refactoring to simplify client code of GLModel::Geometry
(cherry picked from commit prusa3d/PrusaSlicer@fa1ff1c357)
2023-11-04 11:41:03 +08:00
enricoturri1966
8107057e17 Tech ENABLE_GLINDEXEDVERTEXARRAY_REMOVAL - Replace GLIndexedVertexArray with GLModel: MeshClipper::m_vertex_array
(cherry picked from commit prusa3d/PrusaSlicer@be6922795d)
2023-11-04 11:41:03 +08:00
enricoturri1966
fc1c8c2565 Tech ENABLE_GLBEGIN_GLEND_REMOVAL - Removed Slic3r::GUI::GLPaintContour from GLGizmoPainterBase.hpp/.cpp and replaced with GLModel
(cherry picked from commit prusa3d/PrusaSlicer@df3d670357)
2023-11-04 11:41:03 +08:00
enricoturri1966
baa575b5aa Tech ENABLE_GLINDEXEDVERTEXARRAY_REMOVAL - Replace GLIndexedVertexArray with GLModel:
TriangleSelectorGUI::m_iva_enforcers

TriangleSelectorGUI::m_iva_blockers

TriangleSelectorGUI::m_iva_seed_fills

TriangleSelectorGUI::m_varrays

GLGizmoPainterBase::s_sphere

(cherry picked from commit prusa3d/PrusaSlicer@8916a00821)
2023-11-04 11:41:03 +08:00
enricoturri1966
b7989e3b2f Gizmos refactoring - Removed GLModels defined into GLGizmoBase, and mostly unused, to avoid wasting GPU memory. Use a shared GLModel for Gizmos inheriting from GLGizmoPainterBase. Initialization of GLModels moved from constructor to render methods
(cherry picked from commit prusa3d/PrusaSlicer@e3d5cd445c)
2023-11-04 11:41:03 +08:00
enricoturri1966
874f39aac1 Tech ENABLE_GLBEGIN_GLEND_REMOVAL - Adapt GLModel::Geometry index format in dependence of data size, where possible
(cherry picked from commit prusa3d/PrusaSlicer@4d2d77e99c)
2023-11-04 11:41:03 +08:00
Noisyfox
6d4e0840bc Fix move gizmo grabber connection render 2023-11-04 11:41:03 +08:00
enricoturri1966
269fbaa60c Tech ENABLE_GLBEGIN_GLEND_REMOVAL - Refactoring to simplify client code of GLModel::Geometry
(cherry picked from commit prusa3d/PrusaSlicer@be6b6590be)
2023-11-04 11:41:03 +08:00
enricoturri1966
6eed22015a Tech ENABLE_GLINDEXEDVERTEXARRAY_REMOVAL - Replace GLIndexedVertexArray with GLModel - GLGizmoFlatten::PlaneData::vbo
(cherry picked from commit prusa3d/PrusaSlicer@ffa3a1d8fc)
2023-11-04 11:41:03 +08:00
enricoturri1966
f9de4ec399 Tech ENABLE_GLBEGIN_GLEND_REMOVAL - Removed Slic3r::GUI::GeometryBuffer from 3DBed.hpp and replaced with GLModel
(cherry picked from commit prusa3d/PrusaSlicer@6b041429f6)
2023-11-04 11:41:03 +08:00
Lukáš Hejl
499b9d1be8 Fix various memory leaks
(cherry picked from commit prusa3d/PrusaSlicer@deb17c5920)
2023-11-04 11:41:03 +08:00
enricoturri1966
7907426d00 Tech ENABLE_GLBEGIN_GLEND_REMOVAL - Textures rendering
(cherry picked from commit prusa3d/PrusaSlicer@1a47211bfc)
2023-11-04 11:41:03 +08:00
enricoturri1966
04ad26f611 Tech ENABLE_GLBEGIN_GLEND_REMOVAL - Background rendering
(cherry picked from commit prusa3d/PrusaSlicer@eda55701a2)
2023-11-04 11:41:01 +08:00
enricoturri1966
35899b96ba Tech ENABLE_GLBEGIN_GLEND_REMOVAL - Layers editing profile's background texture rendering
Tech ENABLE_GLBEGIN_GLEND_REMOVAL - A few fixes in layers editing profile rendering

(cherry picked from commit prusa3d/PrusaSlicer@a939d8e4c0)
(cherry picked from commit prusa3d/PrusaSlicer@8c807dbcc4)
2023-11-04 11:41:01 +08:00
enricoturri1966
354f8e20fb Tech ENABLE_GLBEGIN_GLEND_REMOVAL - Refactoring of GLModel to:
1) allow for custom vertex data layout

2) allow for custom index data format

3) allow for any OpenGL primitive type

(cherry picked from commit prusa3d/PrusaSlicer@afcac6e2ea)
2023-11-04 11:41:00 +08:00
enricoturri1966
7e04448b7a Tech ENABLE_GLBEGIN_GLEND_REMOVAL - Various Gizmos updates and fixes
prusa3d/PrusaSlicer@35dd03e8cb
prusa3d/PrusaSlicer@bcaa0d38bd
prusa3d/PrusaSlicer@2673994471
prusa3d/PrusaSlicer@0e3a3aa522
prusa3d/PrusaSlicer@08a2711034
prusa3d/PrusaSlicer@f6f95808cc
prusa3d/PrusaSlicer@81edc7d752
prusa3d/PrusaSlicer@0b6e2b4aec
prusa3d/PrusaSlicer@71f08841f9
2023-11-04 11:41:00 +08:00
Filip Sykala
f6a3421e2a remove GLModel from base class
- only 2 gizmo use cone

(cherry picked from commit prusa3d/PrusaSlicer@3c7390e34e)
(cherry picked from commit 4647fc49ef5b925432e087252f32a6601d0410da)
2023-11-04 11:41:00 +08:00
enricoturri1966
356405adf6 Tech ENABLE_GLBEGIN_GLEND_REMOVAL - Selection layers hints
(cherry picked from commit prusa3d/PrusaSlicer@bebb5505a3)
2023-11-04 11:41:00 +08:00
enricoturri1966
7f0c095446 Tech ENABLE_GLBEGIN_GLEND_REMOVAL - 1st installment - Selection bounding box
(cherry picked from commit prusa3d/PrusaSlicer@22f38235ea)
2023-11-04 11:41:00 +08:00
enricoturri1966
28d0147d09 Introduction of classes ColorRGB and ColorRGBA to unify color data definition and manipulation
(cherry picked from commit prusa3d/PrusaSlicer@d0bff2d996 )
2023-11-04 11:41:00 +08:00
SoftFever
36ffb18059 make folder name more consistent 2023-11-04 10:37:53 +08:00
Noisyfox
528fb630bc Organic: Fix support blocker (#2595)
Expand blockers a little bit to compensate the error in facet projection
2023-11-04 02:42:30 +08:00
Rob Trame
f1345d276b Fix typos and style inconsistencies related to configuration (#2580)
* Fix 'min' accidentally defined as 'max'

* Remove duplicate retract_lift_above/below definitions

* Add correct unit for jerk

* Make speed tooltip consistent with others

* Remove accidental 's' in Qidi XPlus config

* Remove trailing comma in RatRig config

* Add 'type' field to KP3S PRO configs

* Revert "Make speed tooltip consistent with others"

This reverts commit 16c0575181.

* Revert "Remove duplicate retract_lift_above/below definitions"

This reverts commit 54ca51f3de.

* Remove non-translated retract_lift_above/below definitions

* Update PrintConfig.cpp

Revert jerk unit
2023-11-04 02:41:13 +08:00
ablegods
905d104ded Update localization (#2597)
* Update localization

Update existing strings and some newly added strings

* Update localization

Update existing strings and some newly added strings
2023-11-03 21:34:51 +08:00
InfimechOfficial
915c112ee5 20231103 Add "InfiMech" printer profiles (#2596)
* 20231103 Add "InfiMech" printer profiles 

A new brand named "InfiMech" submits printer profiles for the first time.

* 20231103 Add "InfiMech" printer profiles 

A new brand named "InfiMech" submits printer profiles for the first time.

* fix issues that prevent the profiles being loaded.

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-11-03 19:23:20 +08:00
SoftFever
8fcaef53f7 skip only one wall top checking for bridges 2023-11-03 18:35:46 +08:00
SoftFever
01ff70197b set default internal_solid_infill_pattern to monotonic for Qidi machines 2023-11-03 18:35:46 +08:00
SoftFever
e7507e1af5 Revert "Increase uploading timeout for Klipper"
This reverts commit e32e717a75.
2023-11-03 18:35:46 +08:00
SoftFever
4fe80bcbc5 remove staff_pick_switch 2023-11-03 18:35:46 +08:00
Heiko Liebscher
70c5178e50 Fix de for 1.8.0 beta2 (#2589)
* fix german for 1.8.0 beta2

* fix more
2023-11-03 18:24:46 +08:00
SoftFever
aba3c8ab31 bump version to 1.8 beta2 2023-11-02 22:13:00 +08:00
Carlos Caruncho
1c9c1d69ad Spanish translation (#2577)
* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Revert "Merge remote-tracking branch 'upstream/main' into spanish_translation"

This reverts commit 694a900845, reversing
changes made to 4f53ce4f88.

* Revert "Update OrcaSlicer_es.po"

This reverts commit 4f53ce4f88.

* Revert "Revert "Update OrcaSlicer_es.po""

This reverts commit 53bd15617c.

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-11-02 18:52:00 +08:00
Hukete
cfcba09d9d Update QIDI profiles (#2586)
* 10-25

Add TPU-95A HF

* 1030

Adding Introduction of Chamber Temperature Control Macros(M191) to Notes

* 1102

Add ABS-GF10 profile,
Remove a extra "s" from the "0.36mm Standard @Qidi XPlus3 0.6 nozzle.json" file
2023-11-02 18:41:03 +08:00
Noisyfox
fcb289124e fix deadlock condition varaible use in netfabb wrapper (#2583)
(cherry picked from commit prusa3d/PrusaSlicer@04ac99a54e)

Co-authored-by: PavelMikus <pavel.mikus.mail@seznam.cz>
2023-11-02 18:40:19 +08:00
Ocraftyone
d574816aef Add default page selection (#2569)
Add option to change default page
2023-11-02 18:28:13 +08:00
SoftFever
61e05f9bd1 Fixed #2562: disable extra perimeters over overhangs for spiral vase 2023-11-01 23:12:22 +08:00
Ocraftyone
06f966e43a Add splash screen toggle (#2568)
Add preferences option to toggle splash screen
2023-11-01 16:47:14 +08:00
Carlos Caruncho
261393b649 Update Spanish Translation (#2545)
* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po
2023-11-01 11:57:37 +08:00
lukicsl
86701d2c87 some wrong max/min layer height corrected and 0.15 nozzle added for Voron 2.4 (#2546)
* some wrong max/min layer height corrected and 0.15 nozzle added vor Voron 2.4

* typo 0.0

* Some correction in previouse commits + added missing nozzles for Revo

* yet another type
2023-11-01 11:56:59 +08:00
Ioannis Giannakas
46b31a41bf Fix duplicate entry of Only Lift Z above and below in the extruder tab (#2561)
Update Tab.cpp
2023-11-01 11:56:14 +08:00
Andy
b7d9899ef3 Russian translation update (#2551)
Russian translation update
2023-10-31 20:41:53 +08:00
SoftFever
2da64eb1b3 Improve max vol test model to support large diameter nozzles 2023-10-31 20:13:20 +08:00
SoftFever
9bc030e486 Fixed a bug that gcode was reprocessed when uploading to printhost 2023-10-31 19:15:19 +08:00
SoftFever
ac67387c7d Fixed #2527: missing THUMBNAIL_BLOCK_START 2023-10-30 23:00:43 +08:00
lukicsl
ca3a62fba8 Added 0.2mm, 0.6mm, 0.8mm nozzle support for Voron 2.4 (#2543) 2023-10-30 21:26:49 +08:00
renemosner
48fc21d59a (Update Czech translation)Aktualizace českého překladu (#2544)
* Czech translation update

* Czech translation update
2023-10-30 19:58:38 +08:00
Hukete
95dc4b7c6d Update Chamber Temperature Control (#2542)
* 10-25

Add TPU-95A HF

* 1030

Adding Introduction of Chamber Temperature Control Macros(M191) to Notes
2023-10-30 19:56:56 +08:00
SoftFever
7e91d68493 add overall_chamber_temperature variable 2023-10-30 19:53:22 +08:00
SoftFever
3fca10d7f8 Fixed #2245: change min value of *_speed parameters from 0 to 1 2023-10-30 19:49:30 +08:00
SoftFever
79c36c8d27 fix typo 2023-10-30 18:34:13 +08:00
Barry Lowrance
9c1c582464 Neptune 4 Max Profile initial commit (#2531)
Added printer profile for Elegoo Neptune 4 Max
2023-10-30 01:15:19 +08:00
SoftFever
e32e717a75 Increase uploading timeout for Klipper 2023-10-30 01:12:31 +08:00
SoftFever
6fe5abc8cc Fix Process_T 2023-10-30 00:09:01 +08:00
SoftFever
338f4609f3 skip relative e distance check for BBL 2023-10-29 17:54:35 +08:00
SoftFever
7ff4005c22 Fix errors when slicing A1 mini 2023-10-29 12:16:16 +08:00
SoftFever
363c256668 Fix some strings and update locale files 2023-10-29 10:47:23 +08:00
SoftFever
457b847aee Remove BambuStudio-SoftFever migration code 2023-10-29 10:31:26 +08:00
SoftFever
99012660c9 Don't show not consistent g-code warning for P1P machine when P1S profiles are used. 2023-10-28 22:52:16 +08:00
SoftFever
db97f91abc Enable cancel object for multi color printing(BBL) 2023-10-28 22:50:37 +08:00
Ioannis Giannakas
cee0cbe49a Updated tool tip and removed min print speed disabling when slowdown for layer cooling is de-selected (#2524)
* Updated tool tip and removed min print speed disabling when slowdown for layer cooling is de-selected

* Updated tool tip to make it explicit when this setting is used.
2023-10-28 21:55:48 +08:00
SoftFever
937f5b44e2 Update README.md 2023-10-28 17:18:15 +08:00
SoftFever
2021c2bf97 update sponsor 2023-10-28 15:49:58 +08:00
SoftFever
9d7f10c176 update wiki placeholder links 2023-10-28 10:05:49 +08:00
mariuske
7a71db1df0 Fixed minor typo (#2519) 2023-10-27 21:31:38 +08:00
Microdog
d6c9463a31 fix: fix cooling overhang threshold (#2508) 2023-10-27 21:30:23 +08:00
SoftFever
eed0c28bd8 fix some small issues of machine_max_acceleration_travel 2023-10-27 21:09:31 +08:00
mariuske
bfdaa1c51b Adjusted values to match other profiles and corrected typo for 0,2mm AD5M Pro 0,4 Nozzle profile (#2514)
* Adjusted values to match other profiles and corrected typo for 0,2mm AD5M Pro 0,4 Nozzle profile

* Aligned remaining values for 0,2mm AD5M Pro 0,4 Nozzle profile

* Updated the "initial layer acceleration" to match best practise

Updated the "initial layer acceleration" for all profiles to match best practise. This will help on the adhesive for the first layer. The value is also aligned with the common profiles now.

* Updated bridge speed

Updated bridge speed for all profiles to 25 as suggested by @SoftFever
2023-10-27 19:58:27 +08:00
Hotsolidinfill
17258c882d update Korean translation (#2513)
update last strings Korean
fix add printer "all/clear all" button
2023-10-27 16:26:17 +08:00
SoftFever
cbca9ffb81 check locale improve (#2511)
* check locale improve

* 1

* 3
2023-10-26 13:36:09 +08:00
SoftFever
b99bd94a22 Fix fr errors 2023-10-26 13:18:17 +08:00
SoftFever
9e93b51777 timelapse gcode 2023-10-26 13:16:54 +08:00
Thomas
a6003cb20a Updated FR translations (#2510)
* Rename Creality HF Generic Speed PLA.cfg to Creality HF Generic Speed PLA.json

* Update Creality K1.json

* Create Creality Generic TPU.json

* Update Creality Generic ASA.json

CS

* Update Creality.json

* Update Creality K1 Max.json

* Update OrcaSlicer_fr.po
2023-10-26 13:15:07 +08:00
SoftFever
fc7a47ecb1 return error when msgfmt failed 2023-10-26 13:08:53 +08:00
FlashforgeOfficial
a106625f84 1025 Add Flashforge printers profile (#2505)
* Added Flashforge printer profiles

The uploaded OrcaSlicer profiles include support for Flashforge Adventurer 5M and Flashforge Adventurer 5M Pro.

* Hi,

This is a pull request for adding Flashforge printer profiles to help expand OrcaSlicer's stock profiles for the community. The uploaded printers profiles support Flashforge Adventurer 5M and Flashforge Adventurer 5M Pro.
Let me know if there are any mistakes or adjustments of the files. Thank you!

Regards,
Xiaolong Bai

* Add Flashforge printer profile for Adventurer 5M and Adventurer 5M Pro

* 20230927 Add profiles for Flashforge printers

* 20231018 Flashforge Printer Profiles for AD5M and AD5M Pro

* 1024 Update: Flashforge Printer

* 1025 Add Flashforge AD5M series profiles

* 1025 Update nozzle type

"nozzle_type": "stainless_steel"

* Update 

"nozzle_type": "stainless_steel"

* Update  

"nozzle_type": "stainless_steel"

* Update  

"nozzle_type": "stainless_steel"
2023-10-25 21:47:04 +08:00
SoftFever
8ab1d8dd36 update Chinese translation 2023-10-25 20:41:01 +08:00
Hukete
fdb73b2e2a Qidi: profiles updates (#2506)
Add TPU-95A HF
2023-10-25 17:11:24 +08:00
SoftFever
5e0102e8ca update wiki links(to place holders) 2023-10-24 23:02:41 +08:00
SoftFever
ccf5c117ce update wiki 2023-10-24 22:11:17 +08:00
SoftFever
a037fd63df update WIKI test 2023-10-24 21:58:46 +08:00
SoftFever
dcb23abb8a update locale for new strings 2023-10-24 19:50:04 +08:00
enricoturri1966
f1c884acf8 Tech ENABLE_Z_OFFSET_CORRECTION - Correction of toolpaths zs when z offset is set
(cherry picked from commit 537ae6bec3bb5347665e294d02cba4a889221445)
2023-10-24 18:50:04 +08:00
SoftFever
6023f79be3 add z offset option 2023-10-24 18:49:53 +08:00
SoftFever
0851e0934b bump version to 1.8.0-beta1 2023-10-24 00:20:04 +08:00
SoftFever
1b3ad9f3d3 update locale 2023-10-24 00:18:33 +08:00
SoftFever
7a2229cae9 Optimize g-code generation for Klipper: combine accel and jerk command 2023-10-24 00:11:33 +08:00
SoftFever
d6146ecc84 Add accel and jerk to object config 2023-10-24 00:05:50 +08:00
SoftFever
f3dade623b Fixed an issue that Motion ability page is not displayed for RRF 2023-10-24 00:05:50 +08:00
Heiko Liebscher
1224759ecd fix german and for zh_tw typos (#2498)
* fix german and for  zh_tw typos

* fix de
2023-10-24 00:04:40 +08:00
Hotsolidinfill
c341bef735 update korean translation (#2496)
* update last strings

* translate web strings into Korean

* fix

* update last strings korean
2023-10-23 19:36:47 +08:00
SoftFever
12eafd5491 optimize some models 2023-10-22 21:19:46 +08:00
SoftFever
da47d0f79e Fix some issues that some option changes won't tirgger slice status 2023-10-22 20:54:48 +08:00
Noisyfox
e641903b16 Fix crash when referencing an invalid variable name (#2486)
Fix crash when referencing an invalid variable name using the old placeholder parser syntax
2023-10-22 19:35:53 +08:00
astrolemonade
66fe13f403 Fix name of bambu lab a1 mini cover (#2478) 2023-10-22 19:33:54 +08:00
Ocraftyone
f84e94faf7 Add "Manual filament change" option and logic (#2379)
* Add "Manual filament change" option and logic

* make suggested changes

* make suggested changes

* change tag from "CHANGE_TOOL" to "MANUAL_TOOL_CHANGE"

* some tweaks

* More fixes

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
Co-authored-by: SoftFever <103989404+SoftFever@users.noreply.github.com>
2023-10-22 19:31:09 +08:00
SoftFever
90601c098a Feat: chamber temp control and chamber fan (#2483)
* init

* tweak
2023-10-22 16:38:20 +08:00
SoftFever
809e6d1cc7 Check latest releases only 2023-10-21 19:43:07 +08:00
SoftFever
a7729ca83f Merge BS 1.7.7.89
# Conflicts:
#	bbl/i18n/ko/BambuStudio_ko.po
#	localization/i18n/OrcaSlicer.pot
#	localization/i18n/de/OrcaSlicer_de.po
#	localization/i18n/en/OrcaSlicer_en.po
#	localization/i18n/es/OrcaSlicer_es.po
#	localization/i18n/fr/OrcaSlicer_fr.po
#	localization/i18n/hu/OrcaSlicer_hu.po
#	localization/i18n/it/OrcaSlicer_it.po
#	localization/i18n/ja/OrcaSlicer_ja.po
#	localization/i18n/nl/OrcaSlicer_nl.po
#	localization/i18n/sv/OrcaSlicer_sv.po
#	localization/i18n/zh_cn/OrcaSlicer_zh_CN.po
#	resources/i18n/de/BambuStudio.mo
#	resources/i18n/en/BambuStudio.mo
#	resources/i18n/es/BambuStudio.mo
#	resources/i18n/fr/BambuStudio.mo
#	resources/i18n/hu/BambuStudio.mo
#	resources/i18n/it/BambuStudio.mo
#	resources/i18n/ja/BambuStudio.mo
#	resources/i18n/ko/BambuStudio.mo
#	resources/i18n/nl/BambuStudio.mo
#	resources/i18n/sv/BambuStudio.mo
#	resources/i18n/zh_cn/BambuStudio.mo
#	resources/profiles/Anycubic/machine/Anycubic Kobra Max 0.4 nozzle.json
#	src/OrcaSlicer.cpp
#	src/libnest2d/include/libnest2d/selections/firstfit.hpp
#	src/libslic3r/GCode/GCodeProcessor.cpp
#	src/libslic3r/Print.cpp
#	src/libslic3r/Print.hpp
#	src/libslic3r/PrintConfig.cpp
#	src/slic3r/GUI/CalibrationWizardPresetPage.cpp
#	src/slic3r/GUI/GLCanvas3D.cpp
#	src/slic3r/GUI/PartPlate.cpp
#	src/slic3r/GUI/PartPlate.hpp
#	src/slic3r/GUI/ReleaseNote.cpp
#	src/slic3r/GUI/Tab.cpp
#	version.inc
2023-10-21 19:41:49 +08:00
SoftFever
156c35e1da handle more legacy configs 2023-10-21 18:18:52 +08:00
Noisyfox
951252c597 Change direction for perimeter extrusion at odd layers. (#2413)
* Change direction for perimeter extrusion at odd layers.

Initial test code based on supermerill/SuperSlicer@87245ae3c1

* Perimeters for both contours and holes can have alternating direction, to support overhangs on both side.
Also fixes wipe on loop.

* Only reverse order if the loops have steep overhang

* Support a special case that treat every layer as steep overhang

* Add options

* Disable overhang reverse if vase mode is enabled

* Allow extrusion reversal and skip overhang detection if fuzzy skin

---------

Co-authored-by: supermerill <merill@free.fr>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-10-21 17:23:05 +08:00
SoftFever
bbfb9d77fa More camera tweaks (#2473)
* fix camera regressions

* Handle multiple plates
2023-10-21 12:20:30 +08:00
ZdDroid
0037a5cc2d Search printer model in add/remove printer dialog 选择打印机增加关键字搜索#3 (#2464)
* 选择打印机增加关键字搜索#3

* allow dismiss window by pressing ESC key

---------

Co-authored-by: ZdDroid <601865048@qq.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-10-20 07:57:34 +08:00
Trist0ne
acbf27036c Merged optimized print profiles from Comgrow Official (#2454)
* Merged optimized print profiles from Comgrow Official

* Corrected profile naming convention
2023-10-19 22:49:22 +08:00
Noisyfox
56fdbf5310 Fix layer path order when multi-layer elephant compensation is used (#2443) 2023-10-19 19:57:53 +08:00
Noisyfox
075a08bca8 Initial port of the new ensure vertical thickness algorithm from PrusaSlicer (#2382)
* Initial port of the new ensure vertical thickness algorithm from PrusaSlicer.

Based on prusa3d/PrusaSlicer@1a0d8f5130

* Remove code related to "Detect narrow internal solid infill" as it's handled by the new ensuring code

* Support different internal solid infill pattern

* Ignore removed options

---------

Co-authored-by: Pavel Mikuš <pavel.mikus.mail@seznam.cz>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-10-19 19:55:05 +08:00
Evan Felix
ef831ab8b1 add plate origin when looking for wipe tower (#2441)
* add plate origin when looking for wipe tower

* fix build errors and handle more plate offset cases

---------

Co-authored-by: SoftFever <103989404+SoftFever@users.noreply.github.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-10-18 17:45:54 +08:00
ablegods
d0ccc5ee96 Updated TW translation (#2433)
Changed some localization strings to be more appropriate
2023-10-17 20:03:11 +08:00
Ocraftyone
4d14ee15ce Thumbnail Formats Option Ported from PrusaSlicer and add BIQU/BTT format (#2405)
* Add needed src files and update CMake files

* Implementation of GCodeThumbnailsFormat for PNG, JPG, and QOI complete

* Implement BIQU (Big Tree Tech) Thumbnail Format

* have GCodeProcessor.post_process pass through original line end characters

* fix biqu thumbnail output
use \r\n for new lines in the biqu thumbnail portion. the firmware requires these end characters to function properly.
update names of variables and add comments to be more descriptive
replace modified Qt pixel algorithm with much simpler algorithm from BTT TFT firmware

* rename BiQU to BTT_TFT for better clarity

* remove underscore from GUI option

---------

Co-authored-by: SoftFever <103989404+SoftFever@users.noreply.github.com>
2023-10-17 20:00:38 +08:00
SoftFever
25c9b43d62 Revert "选择打印机增加关键字搜索 (#2376) (#2392)"
This reverts commit caaa969ba1.
Revert "选择打印机增加关键字搜索 (#2392)"

This reverts commit a178b967dc.
2023-10-15 18:08:56 +08:00
SoftFever
1c26ec9e23 Increase painting resolution 2023-10-15 18:08:56 +08:00
SoftFever
388b483774 Feat: 1. Vertical and horizontal mode for painting 2. Optimize Camera behavior (#2424)
* fix camera and update locale

* Paint horizontally or vertically
2023-10-15 16:43:52 +08:00
SoftFever
53c416b819 Fixed a regression of Hostname #2372 2023-10-14 23:16:27 +08:00
Hotsolidinfill
a3200ad285 Translate web strings into Korean (#2410)
* update last strings

* translate web strings into Korean

* fix
2023-10-14 20:16:51 +08:00
Thomas
2077c98bcc K1/K1 Max : Added TPU, ASA and fixed filaments missing from previous PR (#2412)
* Rename Creality HF Generic Speed PLA.cfg to Creality HF Generic Speed PLA.json

* Update Creality K1.json

* Create Creality Generic TPU.json

* Update Creality Generic ASA.json

CS

* Update Creality.json

* Update Creality K1 Max.json
2023-10-14 20:16:16 +08:00
Thomas
25447877c6 Config changes for Creality K1/K1 Max (#2380)
* Update 0.16mm Optimal @Creality K1 (0.4 nozzle).json

Improved K1 0.16mm profile

* Improved 0.20mm Standard @Creality K1 (0.4 nozzle).json

* Improved 0.24mm Draft @Creality K1 (0.4 nozzle).json

* Create Creality High Flow Hotend PLA.json

* Create fdm_filament_tpu.json

* Create fdm_filament_asa.json

* Create Creality Generic ASA.json

* Update Creality Generic PLA.json

* Create Creality Generic Speed PLA.cfg

* Rename Creality High Flow Hotend PLA.json to Creality High Flow Hotend Generic PLA.json

* Rename Creality Generic Speed PLA.cfg to Creality High Flow Hotend Generic Speed PLA.cfg

* Update Creality Generic ASA.json

* Update Creality K1 (0.4 nozzle).json

* Update Creality K1 (0.6 nozzle).json

* Update Creality K1 (0.8 nozzle).json

* Update Creality Generic ASA.json

* Rename Creality High Flow Hotend Generic PLA.json to Creality HF Generic PLA.json

* Rename Creality High Flow Hotend Generic Speed PLA.cfg to Creality HF Generic Speed PLA.cfg

* Update Creality Generic PLA.json

* Update 0.24mm Draft @Creality K1 (0.4 nozzle).json

* Update Creality HF Generic PLA.json

* Update Creality HF Generic Speed PLA.cfg
2023-10-14 10:59:51 +08:00
Thomas
2c6b024dae Added a lot of missing strings and fixed some in FR localization (#2397)
* Update OrcaSlicer_fr.po

Add missing translation and removes some references to Bambu that are not in original strings.

* Update OrcaSlicer_fr.po
2023-10-14 09:55:31 +08:00
曹政
b3866afb9e update zh_CN local (#2393)
Co-authored-by: smile.caozheng <smile.caozheng@outlook.com>
2023-10-14 09:51:33 +08:00
Hotsolidinfill
3631a0fee6 update Korean translation (#2401)
update last strings
2023-10-14 09:48:52 +08:00
Noisyfox
f39f5effa1 Fix crash on BBL's calibration tab (#2403) 2023-10-13 22:55:07 +08:00
liz.li
1d07869519 ENH: add a text translation of a dailytip
jira: new

Change-Id: I2d9ed92011cfc6aa69b96fa27ad11d856114403d
2023-10-13 14:43:42 +08:00
liz.li
760987660f ENH: add a dailytip
jira: STUDIO-4773

Change-Id: I97a15de5356a5275e648d9eb42f733479803561c
2023-10-13 14:43:42 +08:00
gerrit
1ce06fa320 ci: update build version to 01.07.07.89
Change-Id: I0b2aad10c8f697ad0cf74744b71ec1e2fef1c843
2023-10-13 14:43:42 +08:00
xun.zhang
c29a38d91b ENH: do not pop up open door tip
1. Do not pop up open door tip. Write the info to slicer info

jira: [NEW]
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I1f611ee18faa5820a26443a13614f68f3e6ba780
2023-10-13 14:43:42 +08:00
xun.zhang
b946308f03 ENH: update A1 mini gcode
1.improve wipe mouth temp 140-150
2.delete the last flush start

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ie3db3b89c61b18bdff79fe2dbf61398c428da733
2023-10-13 14:43:42 +08:00
zhimin.zeng
f52c49c371 FIX: PA Profile Factor K not shown in German language
github: 2689
Change-Id: I8d5b874e1304e2ecd984f14fad8ae32f94ea4602
2023-10-13 14:43:42 +08:00
xun.zhang
96abc3209a ENH: use json to store filament & nozzle info
1.Use json to store nozzle hrc
2.Use json to store filament temp type

jira: STUDIO-3488

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I8eb226e26352a41418f4e46d8cda403dc22ecff4
(cherry picked from commit 62a71d5b1947474d3d86be9015551c1007c89702)
2023-10-13 14:43:42 +08:00
chunmao.guo
9ce3487b20 FIX: [STUDIO-4125] null crash in ImageGrid
Change-Id: Ibe2fcf6d3fe7ae901a2e594d782566a04aa19c39
Jira: STUDIO-4125
(cherry picked from commit aef8e23fdbead22c9e0585cb33cb72f183d8c057)
2023-10-13 14:43:42 +08:00
Arthur
d64031a054 ENH: auto-arranging allows more filaments together
Auto-arranging allows more filaments to be printed on the same plate

Only HighTemp and LowTemp filaments are not allowed on the same plate.

Jira: https://jira.bambooolab.com/browse/STUDIO-4682
Change-Id: I1bd4966e6aaa55a6dd9dff05f0bd94f2795a62b0
(cherry picked from commit 965040912af0555ca190702e7c7ac92e177a2922)
2023-10-13 14:43:42 +08:00
lane.wei
7b93986dfa ENH: CLI: retry pipes no matter which error found
JIRA: no jira
Change-Id: Ic49dd1a55e83485eb72b5be97ba9509261f6c133
2023-10-13 14:43:42 +08:00
Arthur
d54f488160 FIX: exclusion region may be too close
Auto arranging may put exclusion region may be too close.
Jira: none

Change-Id: I613a2525620cf58cd9da7d27e8bb6d9d0a52d807
(cherry picked from commit a8ed3929d3596b8ee5400c9376ca040c75025524)
(cherry picked from commit 97e6f5aadb4623f07837f8a4845c29752b09f88e)
2023-10-13 14:43:42 +08:00
Noisyfox
fc0067ccba Remove fix_slicing_errors because it makes no sense (#2370)
this also fixes #2344
2023-10-12 23:02:27 +08:00
ZdDroid
a178b967dc 选择打印机增加关键字搜索 (#2392)
* 选择打印机增加关键字搜索

* revert more format changes

---------

Co-authored-by: ZdDroid <601865048@qq.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-10-12 22:49:39 +08:00
SoftFever
3f9db6064b update loacale 2023-10-11 22:29:03 +08:00
Heiko Liebscher
4854572b7f fix de for 1.8 new features (#2378)
fix
2023-10-11 22:21:34 +08:00
Hotsolidinfill
b013c97376 update korean (#2368) 2023-10-11 22:18:39 +08:00
Anna
3afe87652e Update OrcaSlicer_nl.po (#2387)
Did what I could for now!
2023-10-11 22:15:39 +08:00
Noisyfox
b5ee7a0e44 Show as much information as possible in crash log (#2386) 2023-10-11 22:14:21 +08:00
ZdDroid
caaa969ba1 选择打印机增加关键字搜索 (#2376)
Co-authored-by: ZdDroid <601865048@qq.com>
2023-10-11 21:54:55 +08:00
gerrit
700a840d2f ci: update build version to 01.07.07.88
Change-Id: I3540eab6552b682f678bdc7966741348f58aa2bd
2023-10-10 14:19:23 +08:00
lane.wei
59f71cfc67 ENH: translation: refine translation for hot bed temperature
JIRA: no jira
Change-Id: I367d1a2e4aa8478b8892e41f9a41dac2fc8141bb
2023-10-10 14:19:23 +08:00
lane.wei
9f31a1ff7b ENH: GUI: refine the text spacing for some warning
JIRA: no jira

Change-Id: I6d6a6e1e103a3c67ed6c93847877753bbe7c4691
2023-10-10 14:19:23 +08:00
xun.zhang
c27165a0d7 ENH: update PPA-GF max v speed
1.Modify generic PPA-GF max v speed to 6

jira: [NEW]
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I18cfdcb9037b9d9fda6ec60d12c6057a5f9e9bd0
2023-10-10 14:19:23 +08:00
maosheng.wei
a709ac2694 FIX: Some Translation
Jira: STUDIO-4557
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>
Change-Id: I561ca49a49222e1c9c4456f061e649dd8ed129bb
2023-10-10 14:19:23 +08:00
gerrit
d9e50b183a ci: update build version to 01.07.07.87
Change-Id: Ic7361992003ca200e11fed84251219a13e4a605d
2023-10-10 14:19:23 +08:00
tao wang
440185f12d ENH:update Chinese translations related to auto refill
Change-Id: I13efdea9032a99c17159db5815526dc850767f2d
2023-10-10 14:19:23 +08:00
tao wang
fa71b9600b ENH:update text in auto refill
jira:[STUDIO-4344]

Change-Id: Ieb1f40e03fd4a266b768f8b97e28328858fe63cc
(cherry picked from commit 621d4319760cea15e224a9927768bb643b852139)
2023-10-10 14:19:23 +08:00
gerrit
6e646878e5 ci: update build version to 01.07.07.86
Change-Id: I449b349672a26a190a7b36addc9015cceae14b1b
2023-10-10 14:19:23 +08:00
zhimin.zeng
b293346272 FIX: The warning is not translated
that nozzle diameter is not supported in old firmware
Jira: 4675

Change-Id: I6045dd33f4821ee7dd11bd8782f8c6f9b2a4010e
2023-10-10 14:19:23 +08:00
xun.zhang
ce40bb2ecf ENH: add translation
jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I241470bbe5e080173419715caabaa624d045ea56
2023-10-10 14:19:23 +08:00
xun.zhang
1c0e3e2e96 ENH: refine open door printing tip
jira:STUDIO-4532

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I887e6b2bec90facbe9722622be4d7e7d0ee35796
2023-10-10 14:19:23 +08:00
xun.zhang
241d10c637 ENH: refine enclosed printing logic
1.Display a pop-up window based on whether is enclosed

jira: STUDIO-4532

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I5e7c85f6590ebe1c65f957c6bcc57a969e804964
2023-10-10 14:19:23 +08:00
gerrit
882e4ff114 ci: update build version to 01.07.07.85
Change-Id: I08ab209f6bbf6aff155afed5e9a8fe007212a730
2023-10-10 14:19:23 +08:00
xun.zhang
a3e94f42a0 ENH: add translations
jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I121adb40fb4eb68a62b52b8eda4270ef1b1d38f5
2023-10-10 14:19:23 +08:00
xun.zhang
463716dd55 ENH: refine some tip with softening temperature
1. refine some tip
2. alert when bed temperture greq than softening temperature

jira: STUDIO-4532
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ib9623553a40825015744783f30c6e439827a49c6
2023-10-10 14:19:23 +08:00
xun.zhang
c9445dd707 ENH: modify pla,pva temperature vitrification
jira:STUDIO-3518

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ibbaa8d6fba0d724ebe9e90b9c0357c7d68c063de
2023-10-10 14:19:23 +08:00
xun.zhang
6487b2d0e8 ENH: refine tl temp check logic and tip
1. refine warning tips

jira:STUDIO-4532

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ida6f8a8a4fca5cf8cf04e622bd2f3af1baf82d52
2023-10-10 14:19:23 +08:00
tao wang
01f13afa56 FIX:fixed failure to open AMS mapping window
jira:[STUDIO-4669]

Change-Id: Ia9c9ca0b8833903443c173b97e61ba4e88e5d2bb
2023-10-10 14:19:23 +08:00
tao wang
1ed54b1d5d FIX:add protection if task information is empty
jira:[for new]

Change-Id: Icfdf254eca23022ea3f861168d3894ef866fe792
2023-10-10 14:19:23 +08:00
gerrit
b484fb1406 ci: update build version to 01.07.07.84
Change-Id: I1c34df762c329ab81c04cbd2a79d1259f04cb7bb
2023-10-10 14:19:23 +08:00
salt.wei
e209c5de09 ENH: save overhang polygons in cache data
JIRA: none

Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I6887774f986843b094c05da48de3e2d6234a2c9e
2023-10-10 14:19:23 +08:00
lane.wei
df0f3ea72c ENH: CLI: return error when the printable size exceeds the default one
also refine some logs

JIRA: XXXX
Change-Id: Ibec090e98b8d93b1396e691ecff97ced13b1d8c8
2023-10-10 14:19:23 +08:00
maosheng.wei
01968ce29f FIX: [4670] Cloud disabled rating interface, displaying error prompt
Jira: STUDIO-4670

Change-Id: Ie571fd042010d5972aaef76063a52b67ef7ccb6a
2023-10-10 14:19:23 +08:00
tao wang
1c705d85e9 ENH:fixed display the wrong tray type in AMS
1. no longer using track_type
2. type using tray_info_idx query

Change-Id: I3ad08dc92e90c86041232d57b80331c563fe24c5
(cherry picked from commit aaebb55ac55c0d11dbc72ff17fce9b96854aec5e)
2023-10-10 14:19:23 +08:00
zorro.zhang
2164da1cc0 ENH: Reduce ImageSize of HotModel from Mekarworld
Change-Id: Icc370b57591345b372314587f71d04323d71c746
2023-10-10 14:19:23 +08:00
tao wang
b27dc119d7 FIX:fixed incomplete operation buttons
jira:[STUDIO-4119]

Change-Id: I73dd64fae9a42bfe248e6535d9cedb1343a2cc08
(cherry picked from commit f3176c419506a337ebb2801c66dffa4a4c8ae788)
2023-10-10 14:19:23 +08:00
lane.wei
165bb96e35 ENH: CLI: add time estimation for non-cache slicing
JIRA: XXXX
Change-Id: Ifed2d70e8d6355087694df96e413cdbcf792d6d9
2023-10-10 14:19:23 +08:00
Arthur
04552e4c9b FIX: cli arrange failed in some cases
1. set different bed_shrink for seq_print and layered print
2. fix the bug that seq_print arranging may get collision with exclusion
   area.
3. remove unused functions.

Jira: STUDIO-4663

Change-Id: I8b726704cca33fe37bb3cb7c4502963a9ad8d16b
(cherry picked from commit f27d00f81315fe4675bbc55ef932403e31a9264f)
2023-10-10 14:19:23 +08:00
Stone Li
c35ece24fe FIX: fix a crash issue of mac os
GITHUB: https://github.com/bambulab/BambuStudio/issues/2573

Change-Id: Ic365bc411dd829701ce4ffd0090b09367cb6eddc
Signed-off-by: Stone Li <stone.li@bambulab.com>
2023-10-10 14:19:23 +08:00
chunmao.guo
92ba240173 FIX: PrinterFileSystem crash when switch file type
Change-Id: I25b0659d7a33bda5bb1157c967dac300b41696a9
Github: 2633
2023-10-10 14:19:23 +08:00
maosheng.wei
a004356fdc ENH: [STUDIO-4579] limit request rating result count
Jira: 4579

Change-Id: Ifae6f50b46fc39254ce7c59d0deb1cf1e1940579
Signed-off-by: Stone Li <stone.li@bambulab.com>
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>
2023-10-10 14:19:23 +08:00
zhimin.zeng
a5e5237b22 FIX: Unhandled unknown exception terminating the application when cali
Jira: 4386
Change-Id: I80ab306882176cfe2453f791992911fb4de19d83
2023-10-10 14:19:23 +08:00
xun.zhang
390c295a63 ENH: update max v speed for PolyLite PETG
1. Set max volumertic speed to 11.5 for PolyLite PETG

jira:STUDIO-3518

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I5ee019d07124870893df9ab636851adc0f2a6425
2023-10-10 14:19:23 +08:00
tao wang
84524e7685 FIX:set print mode before print all plate
jira:[STUDIO-4649,STUDIO-4650]

Change-Id: Ib4ddda6f1461a31a7d7407786bcb0d1859b3fb82
2023-10-10 14:19:23 +08:00
salt.wei
b8fb221813 ENH: fix 0 space exception when slicing
JIRA: none. found by cli slicing

Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I47a754e99e193394b0d34cd05e27304910af521f
2023-10-10 14:19:23 +08:00
xun.zhang
5196bcdee0 ENH: update X1E start gcode
1.Optimize the heating sequence for the X1E chamber

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I22650b71961218b32247a84eefb9bf8dc5dceeb7
2023-10-10 14:19:23 +08:00
gerrit
3b0490ae35 ci: update build version to 01.07.07.83
Change-Id: Ied7f76866cb4d70c8eeeec0aaa41ea1702408782
2023-10-10 14:19:23 +08:00
七喜
740384a55d Revert "Revert "ENH: add X1E as upward printers""
This reverts commit f3102c5ea759047389e140d14d6297dc82341e60.

Reason for revert: add x1e back

Change-Id: I6c6f21bb67811d10915ad8b7508022d888b4aee0
2023-10-10 14:19:23 +08:00
七喜
7595252504 Revert "Revert "ENH: update X1E start gcode""
This reverts commit ae66ad25419b2a3762dfbf4e95b33b1fe944f09b.

Reason for revert: add x1e back

Change-Id: I90b771c5155c286299c2a48e673785150c69c709
2023-10-10 14:19:23 +08:00
七喜
081941b530 Revert "Revert "ENH: add profiles for X1E""
This reverts commit 68cfc58e87e25bb7292eabac161b6db5a71bb89c.

Reason for revert: add x1e back

Change-Id: Ie4152de548b30912a2a6ba96f8ebc3d25dbcd8cf
2023-10-10 14:19:23 +08:00
xun.zhang
c661e0257e ENH: update A1 mini start gcode
1.shorten prime line and change x axis freq sweep

jira: [NEW]
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I3582f7fb17dfa173f33ad74f49d7d2b70036df5f
2023-10-10 14:19:23 +08:00
gerrit
ce37440162 ci: update build version to 01.07.07.82
Change-Id: I01dda519ae9acc3785d3d0107ba5e38d65b43410
2023-10-10 14:19:23 +08:00
maosheng.wei
5b0a5b81e2 ENH: [STUDIO-4579] limit request rating result count
Jira: 4579
Change-Id: I1d546c33a58247f22c346fb17580927c282655d5
2023-10-10 14:19:23 +08:00
lane.wei
28c33d21b4 ENH: translation: update some translation for plate
Change-Id: Id0e3f7d93726b40f437202602a0527f99df20f44
2023-10-10 14:19:23 +08:00
zhimin.zeng
9cbf3a4a1e FIX:(cali) should not save preset when the select block is empty
Jira: 4644
Change-Id: I18b690a983d34521ca7ef6f0a6707e2df9bb1d3d
2023-10-10 14:19:23 +08:00
Arthur
87bee0c6ec FIX: auto-arranging crash for single plate arranging
Jira: STUDIO-4651

Change-Id: I8e4be997292d7f7dbd741368e20db5a0d2e693cb
(cherry picked from commit 7d75f5903f67fb332eaff4563308d5f196e45d1f)
2023-10-10 14:19:23 +08:00
七喜
250e3bb019 Revert "ENH: add profiles for X1E"
This reverts commit 8e2e709bb7037d28f1b32fdeb80eadcfafdc57f2.

Reason for revert: remove X1E related

Change-Id: I9a7b395dcbfa19adeef6891a59ed1074dee1fb18
2023-10-10 14:19:23 +08:00
七喜
dbd24e76f2 Revert "ENH: update X1E start gcode"
This reverts commit c047bd3a0776f061b4d532008b40db55ab83118f.

Reason for revert: remove X1E related

Change-Id: If5922b012c42a38f80f70fdee387388fccc7e656
2023-10-10 14:19:23 +08:00
七喜
2ffadb72f0 Revert "ENH: add X1E as upward printers"
This reverts commit 1e8d981b3c368775112b6f4a7496f14849d4c8d9.

Reason for revert: need to hide X1E in current stage

Change-Id: Ida1b57fd68a6a993aa148b12a46ff8a52092dc69
2023-10-10 14:19:23 +08:00
zorro.zhang
dc0193076a FIX: fix the model name display issue under project page
JIRA STUDIO-4625

Change-Id: I9d9627967dcec845f66422e06eadfd2bfe964bb9
2023-10-10 14:19:23 +08:00
tao wang
faf2a85311 ENH:add check for flow cali
Change-Id: Ic3c808b16a1a07e459323604f5db175e26dc41e1
2023-10-10 14:19:23 +08:00
tao wang
537e0ae31c ENH:removed tips for flow calibration of N1
jira:[for a1 mini]

Change-Id: Ibf069524964dfeb861db277d58efd8eaad079355
2023-10-10 14:19:23 +08:00
lane.wei
e8257103b7 FIX: CLI: fix the wipe tower depth not correct issue
estimate the wipe tower depth using more logic
JIRA: MAK-XXXX

Change-Id: Ieb66ebb7e75b20e61b7c0cb8e60496287434d31b
2023-10-10 14:19:23 +08:00
zhimin.zeng
7ada04ff1a FIX: Add protection for cali (for crash)
Jira: 4434
Change-Id: I2b82c68b81dd0c65fe2188ad6824f5f2dda4c8a6
2023-10-10 14:19:23 +08:00
maosheng.wei
907ffb95eb ENH: add link
Jira: XXXX

Change-Id: Icd1417f10253d804a3098822fa377be2b1d42a17
2023-10-10 14:19:23 +08:00
gerrit
9499ce1efa ci: update build version to 01.07.07.81
Change-Id: I495a275a63cc1ccf121e670a94c5cf76c870777f
2023-10-10 14:19:23 +08:00
maosheng.wei
1c1f33bc0b FIX: [STUDIO-4559 4557] translation
Change-Id: I54370aed677b6620c3b9b030a4e5d5ababe34569
2023-10-10 14:19:23 +08:00
xun.zhang
24d0b522a8 ENH: add param link for chamber temp
jira:STUDIO-3518

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I275d1006f7478a4d5b5d6854513a50025f46d670
2023-10-10 14:19:23 +08:00
xun.zhang
85fd225e48 ENH: add X1E as upward printers
1. P1P,P1S add X1E to upward printers
2. X1 ,X1C add X1E to upward printers
3. A1 mini add X1E to upward printers

jira:STUDIO-3518

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I574854b3303a879b738e6841bacd30959b5005a7
2023-10-10 14:19:23 +08:00
xun.zhang
f6838d8fec ENH: update PETG-CF filament params
1. update params with cooling

jira: STUDIO-3518

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Iea8cdb055c60e980ef18dff2cf64d848d9b83747
2023-10-10 14:19:23 +08:00
liz.li
999ceddea1 FIX: bedshape dialog dark mode issue
Jira: STUDIO-4572

refine UI of the dialog under dark mode

Change-Id: I188a50bd8909c2ab090fbb1a095c4c45da150071
2023-10-10 14:19:23 +08:00
tao wang
d3e2f011e4 FIX:fixed German not displaying error messages
jira:STUDIO-3722

Change-Id: I12883b4f494c1344a7b694ce627e95e4e14a3e1d
(cherry picked from commit 3ed194f1f08272f077d9e668e5cb8a1be6cc8919)
2023-10-10 14:19:23 +08:00
tao wang
36b8abf24e ENH:optimized display of German and Swedish
jira:[STUDIO-3722]

Change-Id: I4562b1d55c709a6aac56f91601b12ae3f3459fd1
(cherry picked from commit e4cd09589685bdb1f7bdefada5f2ae28fb1e9552)
2023-10-10 14:19:23 +08:00
maosheng.wei
e591e898af ENH: limit network request times
Jira: STUDIO-4615

Change-Id: If365de54d3028f98cf3a720873378ba6fcfa5589
2023-10-10 14:19:23 +08:00
liz.li
4c2cbe4c15 FIX: cali: sync history window flickering
Jira: STUDIO-4469

Change-Id: I1b88fa4d1a35f83de821c69da11c01701c3d3658
2023-10-10 14:19:23 +08:00
liz.li
638a961e32 FIX: message dialog line wrap issue
Jira: STUDIO-4553

Change-Id: I89a69488803d493b12a7a1b94b9afa7c60429186
2023-10-10 14:19:23 +08:00
hu.wang
110079f77e FIX:translation of chamber temperature
JIRA:STUDIO-4624
Change-Id: Ifacd32a901705b1ffc359657afb6de5356e60400
2023-10-10 14:19:23 +08:00
qing.zhang
634347319d FIX: change M600 to M601 to prevent kobra crash
Jira: 4606
Github: #2607

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Ifeaac0c4f744ea82496f36ebea90e56647c14704
2023-10-10 14:19:23 +08:00
lane.wei
bdaabf614b FIX: CLI: fix a 3mf saving issue
some model returns -122 which is caused by the picture size not aligned
JIRA: no jira

Change-Id: I6501403262dfd271e3022ef70ee11b1ac4d6651b
2023-10-10 14:19:23 +08:00
zhimin.zeng
2e2fe7506c FIX: add cali translate
Jira: XXXX
Change-Id: I39bb2be58bea7c3fc631f20464ffcebc3ecde171
2023-10-10 14:19:23 +08:00
zhimin.zeng
9639f77bab FIX: Manual flowcalibration reports invalid k value
Github: 2589
Change-Id: I7870ca89f9c92168c37d2d40e9a3820eb8f24b1b
2023-10-10 14:19:23 +08:00
Stone Li
47d65de12e ENH: update version to 01.07.07.80
Change-Id: Ic33c4a6566b4820dca7f36100a58551e8c9feb65
2023-10-10 14:19:23 +08:00
zhimin.zeng
64ed5c86a5 FIX: crash when switch device page to cali page
Jira: 4358
Change-Id: Ic4d23bd7e31c7419516a3ab55a4d9a2e2072cd47
(cherry picked from commit c74bb0f33870e19f3ae3ea98be06d584c02abe4e)
2023-10-10 14:19:23 +08:00
zhou.xu
76a9c62ad0 FIX: missed to delete texture
Jira: STUDIO-4574
Change-Id: I8884380158d3d20ce76a07cbcaa8531ab039357b
(cherry picked from commit 44f93d083f542d6151f727e98933131cf0fa4463)
2023-10-10 14:19:23 +08:00
xun.zhang
80a4a5f2c6 ENH: update X1E start gcode
1. Add clog protect for more low temp filament

jira: STUDIO-3518

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I82abd6f84b6c106ecf65c78e87a5e3d65ef30294
2023-10-10 14:19:23 +08:00
xun.zhang
4c431b1a42 ENH: add profiles for X1E
1.Add fillament,process,machine profiles for X1E

jira: STUDIO-3518
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I7cd82540602699035099dbfcaf541aab5c6276fe
2023-10-10 14:19:23 +08:00
lane.wei
980b1bf38e ENH: CLI: refine some logs
JIRA: STUDIO-XXXX
Change-Id: Ic61f7fbffabc28a76ac186c33182b9284c1c2da1
2023-10-10 14:19:23 +08:00
lane.wei
59061f912b ENH: CLI: add more logic to improve slicing
1. only report slicing error when no-check not set
2. skip duplicate when under spiral_mode with by-layer print

JIRA: STUDIO-XXX
Change-Id: I03bf7f45b4cc43dcc1fd2ffb6b53321fe3324dad
2023-10-10 14:19:23 +08:00
zhou.xu
ec35d210ce FIX: reload bed_texture should reset before
Jira: STUDIO-4574
Change-Id: I0bfe8a936347438d06dcdf3faca83a00b02a8677
(cherry picked from commit e03bfc830141a53acbabde3992edc14595bcef9a)
2023-10-10 14:19:23 +08:00
lane.wei
3b9d61cfc0 ENH: config: add local logic into config.load
JIRA: github-2569
Change-Id: If593b9faee324dda096a27873587db27aa22129e
2023-10-10 14:19:23 +08:00
ZeroG
a24a1323dd Update OrcaSlicer_nl.po (#2364)
Fixes/Updates:

1. Shift typo fixed
2. "Pengrootte" is supposed to be one word.
3. "Gebied" doesn't sound right for a shape, "Bol" is better.
4. "Sectie weergave" is two words
2023-10-10 07:53:32 +08:00
Michal Dziekonski (mdz)
d54e5bd9d2 Fix object's list text color on Linux (GH-2086) (#2346)
Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-10-09 00:20:27 +08:00
SoftFever
6962cd6577 upgrade deps (#2349)
* upgrade deps
2023-10-09 00:19:26 +08:00
SoftFever
9dd3fb60b7 Use calibration tutorial gitee mirror for China users (#2363) 2023-10-08 23:06:22 +08:00
Noisyfox
0694863fb9 Use calibration tutorial gitee mirror for China users 2023-10-08 22:30:33 +08:00
SoftFever
8adb044670 Add Wanhao D12-300 profile (#2261) 2023-10-08 22:12:26 +08:00
SoftFever
ec762b5b7a kor translation update (#2360) 2023-10-08 22:10:36 +08:00
SoftFever
598f7fda32 Show tooltips for plate buttons (#2176) (#2351)
![image](https://github.com/SoftFever/OrcaSlicer/assets/1537155/f88a555c-32ee-4bcd-a5e4-36c871f97da7)

Fixes #2176
2023-10-08 22:08:53 +08:00
crwusiz
1da3c58823 kor_translation update 2023-10-08 20:38:56 +09:00
crwusiz
5a689169d8 kor_translation update 2023-10-08 20:24:20 +09:00
crwusiz
ce1e48df68 kor_translation update 2023-10-08 20:04:37 +09:00
Noisyfox
712de9255f Show tooltips for plate buttons (#2176) 2023-10-07 23:11:41 +08:00
Musicdad
d90a0df330 Merge branch 'main' into main 2023-10-07 07:55:57 -05:00
SoftFever
1332f47050 Update Turkish translation for dev 1.8 version (#2348)
fix Turkish for dev 1.8 version
2023-10-07 20:55:13 +08:00
SoftFever
449405f2b6 CICD for deps (#2342) 2023-10-07 20:38:53 +08:00
Sadri ERCAN
b8c899f4e4 fix Turkish for dev 1.8 version
fix Turkish for dev 1.8 version
2023-10-07 12:59:29 +03:00
SoftFever
95311f9875 fix linux
Signed-off-by: SoftFever <softfeverever@gmail.com>
2023-10-07 12:51:22 +08:00
SoftFever
cd17209516 Ported automatic hole to polyhole conversion from superslicer (#2336)
I've ported automatic polyhole conversion from super slicer.

I'm happy to change the PR as required.

Closes #626
2023-10-07 10:03:02 +08:00
Musicdad12
384a3c2703 Wanhao D12/300 Fixed 2023-10-06 20:53:23 -05:00
Musicdad
4b94a148e8 Merge branch 'SoftFever:main' into main 2023-10-06 20:31:19 -05:00
Musicdad12
7eec58c36f Profile ported for Voron Switchwire
Ported Voron Switchwire profile from Prusa Slicer 2.6.1
2023-10-06 20:26:07 -05:00
LovelyTwo
3359dadd32 Port automatic hole to polyhole conversion from SuperSlicer
Co-authored-by: supermerill <merill@free.fr>
2023-10-07 10:15:21 +11:00
SoftFever
37519b76d8 fix GMP downloading issues 2023-10-07 00:40:03 +08:00
SoftFever
2e0ae6d82c build on all platforms 2023-10-07 00:08:17 +08:00
SoftFever
8d0bb25261 Update README.md
update discord link
2023-10-06 23:43:09 +08:00
SoftFever
2d0c7f220f Fix crash when switching between different infill patterns (#2341)
The error was introduced as part of the "Extend sparse infill" porting.

Reproduce:
1. Add a cube
2. Set infill pattern to cubic
3. Slice
4. Then change the pattern to adaptive cubic
5. Slice
6. Crash

This PR fixes this issue.


1a0d8f5130 (diff-3ec83cd4f72e61c92f69178305a0298e90e2d8b43a3d88ca2f8edccde4e02c7aL709-R736)

Not sure why I missed this part during the initial port :P
2023-10-06 23:39:24 +08:00
Noisyfox
993e653c54 Fix crash when switching infill pattern between cubic & adaptive cubic
Cheery picked from prusa3d/PrusaSlicer@2b0a7ccb2c
2023-10-06 23:09:01 +08:00
SoftFever
5d75a95dc3 Fix issue with overhang-extra-perimeter on complicated multi-part models (#2326) (#2338)
This fixes #2326 and potentially other performance issues when overhang
extra perimeter is turned on for complicated multi-part models.
2023-10-06 22:50:49 +08:00
Noisyfox
b41fdcdc50 Fix issue with overhang-extra-perimeter on complicated multi-part models (#2326) 2023-10-06 22:12:11 +08:00
SoftFever
071ee664b0 Add default Prusa i3 MK3 profiles (#2331)
Add a set of Prusa i3 MK3 default profiles. These are lifted directly
from Prusa Slicer and are the default profiles for the MK3, MK3S AND
MK3S+ in that piece of software.

These defaults are little bit more comprehesive than the single default
profile currently provided by Orca Slicer and should work well out the
box considering they are indeed the offical Prusa profiles.

Please let me know if you have any feedback.
2023-10-06 18:36:02 +08:00
SoftFever
27f2817020 Fix issues 2023-10-06 18:33:27 +08:00
Arran Hobson Sayers
cb59fec7d9 Add default Prusa i3 MK3 profiles 2023-10-05 20:18:18 +01:00
Ocraftyone
ee9f651511 Fix M141 S0 at end of gcode (#2328)
* remove hardcoded set chamber temp gcode

* Revert "remove hardcoded set chamber temp gcode"

This reverts commit 8fc1f4a38113087a8fb11901981ca8c9cfdf7777.

* disable heated chamber only if chamber is used/defined
2023-10-05 22:02:15 +08:00
Ocraftyone
709504a2d1 toggle visibility of ironing_pattern on selection of ironing type (#2321)
* toggle visibility of ironing_pattern on selection of ironing type

* add a tooltip to ironing_pattern
2023-10-05 20:14:53 +08:00
Noisyfox
cf8052cbfd Fix crash when use adaptive cubic sparse infill (#2315) (#2318) 2023-10-05 20:13:22 +08:00
Ocraftyone
a523979ac3 add ironing angle (#2320) 2023-10-04 22:48:35 +08:00
Noisyfox
d31ca04720 Show both layer time and tick info when tick is highlighted (#2312)
* Show both layer time and tick info when tick is highlighted

* Use previous layer's complete time as current layer's tick time
2023-10-04 22:45:40 +08:00
Noisyfox
8e70081879 Fix issue that the slice button is still disabled after a tick is deleted (#2308)
Fix an UAF which causes the slice button being disabled after a tick is deleted
2023-10-04 00:03:19 +08:00
Noisyfox
85e24e62fa Show estimated print time in the ruler (#2305)
* Calculate tick by mouse hover position

* Draw hover tick

* Show hover layer time

* Make sure hovered tick get updated immediately
2023-10-04 00:02:26 +08:00
Heiko Liebscher
328543c49f fix german for dev 1.8 version (#2307)
fix german for new version
2023-10-04 00:00:17 +08:00
Noisyfox
03fec0841b Fix macos deps build (#2291) 2023-10-03 23:27:33 +08:00
Ioannis Giannakas
466538e44e Inner-Outer-Inner mode - additional fix where an external perimeter is shared between multiple islands in the same ordered_extrusions perimeter list (#2276)
* Updated inner outer inner algorithm

* debug msg

* Revert "debug msg"

This reverts commit 32ce6f2096.

* Update PerimeterGenerator.cpp

* Revert "Update PerimeterGenerator.cpp"

This reverts commit 26c56912f8.
2023-10-03 23:22:33 +08:00
renemosner
782d8c5186 Czech translation update (#2274)
* Czech translation update

* Czech translation update

* Update OrcaSlicer_cs.po
2023-10-03 23:13:34 +08:00
SoftFever
4cb84b6c73 Fix during_print_exhaust_fan_speed_num error 2023-10-03 23:05:55 +08:00
SoftFever
df931bd467 Hide elefant_foot_compensation_layers if elefant_foot_compensation is not enabled. 2023-09-30 18:48:55 +08:00
Ian Bassi
232194d749 Fixed some wrong Ender 3 parameters (#2264)
* Correct Ender3 values

Maximun Height real is 250mm
Ender 3  screen is not capable to display Thumnails added "" thumnail to avoid large gcodes files.

* Adjusted height to rod / lid

Ender 3 = 25
2023-09-30 18:15:02 +08:00
bitingsock
bda8249e06 Add elephant foot compensation over multiple layers (#2254)
#https://github.com/prusa3d/PrusaSlicer/pull/10976

Co-authored-by: Roberto Mozzicato <bitblasters@gmail.com>
2023-09-30 18:12:12 +08:00
SoftFever
3b5f42cf49 Fix XCode 15 build errors and bump version to 1.8.0 2023-09-30 10:32:15 +08:00
SoftFever
bef3c75458 Update and fix locales 2023-09-30 10:28:36 +08:00
Noisyfox
d4e6b4fe47 Hide bambu-specific calibration tab for non-bambu printers (#2197) (#2259)
* Hide bambu-specific calibration tab for non-bambu printers (#2197)

* Hide Calibration tab only

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-09-30 10:03:13 +08:00
SoftFever
d6c4c4b46b fix crashes
Signed-off-by: SoftFever <softfeverever@gmail.com>
2023-09-30 09:52:20 +08:00
SoftFever
59bab91da9 Merge branch 'merge-upstream'
Signed-off-by: SoftFever <softfeverever@gmail.com>

# Conflicts:
#	src/libslic3r/Preset.cpp
#	src/libslic3r/PrintConfig.cpp
#	src/libslic3r/PrintConfig.hpp
2023-09-30 09:51:56 +08:00
Musicdad12
62036c411a Merge branch 'main' of https://github.com/Musicdad12/OrcaSlicer 2023-09-29 11:04:30 -05:00
niklasb
7a7187f9ed Add: option to setup a cost per hour per printer #571 (#2247) 2023-09-29 23:44:05 +08:00
ablegods
ca138794d9 Add TW localization in text.js (#2251)
add TW string in  text.js
2023-09-29 23:40:29 +08:00
Noisyfox
761db8537e Update error message to make it a bit more informative (#2249) 2023-09-29 23:39:58 +08:00
Noisyfox
ee0e6a7227 Port "Extend sparse infill" from Prusa (#2134)
* Remove BambuLab's implementation of solid infill bridging enhancement
, will use Prusa's instead

* Port "Extend sparse infill" from Prusa

* Improve anchoring by shifting the lines half-spacing

* Add missing fill patterns

* Improve anchoring by keeping fine details

* Make sure the opposite directions do not cancel each other

---------

Co-authored-by: Pavel Mikus <pavel.mikus.mail@seznam.cz>
2023-09-29 23:39:12 +08:00
SoftFever
4fd2177625 fix errors
Signed-off-by: SoftFever <softfeverever@gmail.com>
2023-09-29 19:47:13 +08:00
SoftFever
b8172316b8 Merge branch 'v1.7.2-remote'
Signed-off-by: SoftFever <softfeverever@gmail.com>

# Conflicts:
#	deps/ZLIB/ZLIB.cmake
#	localization/i18n/OrcaSlicer.pot
#	localization/i18n/de/OrcaSlicer_de.po
#	localization/i18n/en/OrcaSlicer_en.po
#	localization/i18n/es/OrcaSlicer_es.po
#	localization/i18n/fr/OrcaSlicer_fr.po
#	localization/i18n/hu/OrcaSlicer_hu.po
#	localization/i18n/it/OrcaSlicer_it.po
#	localization/i18n/ja/OrcaSlicer_ja.po
#	localization/i18n/ko/OrcaSlicer_ko.po
#	localization/i18n/list.txt
#	localization/i18n/nl/OrcaSlicer_nl.po
#	localization/i18n/sv/OrcaSlicer_sv.po
#	localization/i18n/zh_cn/OrcaSlicer_zh_CN.po
#	resources/calib/PressureAdvance/pa_pattern.3mf
#	resources/handy_models/Disc.stl
#	resources/i18n/de/BambuStudio.mo
#	resources/i18n/en/BambuStudio.mo
#	resources/i18n/es/BambuStudio.mo
#	resources/i18n/fr/BambuStudio.mo
#	resources/i18n/hu/BambuStudio.mo
#	resources/i18n/it/BambuStudio.mo
#	resources/i18n/ja/BambuStudio.mo
#	resources/i18n/ko/BambuStudio.mo
#	resources/i18n/nl/BambuStudio.mo
#	resources/i18n/sv/BambuStudio.mo
#	resources/i18n/zh_cn/BambuStudio.mo
#	resources/profiles/Anycubic.json
#	resources/profiles/Anycubic/machine/Anycubic Kobra 2 0.4 nozzle.json
#	resources/profiles/BBL.json
#	resources/profiles/BBL/filament/Bambu ASA @BBL X1C 0.2 nozzle.json
#	resources/profiles/BBL/filament/Bambu ASA @BBL X1C 0.4 nozzle.json
#	resources/profiles/BBL/filament/Bambu ASA @BBL X1C.json
#	resources/profiles/BBL/filament/Bambu PA-CF @base.json
#	resources/profiles/BBL/filament/Bambu PA6-CF @BBL X1C.json
#	resources/profiles/BBL/filament/Bambu PA6-CF @base.json
#	resources/profiles/BBL/filament/Bambu PETG-CF @BBL X1C.json
#	resources/profiles/BBL/filament/Bambu Support W @BBL X1.json
#	resources/profiles/BBL/filament/Bambu TPU 95A @BBL X1.json
#	resources/profiles/BBL/filament/Generic HIPS @BBL X1C 0.2 nozzle.json
#	resources/profiles/BBL/filament/Generic HIPS @BBL X1C.json
#	resources/profiles/BBL/filament/Generic PA-CF.json
#	resources/profiles/BBL/filament/Generic PC.json
#	resources/profiles/BBL/filament/Generic PETG-CF @BBL X1C.json
#	resources/profiles/BBL/filament/Generic PLA @0.2 nozzle.json
#	resources/profiles/BBL/filament/Generic PLA High Speed @BBL P1P 0.2 nozzle.json
#	resources/profiles/BBL/filament/Generic PLA High Speed @BBL P1P.json
#	resources/profiles/BBL/filament/Generic PLA High Speed @BBL X1C 0.2 nozzle.json
#	resources/profiles/BBL/filament/Generic PLA High Speed @BBL X1C.json
#	resources/profiles/BBL/filament/Generic PLA-CF.json
#	resources/profiles/BBL/filament/Generic PLA.json
#	resources/profiles/BBL/filament/Generic TPU.json
#	resources/profiles/BBL/filament/Overture Matte PLA @BBL P1P 0.2 nozzle.json
#	resources/profiles/BBL/filament/Overture Matte PLA @BBL P1P.json
#	resources/profiles/BBL/filament/Overture Matte PLA @BBL X1.json
#	resources/profiles/BBL/filament/Overture Matte PLA @BBL X1C 0.2 nozzle.json
#	resources/profiles/BBL/filament/Overture Matte PLA @BBL X1C.json
#	resources/profiles/BBL/filament/Overture Matte PLA @base.json
#	resources/profiles/BBL/filament/Overture PLA @BBL P1P 0.2 nozzle.json
#	resources/profiles/BBL/filament/Overture PLA @BBL P1P.json
#	resources/profiles/BBL/filament/Overture PLA @BBL X1.json
#	resources/profiles/BBL/filament/Overture PLA @BBL X1C 0.2 nozzle.json
#	resources/profiles/BBL/filament/Overture PLA @BBL X1C.json
#	resources/profiles/BBL/filament/Overture PLA @base.json
#	resources/profiles/BBL/filament/P1P/Bambu TPU 95A @BBL P1P.json
#	resources/profiles/BBL/filament/P1P/Generic PLA @BBL P1P 0.2 nozzle.json
#	resources/profiles/BBL/filament/P1P/Generic TPU @BBL P1P.json
#	resources/profiles/BBL/filament/P1P/eSUN PLA+ @BBL P1P 0.2 nozzle.json
#	resources/profiles/BBL/filament/P1P/eSUN PLA+ @BBL P1P.json
#	resources/profiles/BBL/filament/PolyLite ABS @BBL P1P 0.2 nozzle.json
#	resources/profiles/BBL/filament/PolyLite ABS @BBL P1P.json
#	resources/profiles/BBL/filament/PolyLite ABS @BBL X1C 0.2 nozzle.json
#	resources/profiles/BBL/filament/PolyLite ABS @BBL X1C.json
#	resources/profiles/BBL/filament/PolyLite ABS @base.json
#	resources/profiles/BBL/filament/PolyLite ASA @BBL P1P 0.2 nozzle.json
#	resources/profiles/BBL/filament/PolyLite ASA @BBL P1P.json
#	resources/profiles/BBL/filament/PolyLite ASA @BBL X1C 0.2 nozzle.json
#	resources/profiles/BBL/filament/PolyLite ASA @BBL X1C.json
#	resources/profiles/BBL/filament/PolyLite ASA @base.json
#	resources/profiles/BBL/filament/PolyLite PETG @BBL P1P 0.2 nozzle.json
#	resources/profiles/BBL/filament/PolyLite PETG @BBL P1P.json
#	resources/profiles/BBL/filament/PolyLite PETG @BBL X1C 0.2 nozzle.json
#	resources/profiles/BBL/filament/PolyLite PETG @BBL X1C.json
#	resources/profiles/BBL/filament/PolyLite PETG @base.json
#	resources/profiles/BBL/filament/PolyLite PLA @BBL X1.json
#	resources/profiles/BBL/filament/PolyTerra PLA @BBL X1.json
#	resources/profiles/BBL/filament/eSUN PLA+ @BBL X1.json
#	resources/profiles/BBL/filament/eSUN PLA+ @BBL X1C 0.2 nozzle.json
#	resources/profiles/BBL/filament/eSUN PLA+ @BBL X1C.json
#	resources/profiles/BBL/machine/Bambu Lab P1P 0.2 nozzle.json
#	resources/profiles/BBL/machine/Bambu Lab P1P 0.4 nozzle.json
#	resources/profiles/BBL/machine/Bambu Lab P1P 0.6 nozzle.json
#	resources/profiles/BBL/machine/Bambu Lab P1P 0.8 nozzle.json
#	resources/profiles/BBL/machine/Bambu Lab P1S 0.2 nozzle.json
#	resources/profiles/BBL/machine/Bambu Lab P1S 0.4 nozzle.json
#	resources/profiles/BBL/machine/Bambu Lab P1S 0.6 nozzle.json
#	resources/profiles/BBL/machine/Bambu Lab P1S 0.8 nozzle.json
#	resources/profiles/BBL/machine/Bambu Lab X1 0.2 nozzle.json
#	resources/profiles/BBL/machine/Bambu Lab X1 0.4 nozzle.json
#	resources/profiles/BBL/machine/Bambu Lab X1 0.6 nozzle.json
#	resources/profiles/BBL/machine/Bambu Lab X1 0.8 nozzle.json
#	resources/profiles/BBL/machine/Bambu Lab X1 Carbon 0.2 nozzle.json
#	resources/profiles/BBL/machine/Bambu Lab X1 Carbon 0.4 nozzle.json
#	resources/profiles/BBL/machine/Bambu Lab X1 Carbon 0.6 nozzle.json
#	resources/profiles/BBL/machine/Bambu Lab X1 Carbon 0.8 nozzle.json
#	resources/profiles/BBL/machine/fdm_bbl_3dp_001_common.json
#	resources/profiles/BBL/process/0.06mm Standard @BBL X1C 0.2 nozzle.json
#	resources/profiles/BBL/process/0.08mm Extra Fine @BBL P1P.json
#	resources/profiles/BBL/process/0.08mm Extra Fine @BBL X1C.json
#	resources/profiles/BBL/process/0.08mm Standard @BBL X1C 0.2 nozzle.json
#	resources/profiles/BBL/process/0.10mm Standard @BBL P1P 0.2 nozzle.json
#	resources/profiles/BBL/process/0.10mm Standard @BBL X1C 0.2 nozzle.json
#	resources/profiles/BBL/process/0.12mm Fine @BBL P1P.json
#	resources/profiles/BBL/process/0.12mm Fine @BBL X1C.json
#	resources/profiles/BBL/process/0.12mm Standard @BBL X1C 0.2 nozzle.json
#	resources/profiles/BBL/process/0.14mm Standard @BBL X1C 0.2 nozzle.json
#	resources/profiles/BBL/process/0.16mm Optimal @BBL P1P.json
#	resources/profiles/BBL/process/0.16mm Optimal @BBL X1C.json
#	resources/profiles/BBL/process/0.18mm Standard @BBL X1C 0.6 nozzle.json
#	resources/profiles/BBL/process/0.20mm Standard @BBL P1P.json
#	resources/profiles/BBL/process/0.20mm Standard @BBL X1C.json
#	resources/profiles/BBL/process/0.20mm Strength @BBL P1P.json
#	resources/profiles/BBL/process/0.20mm Strength @BBL X1C.json
#	resources/profiles/BBL/process/0.24mm Draft @BBL P1P.json
#	resources/profiles/BBL/process/0.24mm Draft @BBL X1C.json
#	resources/profiles/BBL/process/0.24mm Standard @BBL X1C 0.6 nozzle.json
#	resources/profiles/BBL/process/0.24mm Standard @BBL X1C 0.8 nozzle.json
#	resources/profiles/BBL/process/0.28mm Extra Draft @BBL P1P.json
#	resources/profiles/BBL/process/0.28mm Extra Draft @BBL X1C.json
#	resources/profiles/BBL/process/0.30mm Standard @BBL P1P 0.6 nozzle.json
#	resources/profiles/BBL/process/0.30mm Standard @BBL X1 0.6 nozzle.json
#	resources/profiles/BBL/process/0.30mm Standard @BBL X1C 0.6 nozzle.json
#	resources/profiles/BBL/process/0.30mm Strength @BBL X1C 0.6 nozzle.json
#	resources/profiles/BBL/process/0.32mm Standard @BBL X1C 0.8 nozzle.json
#	resources/profiles/BBL/process/0.36mm Standard @BBL X1C 0.6 nozzle.json
#	resources/profiles/BBL/process/0.40mm Standard @BBL P1P 0.8 nozzle.json
#	resources/profiles/BBL/process/0.40mm Standard @BBL X1 0.8 nozzle.json
#	resources/profiles/BBL/process/0.40mm Standard @BBL X1C 0.8 nozzle.json
#	resources/profiles/BBL/process/0.42mm Standard @BBL X1C 0.6 nozzle.json
#	resources/profiles/BBL/process/0.48mm Standard @BBL X1C 0.8 nozzle.json
#	resources/profiles/BBL/process/0.56mm Standard @BBL X1C 0.8 nozzle.json
#	resources/profiles/BBL/process/fdm_process_bbl_common.json
#	resources/profiles/Creality.json
#	resources/profiles/Creality/machine/Creality CR-10 Max 0.4 nozzle.json
#	resources/profiles/Creality/machine/Creality CR-10 V2 0.4 nozzle.json
#	resources/profiles/Creality/machine/Creality CR-6 Max 0.2 nozzle.json
#	resources/profiles/Creality/machine/Creality CR-6 Max 0.4 nozzle.json
#	resources/profiles/Creality/machine/Creality CR-6 Max 0.6 nozzle.json
#	resources/profiles/Creality/machine/Creality CR-6 Max 0.8 nozzle.json
#	resources/profiles/Creality/machine/Creality CR-6 SE 0.2 nozzle.json
#	resources/profiles/Creality/machine/Creality CR-6 SE 0.4 nozzle.json
#	resources/profiles/Creality/machine/Creality CR-6 SE 0.6 nozzle.json
#	resources/profiles/Creality/machine/Creality CR-6 SE 0.8 nozzle.json
#	resources/profiles/Creality/machine/Creality Ender-3 S1 0.4 nozzle.json
#	resources/profiles/Creality/machine/Creality Ender-3 S1 Pro 0.4 nozzle.json
#	resources/profiles/Creality/machine/Creality Ender-5 0.4 nozzle.json
#	resources/profiles/Creality/machine/Creality Ender-5 Plus 0.4 nozzle.json
#	resources/profiles/Creality/machine/Creality Ender-5 S1 0.4 nozzle.json
#	resources/profiles/Creality/machine/Creality Ender-5S 0.4 nozzle.json
#	resources/profiles/Creality/machine/Creality Ender-6 0.4 nozzle.json
#	resources/profiles/Elegoo.json
#	resources/profiles/Elegoo/machine/Elegoo Neptune 0.4 nozzle.json
#	resources/profiles/Elegoo/machine/Elegoo Neptune 2 0.4 nozzle.json
#	resources/profiles/Elegoo/machine/Elegoo Neptune 2D 0.4 nozzle.json
#	resources/profiles/Elegoo/machine/Elegoo Neptune 2S 0.4 nozzle.json
#	resources/profiles/Elegoo/machine/Elegoo Neptune 3 0.4 nozzle.json
#	resources/profiles/Elegoo/machine/Elegoo Neptune 3 Max 0.4 nozzle.json
#	resources/profiles/Elegoo/machine/Elegoo Neptune 3 Plus 0.4 nozzle.json
#	resources/profiles/Elegoo/machine/Elegoo Neptune 3 Pro 0.4 nozzle.json
#	resources/profiles/Elegoo/machine/Elegoo Neptune X 0.4 nozzle.json
#	resources/profiles/Prusa.json
#	resources/profiles/Prusa/machine/Prusa MINI 0.4 nozzle.json
#	resources/profiles/Prusa/machine/Prusa MK3S 0.4 nozzle.json
#	resources/profiles/Qidi/machine/Qidi X-CF Pro 0.4 nozzle.json
#	resources/profiles/Qidi/machine/Qidi X-Max 0.4 nozzle.json
#	resources/profiles/Qidi/machine/Qidi X-Max 3 0.4 nozzle.json
#	resources/profiles/Qidi/machine/Qidi X-Plus 0.4 nozzle.json
#	resources/profiles/Qidi/machine/Qidi X-Plus 3 0.4 nozzle.json
#	resources/profiles/Qidi/machine/Qidi X-Smart 3 0.4 nozzle.json
#	resources/profiles/Tronxy.json
#	resources/profiles/Tronxy/machine/Tronxy X5SA 400 0.4 nozzle.json
#	resources/profiles/Tronxy/process/0.08mm Extra Fine @Tronxy.json
#	resources/profiles/Tronxy/process/0.12mm Fine @Tronxy.json
#	resources/profiles/Tronxy/process/0.15mm Optimal @Tronxy.json
#	resources/profiles/Tronxy/process/0.20mm Standard @Tronxy.json
#	resources/profiles/Tronxy/process/0.24mm Draft @Tronxy.json
#	resources/profiles/Tronxy/process/0.28mm Extra Draft @Tronxy.json
#	resources/profiles/Voxelab/machine/Voxelab Aquila X2 0.4 nozzle.json
#	resources/web/data/text.js
#	src/OrcaSlicer.cpp
#	src/libslic3r/GCode.cpp
#	src/libslic3r/GCode/SeamPlacer.cpp
#	src/libslic3r/GCode/SeamPlacer.hpp
#	src/libslic3r/GCodeWriter.cpp
#	src/libslic3r/GCodeWriter.hpp
#	src/libslic3r/Preset.cpp
#	src/libslic3r/PresetBundle.cpp
#	src/libslic3r/Print.cpp
#	src/libslic3r/PrintConfig.cpp
#	src/libslic3r/PrintConfig.hpp
#	src/libslic3r/TreeSupport.cpp
#	src/libslic3r/calib.cpp
#	src/libslic3r/calib.hpp
#	src/slic3r/GUI/BackgroundSlicingProcess.cpp
#	src/slic3r/GUI/BedShapeDialog.cpp
#	src/slic3r/GUI/ConfigManipulation.cpp
#	src/slic3r/GUI/GUI.cpp
#	src/slic3r/GUI/GUI_App.cpp
#	src/slic3r/GUI/GUI_Factories.cpp
#	src/slic3r/GUI/GUI_ObjectList.cpp
#	src/slic3r/GUI/Jobs/ArrangeJob.cpp
#	src/slic3r/GUI/OptionsGroup.cpp
#	src/slic3r/GUI/PartPlate.cpp
#	src/slic3r/GUI/PartPlate.hpp
#	src/slic3r/GUI/Plater.cpp
#	src/slic3r/GUI/StatusPanel.cpp
#	src/slic3r/GUI/Tab.cpp
#	src/slic3r/GUI/Widgets/AMSControl.hpp
#	version.inc
2023-09-29 19:46:49 +08:00
niklasb
0e785c05e5 Added All Plates Stats Total Cost #1781 (#2238)
Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-09-28 00:13:47 +08:00
Scott Mudge
3433e7bfa0 Fix build warnings on windows, fix various bugs/logic errors/missing returns/etc, update boost::bind (#2229)
Fix build warnings on windows, fix various bugs/logic errors/missing returns/etc, update boost::bind.
2023-09-27 23:55:23 +08:00
ablegods
cba9e79e06 Updated TW translation (#2242) 2023-09-27 21:49:29 +08:00
Ioannis Giannakas
cf846195cc Porting of Pressure Equalizer feature from Prusa Slicer 2.6.x (#2161)
* Overhang perimeter handling

Updated code to handle overhang perimeters as an overhang and not as a bridge.

* Preparing to add curled extrusions identification

* Porting curling calculations from Prusa Slier 2.6.1

* Prototype 1 - slowdown extended to detect curled edges and further reduce speed

First prototype of the code submitted.

* Working prototype - 2

Code is now finally working - external perimeters are slowed down as needed when there is likelyhood of curling up.

ToDo:
1. Reslicing the model causes the algorithm not to run - need to find where this fails to trigger the call for this.
2. Slowdown of internal perimeters not working yet.

* Updated to use overhang wall speed instead of bridging speed for this algorithm

* Fixed bug in speed calculation and tweaked parameters for high speed printer

Fixed bug in speed calculation and tweaked parameters for high speed printer

* Attempting to fix "set started" not being set

* Parameter tweak after print tests

* Fixed estimation not running when model is re-sliced.

* Removing debug printf statements and fixed threading flag.

* Fixed threading

* Parameter tweaks following print tests

* Made this as an option in the GUI

* Reintroduced handling of bridges as per original design

* UI line toggling when option makes sense to be visible.

* Fixed bug in field visibility & made it default to off

* Code optimisation

* Initial commit of code from Prusa Slicer 2.6.1

* Ported ExtrusionRole from Prusa Slicer 2.6.1

* fix compile errors

* Update GCode.hpp

* code changes to invoke pressure equalizer

* attempting to trigger pressure equalizer

(Not compiling)

* Update Fill.cpp

* Update Fill.cpp

* Pressure equaliser layer result update

* Further commits

* Merged PR https://github.com/prusa3d/PrusaSlicer/pull/9622

* First complete working version

* Update PressureEqualizer.cpp

* Implemented parameter in GUI

* Toggle fields according to compatibility

* Updated UI toggles between extrusion rate slope and arc fitting.

* Updated tooltip

* Introduced parameter smoothing segment length

This parameter influences the number of division a line will undergo in response to the requirement to adhere to the extrusion rate flow adjustment.

* Internal parameter and tool tip tweaking

* Parameter and tool tip tweaking

* Updated parameters and tooltip following testing.

* Sync PressureEq with latest PrusaSlicer

* Revert "Sync PressureEq with latest PrusaSlicer"

This reverts commit 131fb94c6b.

---------

Co-authored-by: MGunlogson <MGunlogson@users.noreply.github.com>
Co-authored-by: Vojtech Bubnik <bubnikv@gmail.com>
2023-09-27 21:44:45 +08:00
StdVectorBool
78a8bad6f4 Fix filament diameter for Voxelab Aquila to match Creality Ender 3 (#2241) 2023-09-27 20:32:53 +08:00
mia
ec90d7f3e4 GUI/Field: Fix crash in color picker init (#2220)
wxButton->GetBitmap() may return an invalid wxBitmap.
Guard against this.
2023-09-25 23:38:13 +08:00
mia
3b864e562a GUI: Fix calls to PrintingTaskPanel::show_profile_info (#2219)
These will not compile on STL builds of wxWidgets. I assume that on
the non-STL variants, the first argument is cast to a boolean,
which might be a bug…
2023-09-25 23:37:25 +08:00
mia
ca534b5b96 Fix compatibility with STL builds of wxWidgets (#2218)
This removes the dependency on legacy wxWidgets configurations,
and makes OrcaSlicer compile on STL builds.

Also, the wxStringList class has been obsolete for at least 20
years, and disappeared from the documentation.
Replace with wxArrayString.
2023-09-25 23:35:30 +08:00
Trist0ne
ff992aa650 Comgrow T500 (#2222)
* Initial commit to add the upcoming Comgrow T500

* UPDATE DANG IT

* Added Comgrow machine file

* Updated profiles to be more inline with their Cura profiles

* Corrected Errors in comgrow_common and uploaded a new cover.png

* fixes

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-09-25 23:31:04 +08:00
SoftFever
33f91c026a Hide purge tower preview in case of no tool changes 2023-09-25 23:17:56 +08:00
SoftFever
f06b7cb526 QoL: improve PA Line method
Signed-off-by: SoftFever <softfeverever@gmail.com>
2023-09-25 20:39:02 +08:00
Noisyfox
7ef43f6849 Various support improvements and bugfixes (#2202)
* Organic supports: Added check for variable layer height, with which
Organic supports are not compatible.
Fixes prusa3d/PrusaSlicer#9528 and similar.
Check the object max Z against build volume Z in Print::validate().

Cherry-picked from prusa3d/PrusaSlicer@5b94971

* Fix crash with default tree support

* Show "support_critical_regions_only" only when using auto normal tree supports (#2195)

* Fix organic tree check

---------

Co-authored-by: Vojtech Bubnik <bubnikv@gmail.com>
2023-09-24 22:58:04 +08:00
Andy
e93e517561 Update Russian translation (#2190)
* Updated translation

Updated translation

* update

Russian translation update
2023-09-24 10:10:33 +08:00
Hotsolidinfill
70195b0a76 Update Korean translation (#2187)
update last string
2023-09-24 10:06:43 +08:00
Musicdad12
2b5f7cae49 Wanhao D12/300 Profile
Added Wanhao D12/300 Single Extruder
2023-09-23 15:52:56 -05:00
xun.zhang
5250dc6fa6 ENH:fix travel speed error
jira: STUDIO-3518

Change-Id: I85a2c59ee179b648cc78b088a1d6f6a1a8f821ff
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
2023-09-23 00:48:53 +08:00
lane.wei
269f252b7b ENH: mall: improve the score logic
don't refresh the ratings periodly
JIRA: STUDIO-XXXX

Change-Id: I9023c73a89302e780b2e486d6b96f306fa604c45
2023-09-23 00:48:53 +08:00
xun.zhang
5a4d30a51c ENH: sync A1M speed params to X1
jira:STUDIO-3518

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I1eea0bf579e95b9dc71e19aa3cb76d650e12e460
2023-09-23 00:48:53 +08:00
lane.wei
b8834c59cb FIX: fix the config parse error for some language
JIRA: github-2568
Change-Id: Idd1ccb118dde4d0fe663ee4d1e4426c0e504ff1e
2023-09-23 00:48:53 +08:00
lane.wei
90044523f2 ENH: homepage: refine some text on homepage
JIRA: STUDIO-XXXX
Change-Id: I5dcafb0adb5e33a18fdd0126ece93c87a7e29c8a
2023-09-23 00:48:53 +08:00
gerrit
8f8ce34e2c ci: update build version to 01.07.06.92
Change-Id: I7b909a6147755622300cf4b67ee2cffa847334ee
2023-09-23 00:48:53 +08:00
lane.wei
03f7bcec51 FIX: CLI: refine some logic
1. sometimes the pipe open failed,
add some retry logic;
2. return the reason when no-check=1 while validate fail;
3. return an error when duplicate object under spiral-mode when not using
   by-object print sequence

JIRA: MAK-xxxx
Change-Id: I3792d89dbbe560a8febe0f0154bccb8f573959a5
2023-09-23 00:48:53 +08:00
salt.wei
4d6f012a6d ENH: add more clear limitation in timelapse gcode
This has no any influence on function. Just make
the limitation more clear and easily maintained.

So people can easily see timelapse function is not
supported in i3 printer

JIRA: none

Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I0c88a5a0ce4b7e42117842c9673e1df022fdf618
2023-09-23 00:48:53 +08:00
zhimin.zeng
8eb006c7bf FIX: translate for error message when send calib
Jira: XXXX
Change-Id: Id4d7dc5adc8e070d161acd2440dc51b6fbb41324
2023-09-22 16:21:26 +08:00
gerrit
ffe0cfd876 ci: update build version to 01.07.06.91
Change-Id: Iff54f3fa05b57fda79507915238d6de9fe8a73cd
2023-09-22 16:21:26 +08:00
lane.wei
805248f38a ENH: 3mf: improve some logic
1. skip file including /../
2. use snprintf instead of sprintf

JIRA: jira-xxxx
Change-Id: I6695dc11f9f4af4318038e6db5c219fd14e73aef
2023-09-22 16:21:26 +08:00
xun.zhang
9d12c73aee ENH: update A1 mini start gcode
1.Add extrude calibration compare line

jira: STUDIO-3518

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I81a06627473328e3b7b7e2c5fc508d46a3202373
2023-09-22 16:21:26 +08:00
tao wang
ee9ddbf834 FIX:fixed issue of import french files failing
jira:[model mall]

Change-Id: I4cb9bfc0b75484ed6f1a39845c677260c5616019
2023-09-22 16:21:26 +08:00
zhimin.zeng
3e19a483cb FIX: cali - The progress bar should not be displayed
Jira: XXXX
Change-Id: Ifcd8255bb03141b34bfa420126005955e2f14b32
2023-09-22 16:21:26 +08:00
gerrit
e4ddf0cec1 ci: update build version to 01.07.06.90
Change-Id: I1ac0402b42fee2f60b6237d88fe101a3684b30f3
2023-09-22 16:21:26 +08:00
hu.wang
b4b5128659 FIX:fixed too many times requests for get_subtask
JIRA: STUDIO-4283
Change-Id: Ic15c782b8304d5fefbc78cc76fb32fa5ccf9335b
(cherry picked from commit 957688167f22456c6212cb20f16f4028690869f4)
2023-09-22 16:21:26 +08:00
Arthur
2293b33e73 ENH: do not include brim_max in bed shrink
Including brim_max in bed shrink will make available area of bed be
small when an object has tree support, because this object will have
a brim_width as large as 24mm now.

Jira: MAK-2048
Change-Id: I309c0ec14e4acd75dcfc2fff0e7ea3558b43cc4c
2023-09-22 16:21:26 +08:00
hu.wang
ddc052749c ENH:Don't call the interface when task id is incorrect
JIRA:STUDIO-4322
Change-Id: I6fc1dc7379cba0702927e30cab0aa271074c59da
(cherry picked from commit 109e3570a898706f449ccac7878c50aef2df9f75)
2023-09-22 16:21:26 +08:00
xun.zhang
dfe851c6ba ENH: update A1 mini best object pos
1.Remove duplicate best_object_pos key

jira:STUDIO-3518

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I047f333adfdd65d9ed1920cf5b182226b116fcb9
2023-09-22 16:21:26 +08:00
zhimin.zeng
a1d3823521 FIX: the wipe tower is not generated with a multi-color 3mf
open a multi-color 3mf after another one, the wipe tower is not generated
Jira: 4528

Change-Id: I3b9b67e6a19f6d1b620b5aeca25e32710193574c
2023-09-22 16:21:26 +08:00
chunmao.guo
39da9bab56 FIX: [STUDIO-4522] hide camera url from log
Change-Id: Icfc7e0ce2cbe339fd1973b0b65688da39c05ec76
Jira: STUDIO-4522
2023-09-22 16:21:26 +08:00
xun.zhang
0f4d5d40c7 ENH: update filament&process&machine profiles
jira:STUDIO-3518

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I74ec718c9c40baf8f26df2f593960adf3984ddf1
2023-09-22 16:21:26 +08:00
maosheng.wei
f8fc67c379 FIX: Some translation
Jira: STUDIO-4460

Change-Id: I1fe43a028c86c1008cbae3f0d8908590aaa3cafa
2023-09-22 16:21:26 +08:00
tao wang
89d9e785de ENH:add protection when update task data
jira:[STUDIO-4517]

Change-Id: I183d18a0d9a547328f48a9086548b80bab375b06
2023-09-22 16:21:26 +08:00
tao wang
db26174b47 NEW:the chamber temperature setting cannot be lower than 40
jira:[new]

Change-Id: I1387deb42c60cd9c7bedf115d99f36b0de6f2807
2023-09-22 16:21:26 +08:00
zhimin.zeng
abca2007ab FIX: add log for cali
Jira: XXXX
Change-Id: I4ba755e4700122bd331f8d95ec4b1a09f4b7b5f9
(cherry picked from commit ce2786ffe53aec1a6df1a33e50ec07572da5ad44)
2023-09-22 16:21:26 +08:00
zhimin.zeng
5010994d88 FIX: add log for cali
Jira: XXXX
Change-Id: Ifce2d57d2694c5b39fec93529e6efffa036b8e68
(cherry picked from commit e9ffe4de41096b01f6918eafec5b365360b9cff0)
2023-09-22 16:21:26 +08:00
zhimin.zeng
2870ed90c4 FIX: modify the combo box selection value
Jira: 4529
Change-Id: Icdd3dc86fd3d08de5919edf7b3dfbdf1d8777962
2023-09-22 16:21:26 +08:00
xun.zhang
0120387f26 ENH: optimize A1 mini print estimation time
Update filament load,unload time

jira:STUDIO-3931

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I2b2d85e8b3c352fb036198a31af759ad8fe68439
2023-09-22 16:21:26 +08:00
tao wang
7aba8e5e88 ENH:importing to studio will retry three times
jira:[STUDIO-4223]

Change-Id: If66faa4a21a414d43860ef8aa657562f5ee617b8
(cherry picked from commit 59ca516ba5b8ada15cbb087a814f59f8e3683a51)
2023-09-22 16:21:26 +08:00
gerrit
fab4045723 ci: update build version to 01.07.06.89
Change-Id: I51c8109efea893b98b551d0e4ddefdb673e5d4a7
2023-09-22 16:21:26 +08:00
hu.wang
12c515a5df ENH:N1,send printing pop_up,printing options displayed incorrectly
Sending the printing window, several printing options are displayed in the wrong position

Jira: STUDIO-4045
Change-Id: I5bf5b4295b015020eb38273ed13193d74f43c65d
2023-09-22 16:21:26 +08:00
hu.wang
7b90704d4b ENH:Improving the AMS display of empty disks
It is difficult to distinguish between blank and empty thumbnails, so adding a diagonal line on the empty disk indicates empty

JIRA:STUDIO-4515

Change-Id: I46038c9256fc43927976b82f29ea895ce907d247
2023-09-22 16:21:26 +08:00
gerrit
d2499461f7 ci: update build version to 01.07.06.88
Change-Id: I64d18cf614b495a4fbad6cdd5fbd57e2f41c5433
2023-09-22 16:21:26 +08:00
Arthur
0b4b6cde4f ENH: sync master with auto-arranging and brim
auto-arranging considers wipe tower from smooth timelapse

Change-Id: I5dd72260c777abfd2894776b2588bb3ff4224416
2023-09-22 16:21:26 +08:00
zhimin.zeng
52a52ffc08 FIX: some info is not translated
Change-Id: I6065a478138426c0695e66d15ce8d4bb18a1aa97
2023-09-22 16:21:26 +08:00
maosheng.wei
cb45ffc73a FIX: [MAK-2011 MAK-1988] Fix synchronization issues
Jira: MAK-2011 MAK-1988

Change-Id: I411bd185c8cb9f314b74ca91ad5fa303562ed4e3
2023-09-22 16:21:26 +08:00
Arthur
f2396b839c FIX: cmd line auto arrage for sequential printing not working
min_obj_disance was not set for sequential printing of cmd line.

Jira: None

Change-Id: Idce14aedf8448a0917533efb93f7c78fff34587d
2023-09-22 16:21:26 +08:00
gerrit
6bb51d1cd7 ci: update build version to 01.07.06.87
Change-Id: I5ba9ad4b94e1f4805e88003e7e06303c11811eff
2023-09-22 16:21:26 +08:00
Arthur
d8ba43d979 ENH: improve auto-arranging objects with tree support
We decide to set brim width of all objects to MAX_BRANCH_RADIUS_FIRST_LAYER if there is an object with tree support after discussion.

Jira: MAK-2009
Change-Id: I4c4940800632c433235966b01c44ac910e33a51c
2023-09-22 16:21:26 +08:00
Arthur
37e7b0e234 ENH: translation
Change-Id: I5eaa666073b868637ef6ee4302540375902efa5a
2023-09-22 16:21:26 +08:00
Arthur
793a642bd7 ENH: improve auto-arranging of A1 mini
1. the best object pos of A1 mini is [0.7,0.5] of bed.
2. dominant direction is more accurate (solve the problem that cubes are
not arranged neatly).

Jira: STUDIO-4356

Change-Id: I8931f51a97bee96d5d9e75306481eae2e0cdc059
2023-09-22 16:21:26 +08:00
Arthur
c7e78511f5 FIX: coPoint type couldn't display
This causes the printer setting page unable to display becase I added a
coPoint type option best_object_pos.

Add reading and writing coPoint type configs solves the problem.

Jira: STUDIO-4303

Change-Id: I34e40e567236d28ab1a7be265128275191fcc935
2023-09-22 16:21:26 +08:00
manch1n
7beed5d6dd NEW: add align_to_y_axis option for auto-arrange
1. Add align_to_y_axis option for auto-arrange.
   This is useful for auto-arranging of i3 type printers.
2. Change default value of align_to_origin to true when switching
   from non-i3 printers to i3 printers.

JIRA: STUDIO-2583

Change-Id: I7dabab846022a0da030a9fec060a60a4207537a0
2023-09-22 16:21:26 +08:00
chunmao.guo
e789489ed9 NEW: add best_object_pos for auto-arranging
For i3 printers, best object position may not be the bed center,
we need to align objects to the specified best_object_pos.

Jira: STUDIO-4133

Change-Id: I06e31e597d2dd8288eb24a52d836cc8a134a4111
2023-09-22 16:21:26 +08:00
maosheng.wei
763cff046c FIX: [github #2209 #2246] reload from disk not work
Github: #2209 #2246

Change-Id: I12ab1e08eaeff334315136914f0c20cc2c78fd98
(cherry picked from commit 52add084e65bbbbd4e8b8a6f585632b6afda7d6a)
2023-09-22 16:21:26 +08:00
zhimin.zeng
264f02e8d8 FIX: Adjust error information storage method
Jira: XXXX
Change-Id: If6564f6425678faa2df9b08d9c7642afb7ffbe50
2023-09-22 16:21:26 +08:00
Arthur
cd7437946c FIX: auto arrange may put objects with tree supports too close
Increase the brim width to the max full diameter of tree supports.

Jira: MAK-2009
Change-Id: If44da7107f79eddccca42a54484806269e3fee5c
(cherry picked from commit 8a60e8787d7be1ad147edb78eca7f2259a27927b)
2023-09-22 16:21:26 +08:00
tao wang
fd8672f063 ENH:update chamber temperature display rules
jira:[STUDIO-4485]

Change-Id: Id50faad48a488ab6e31fef0ab0448708356867f7
2023-09-22 16:21:26 +08:00
gerrit
1d761c4a03 ci: update build version to 01.07.06.86
Change-Id: I77254e1c1f9000f10d374efcfbed115652e83395
2023-09-22 16:21:26 +08:00
xun.zhang
b44692cca9 ENH: update X1E start gcode
1.Set extrude temp to 290

jira:STUDIO-3518

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ib2e941aab83a1f36c2361f24c6e940ac4d48cb73
2023-09-22 16:21:26 +08:00
tao wang
cb8dbb912f ENH:display help image when connecting to lan printer
Change-Id: I9a34f998229d5f160623603382f0d43ef1699e27
2023-09-22 16:21:26 +08:00
tao wang
23ee6bc4cd ENH:modify the chamber temperature to float
jira:[new]

Change-Id: Ibd7e71e8d6e7f43767ca754481ac864c73b98057
2023-09-22 16:21:26 +08:00
tao wang
6999b4447e FIX:display vt tray unload steps
jira:[STUDIO-4490]

Change-Id: I8c6037c760b116a99929b0fbaf63fbde5f9bf5ee
2023-09-22 16:21:26 +08:00
Stone Li
268b49f75b NEW: sync translations with localazy
JIRA: STUDIO-3997

Change-Id: I1eea2b67418ceeb0773008154e61cbc2a47ba5a0
Signed-off-by: Stone Li <stone.li@bambulab.com>
2023-09-22 16:21:26 +08:00
Stone Li
623a4b3635 ENH: modify some words for translation
Change-Id: I912b0b13e3603abe483d0cb27f7ff6eea3ee7a3a
Signed-off-by: Stone Li <stone.li@bambulab.com>
2023-09-22 16:21:26 +08:00
maosheng.wei
81f7818a83 ENH: [MAK-1984] show error message when upload failed
Jira: MAK-1984

Change-Id: I89293d3a1136e1764faca3bb9b78412dfb427bd9
2023-09-22 16:21:26 +08:00
gerrit
902d282332 ci: update build version to 01.07.06.85
Change-Id: I0112de0fc56c2599af70171165fc8e08c46d582d
2023-09-22 16:21:26 +08:00
shuai.liu
1e1125b785 FIX: [STUDIO-3921] orientation bug
JIRA: STUDIO-3921
fix the orientation bug that multiple objects does not perform the same
increase num of hull faces to iterate

Change-Id: I9c662e1e7858521585de612d7f1e9cd213e183bb
(cherry picked from commit 7ce0ba3e037f9b2a6d420ab302913753f9ea7544)
2023-09-22 16:21:26 +08:00
zhimin.zeng
cdbbdafc59 FIX: print by object not support timelapse for I3
Jira: XXXX
Change-Id: I8354971843f1e020db0f6407348cfa220ad514f2
2023-09-22 16:21:26 +08:00
gerrit
66d0f8ff71 ci: update build version to 01.07.06.84
Change-Id: I7dea089b580bcae766d8350ddcf07b6161b27342
2023-09-22 16:21:26 +08:00
gerrit
acc574f798 ci: update build version to 01.07.06.83
Change-Id: Iee753fb65c0aaca05096071337f28d3e1092e0a8
2023-09-22 16:21:26 +08:00
lane.wei
85ea716961 FIX: CLI: fix the png decoding error
JIRA: MAK-xxxx(no jira currently)

Change-Id: Id99511355cec7a51cafd5254f308c60a7ac1f57d
2023-09-22 16:21:26 +08:00
liz.li
1b12dae4c7 ENH: increase the warning level of which blocking cloud slice
Jira: STUDIO-4457

Change-Id: I9a3be983cd5c585ed498829482e6b2202f4d5717
2023-09-22 16:21:26 +08:00
xun.zhang
50051b82d1 ENH: modify tooltip in chamber temp
Also remove bed_temperature_difference in config

jira: STUDIO-4197
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Id992bf0a6b5496038d513a6243b54c5232113515
(cherry picked from commit bda89606a36f3629ad1e1721e005242911635cbd)
2023-09-22 16:21:26 +08:00
xun.zhang
e1cc765f6e ENH: change bbl machines hot end model
jira: STUDIO-3518

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ib5a0dad8fdd77f4063329a37b8f0c61932c66308
2023-09-22 16:21:26 +08:00
hu.wang
f9aa9d02a7 FIX:Translation of calibration and print options
Change-Id: Ifd9b64a793ae5033b6ee411089bbf5428870e7fd
2023-09-22 16:21:26 +08:00
tao wang
861d757ba4 NEW:Add config for C13
Change-Id: Ic5e034349a78d7e2aca28416a0c3334ca9385f20
2023-09-22 16:21:26 +08:00
tao wang
b31b7c7727 FIX:fixed the issue of IP changes
jira:[fix]

Change-Id: Iff87825ae92effa5a4e473d7282c172c6871c0cf
(cherry picked from commit 6ba6637b34233c3bcc97e218ca8b426d66f989b0)
2023-09-22 16:21:26 +08:00
tao wang
ecf1ff52b5 FIX:fixed some C13 features that are not supported
jira:STUDIO-4302 STUDIO-4301 STUDIO-4299

Change-Id: Icbf771e49341291e10b3a2465f92eddefd758598
(cherry picked from commit 1010b56eeeb30b78db17ee20d1682b2d56271f5b)
2023-09-22 16:21:26 +08:00
tao wang
685624a1ef ENH:updaite the target temperature for chamber
jira:[new]

Change-Id: Ifb16608b1de807bcecd58fbff9f64dea905c0b26
(cherry picked from commit ac0c2400349f4551aa6c913d30b4c750e68f781f)
2023-09-22 16:21:26 +08:00
tao wang
5ec0a28d05 NEW:Use new command for chamber temperature settings
jira:[STUDIO-4296]

Change-Id: Ic70a6f6dc412cde7f6d9d6361f8646df59df56b9
(cherry picked from commit c504fefc684bdd29f3ef28d75393a73a0170b075)
2023-09-22 16:21:26 +08:00
tao wang
3e6234284c FIX:support C13 to open AMS mapping popup window
Change-Id: I8b1028068dd93f241eae05a57a685021963d7b1f
(cherry picked from commit 2fe58689a43718c7f086ab40dbc22a8d590d96a3)
2023-09-22 16:21:26 +08:00
zhimin.zeng
527c11067f FIX: support cali for X1E printer type
Change-Id: I977af6804bbe5667c1534d50c880c216ac05accf
(cherry picked from commit 7a8e3a14a1998023639ddbb2ebde3c40559c50ea)
2023-09-22 16:21:26 +08:00
shuai.liu
b9cc020fea ENH: auto adapt distance in arrangement
JIRA: STUDIO-4408
1. if min_obj_distance is 0, use auto mode
2. normal support, 5mm gap, tree support, 22mm gap, no support, 0.1mm
   gap

Change-Id: I906ccf267bef1f33a946572614d658fd50cfcda3
(cherry picked from commit 3c65150434c9938442b0c8d7995f21bb5e50db89)
2023-09-22 16:21:26 +08:00
xun.zhang
6574a0fec4 ENH: fix full_label problem in chamber temp
STUIDO:3518

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Id714e518fdc8fb15dfd64046afb4806ea95a31ba
2023-09-22 16:21:26 +08:00
xun.zhang
58658ebcb5 ENH: optimize exhaust fan param display
1.Optimize exhaust fan param display
2.Set max chamber temp to 60

jira:STUDIO-3518

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I0663803381f38f717554da4aefc61e02a8c1f37e
2023-09-22 16:21:26 +08:00
xun.zhang
60bb7309ac ENH: disable edit support chamber temp
jira:STUDIO-4230

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I4873badacc5d3947f56df1ea367481ddae748fff
2023-09-22 16:21:26 +08:00
xun.zhang
5a39eca04b FIX: optimize exhaust fan ui logic
1. Enable open support_activate_air_filtration
2. Fix display exhaust fan params when support_activate_air_filtration is closed

jira:STUDIO-4230

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ieddba4bb104b6068b5afb4c109ea6b90d7c4045b
2023-09-22 16:21:26 +08:00
xun.zhang
13bb1552aa ENH: add protection for chamber temperature
As title. Also add time for waiting chamber temp in printing time

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I8054080d2e8821e421a6d03222b8b25365b5977f
2023-09-22 16:21:26 +08:00
xun.zhang
b16fc2a38b ENH: update X1E upward machines
1.Add X1C to X1E upward_compatible_machine

jira: STUDIO-3518

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ib358f6102809a3baf9f23a677a2c5746848f933e
2023-09-22 16:21:26 +08:00
xun.zhang
2403ed3221 ENH: update default exhaust fan speed
Also update BBL profile version

jira:STUDIO-3518

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ie527758a2507c4b8a36f2663116eb406041550e7
2023-09-22 16:21:26 +08:00
xun.zhang
6eb3dcfd7b ENH: update X1E start gcode
jira:STUDIO-3518

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Iecf60753d05bb1ee79a01d1dd69f4a0755a0634d
2023-09-22 16:21:26 +08:00
xun.zhang
2d40511488 ENH: add filament PPA-GF
1.Add filament Generic PPA-GF
2.Set Generic PPA-CF filament type to PPA-CF

jira: STUDIO-3518

Change-Id: I1b81bca3774944aebdf15f88213fcb9b36b93e41
2023-09-22 16:21:26 +08:00
xun.zhang
596fcb0f69 ENH: add filement type pps-cf
jira: STUDIO-3518

Change-Id: Ifebaa96ca2e8336bf5449d7c9bd053ab00ab8041
2023-09-22 16:21:26 +08:00
xun.zhang
7d834e459c ENH: set default chamber temp for missing filaments
jira: STUDIO-3518

Change-Id: Iaf947fe5a145884812eb15037458df3b83a338ab
2023-09-22 16:21:26 +08:00
wenjie.guo
4d93034c93 FIX: Change z hop height from 0.2mm to 0.4mm
Models with overhanging areas are easily knocked down with Z hop height
at 0.2mm
Github: None
Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: I65fa14fe5f217c2d1384569efa8c2233c14dde83
2023-09-22 16:21:26 +08:00
xun.zhang
e0c3722c74 ENH: update X1E machine cover
jira:STUDIO-4189

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I9819adfd3a7bf7809299e7c3d99c4daca0fd34e0
2023-09-22 16:21:26 +08:00
xun.zhang
2ad89cf8c8 ENH:update profiles
jira:STUDIO-4037

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: If6863a91d3c82ca70eb584b7db025a2ba3f09434
2023-09-22 16:21:26 +08:00
xun.zhang
eef4d95e9c ENH: add more process profiles for X1E
jira:STUDIO-4232

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I5674ea5bb7e667a19a01e78db6b55bac72983781
2023-09-22 16:21:26 +08:00
xun.zhang
a37c6647cc FIX: add compatible printers in PolyLite PETG
jira:STUDIO-4222

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I21b58f21680676e3c5e43a6de8b137db2447fd0a
2023-09-22 16:21:26 +08:00
xun.zhang
c3c6cc5e45 ENH: re add Generic PLA High Speed
jira:STUDIO-4205

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ib5d17e2126a883151afd8e7a6172414c331435a8
2023-09-22 16:21:26 +08:00
xun.zhang
43486bd4b2 ENH: fix placeholder error in X1E start gcode
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ifbdaba7d5897a44bda1c7ac69ebaf6ef4654814b
2023-09-22 16:21:26 +08:00
xun.zhang
802865a92c ENH: update chamber temp settings for X1E
1. Dont open chamber temp for ASA,ABS

jira:STUDIO-4184

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I774708e8f4685dee2c3a4e8ada163d320f2bd3d3
2023-09-22 16:21:26 +08:00
xun.zhang
6e2abd69f1 ENH: add basic cover for X1E
jira:STUDIO-4189

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ic170ac5d609d169d849ccb3067383f5aed1bf0a1
2023-09-22 16:21:26 +08:00
xun.zhang
9fc0e74008 ENH: add printer structure in config
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I78969725c8b9984872e57fd2da476b9417cc1df7
2023-09-22 16:21:26 +08:00
xun.zhang
24cb5a21e4 FIX: use extruder list to decide chamber temp
As title.Use the same way to decide exhaust fan.
Removes end print exhaust fan control.

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I4353be3a1a9cbdfc3c1943ee447bac349b5177e9
2023-09-22 16:21:26 +08:00
xun.zhang
08d8d2ba74 ENH: lower filament max volumetric speed for petg
Lower max volumetric speed for polyLite petg

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I4fe29c227e027132085fc67431a14f6b8ad07fd8
2023-09-22 16:21:26 +08:00
xun.zhang
7840f5d858 ENH: Sync X1E presets from the master branch.
Also sort the filaments and remove duplicated keys

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I31678c42d55ba3d77c743eaeff071849a8f3d0e7
2023-09-22 16:21:26 +08:00
tao wang
b048992715 ENH:synced some N1 codes
jira:[sync]

Change-Id: I94aed7f068e76cb28459ec77448c89f922134414
2023-09-22 16:21:26 +08:00
wenjie.guo
95a235ee8a FIX: Different default Z hop upper boundary for different machines.
Github: #77
Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: I8065a2ea57496b5f415e591225877ba773fdb9f6
(cherry picked from commit 6fb7e1084caf9006d504c24ce1f026e475bcb348)
2023-09-22 16:21:26 +08:00
七喜
3ae2a6f176 Revert "FIX: korean font display issue"
This reverts commit 9c54bb7897352376b90da1e44d93a665746b8a2d.

Reason for revert: the korean translation is not supported on this branch

Change-Id: I8a35760f623ec8f9b3143675a3b041e7b6b05d40
2023-09-22 16:21:26 +08:00
liz.li
3cc423c191 NEW: re-add printable_area config
Jira: STUDIO-4052

Change-Id: I31d1bbeba3adaf612bbef5e90d1be182c629e212
2023-09-22 16:21:26 +08:00
xun.zhang
05a9eba217 ENH: add more process profiles for A1 mini
1.Add different profiles for different layer height to A1 mini

jira:STUDIO-3518

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I7bc2a13b36a8beb576a739db8170edb23f068d81
2023-09-22 16:21:26 +08:00
tao wang
d631a672ab ENH:update base64 conversion method
jira:[for model mall]

Change-Id: Ia609ae4a559e0e2711e37db32738c057e8a8a33a
2023-09-22 16:21:26 +08:00
tao wang
01f4948e88 NEW:add a prompt after importing
jira:[for model mall import]

Change-Id: Ie9b418242f5e30dbd034c10aea0fd9735fb0717e
2023-09-22 16:21:26 +08:00
liz.li
5927b5f87a FIX: korean font display issue
Jira: STUDIO-3995

Change-Id: If92b05c1a38041f976fc5a5823feb674549c4993
2023-09-22 16:21:26 +08:00
zhimin.zeng
f964842d8f FIX: filament override is not correct
Multiple filament slots does not change the actual filament settings
Jira: 3797

Change-Id: Ib377b4c79aae731caa97b408e84a87a33b3bb155
(cherry picked from commit 7d704d8f0bae14f16087c77c1bd90946632330a6)
(cherry picked from commit 43e8956a1ffc9e2afbc82fdb77565f0543ac8a68)
2023-09-22 16:21:26 +08:00
zhimin.zeng
4c2754f4ee FIX: revert "Disable i3 traditional timelapse"
Jira: XXXX
Change-Id: I5ab7ce8e39787149c16983607e2bd1330f4d6ea0
2023-09-22 16:21:26 +08:00
Michael Birkler
d9a3d9d7d8 ENH: add the Tronxy profiles from community
this patch is cherry-picked from OrcaSlicer
Thanks Michael Birkler for adding Tronxy profiles

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I3aab8d5e9c03f6632bdde292f91232392eaf7cf7
2023-09-22 16:21:26 +08:00
zhimin.zeng
05d7283c6a FIX: translate for cali
Jira: XXXX
Change-Id: I4da68f0ae03cbb126f51c96dab8af622b5b9a985
2023-09-22 16:21:26 +08:00
zhimin.zeng
7572bd9804 FIX: crash when import svg
Jira: 4084
Change-Id: Ib81631615208b0c884c5ce36211841292c2e3ea3
2023-09-22 16:21:26 +08:00
xun.zhang
e0ec57eb16 ENH: update A1 mini gcode
1.G39.2 G392
2.update change filament gcode

jira:STUDIO-3518

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I2bb8ccf5ae92e229e4b36bf0a50ae8cd642d14fd
2023-09-22 16:21:26 +08:00
zhimin.zeng
aa1c8c8fe2 ENH: Add Ellis' pattern method for flow dynamic calibration
Github: #2356

Change-Id: I05068bd47fa8381429064ea0e5ba0f38e5da17c1
(cherry picked from commit c5d54d26e32909e1785cef9ba6a07d801419fa98)
2023-09-22 16:21:26 +08:00
gerrit
2f8f2642f6 ci: update build version to 01.07.06.82
Change-Id: Ie781fb87cfba6a34f142772245b0e0577955ad4a
2023-09-22 16:21:26 +08:00
战马
30bc6fbb9a FIX: Revert "[STUDIO-3361] hide model mall"
This reverts commit a6dfd79ea40e16a4942971ee8c5a0000a0b749d7.

Reason for revert: not master

Change-Id: If3e14e6f42bc05cdce610a1beb65c592fbb998fd
(cherry picked from commit 6fe189b233491b3700cdcc9a3c1d54d30754d06e)
2023-09-22 16:21:26 +08:00
lane.wei
f20a1932ee ENH: Params: set the value of P1P/P1S to the same value of X1C
JIRA: no jira
Change-Id: I51f0dce20b128319478176c5dce3d47aacf5ab35
2023-09-22 16:21:26 +08:00
zhimin.zeng
72ed42869b FIX: translate for timelapse
Change-Id: I786b3ed8613430f13c70f8acb0ca2c14c28cdd35
2023-09-22 16:21:26 +08:00
gerrit
df8f6826c3 ci: update build version to 01.07.06.81
Change-Id: I4febd49f806c17df4acf93acadefd6762f156a75
2023-09-22 16:21:26 +08:00
wenjie.guo
1bb0feda44 FIX: The Chinese translation of Z hop boundaries.
The Chinese translation of Z hop lower boundary and Z hop upper
boundary for github/01.01.00.08 branch.
Github: #77

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: I308daa5d348c9d34e26914d56a489687357b7172
2023-09-22 16:21:26 +08:00
zhimin.zeng
ee1ea1c1b9 FIX: spiral vase not support timelapse for i3 structure
Jira: XXXX
Change-Id: I2dd5c285c4d687d72a2dfcf94d0ff75a4d5dd498
2023-09-22 16:21:26 +08:00
zhimin.zeng
af241d4c5a FIX: report warning when uncheck timelapse for i3
Jira: 4338
Change-Id: Ia66676c25f2fa6a111e3e864a7b25989beaaf59b
2023-09-22 16:21:26 +08:00
salt.wei
3119fa03c0 ENH: fix collision of timelaps gcode when by object
Z height after timelaps gcode is changed. Should get
the new z height and save into gcode writer.

Jira: none, bug is found by self-test

Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I25516def507782600f0f270a339c88ea01a472a3
2023-09-22 16:21:26 +08:00
zhimin.zeng
1b281bfb9f ENH: modify A1 structure config for traditional timelapse
Jira: 3935

Change-Id: I833c8a48e81364ce35a2685694fd3d92868fdb84
2023-09-22 16:21:26 +08:00
zhimin.zeng
433a48cd00 ENH: support traditional timelapse for i3 structure
Jira: 3935
Change-Id: I38a270f7d9060ea1b271c69fd0d427205817e705
(cherry picked from commit 3f50b94adef5e48b169ad72e777135389d0e4ebf)
2023-09-22 16:21:26 +08:00
Stone Li
dcf3e736fe ENH: add anti-Aliasing when generating small thumbnail
JIRA: STUDIO-4374

Change-Id: I9bd9cadd1b3b226d1679a00d5a129c4ed9cb1828
Signed-off-by: Stone Li <stone.li@bambulab.com>
2023-09-22 16:21:26 +08:00
xun.zhang
f968c152c2 ENH: sync to A1 mini profiles
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Idf0414a43bedcd970811d87b40ee3e2063e4e5c6
2023-09-22 16:21:26 +08:00
xun.zhang
fe545e3b36 ENH: set skirt_distance maximum value to 50
Github:2318

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I538d48321552b110d6fe2949c3202077f788da41
2023-09-22 16:21:26 +08:00
slynn1324
105eda5238 ENH: support thumbnail in gcode for 3rd printers
Thanks @slynn1324
1. Add thumbnail size in printer params page
2. Optimize writing thumbnail data in gcode

jira:STUDIO-3942
Github: #2166
Github pull request: #2333

Change-Id: I6897cfddfa6a1b0c95decf67329a486d40ec0cc2
2023-09-22 16:21:26 +08:00
xun.zhang
d01a94c9f7 ENH: add printer structure in code
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I57c24a0ea977b510932970817d67570ab3fe7bc4
2023-09-22 16:21:26 +08:00
Arthur
d9101bc104 ENH: add placeholder first_layer_center_no_wipe_tower
This placeholder can be used for smooth timelapse of i3 type printers.

Change-Id: I953a437a7733835d850812565ff5f31b83292912
(cherry picked from commit 5d5b528541490a9ef762fdad6590b6cddeee2a5b)
2023-09-22 16:21:26 +08:00
zhimin.zeng
489fb85927 FIX: The calibration temp of the temp tower is incorrect
Jira: 4382
Change-Id: Ib44f4e0e9309b89a3e6364541d775b30ca4c6d70
2023-09-22 16:21:26 +08:00
chunmao.guo
48d96e8e89 FIX: [STUDIO-4347] fix local liveview test condition
Change-Id: I524a4f5a7762c390aa5097f1ef8b6a95a2687c83
Jira: STUDIO-4347
(cherry picked from commit 7624c1f04d92019e8f62b61ab0430ebb7a8570f8)
2023-09-22 16:21:26 +08:00
Stone Li
1f50a2a421 NEW: support wait function in print job
JIRA: STUDIO-4175

Change-Id: I15bdd07dcd2bd153cc94ad411f180c8ab2022ceb
Signed-off-by: Stone Li <stone.li@bambulab.com>
2023-09-22 16:21:26 +08:00
Stone Li
c09252ce11 NEW: update bambu network header and version
Change-Id: I10c40cf579dd7d400c14103d2ac6f0ac338edf6e
2023-09-22 16:21:26 +08:00
lane.wei
0a064e980b ENH: deps: update some import libraries
1. update openssl to 3.1
2. update zlib to 1.2.13
3. update expat to 2.5

Change-Id: I46ac38f8e5acab4abae42645a56eec7d9381865e
(cherry picked from commit 34013820d325c41e1514d0f334f3c2be53145852)
2023-09-22 16:21:26 +08:00
tao wang
50f9edec5c FIX:fixed studio crash caused by HTTP request blocking
jira:[STUDIO-3849]

Change-Id: I6348af96014e80da6b720da48239fed262f0f3c5
(cherry picked from commit 87c996c15db0bd7b1ce075004605490fdeb1f979)
2023-09-22 16:21:26 +08:00
Stone Li
061a2cdb7e ENH: do not change ip when connection name is different
JIRA: STUDIO-4072

Change-Id: I6e72f894fa5eca91d5bbbfaca3e897be95c305e0
Signed-off-by: Stone Li <stone.li@bambulab.com>
(cherry picked from commit 15075195334a2e42097f3542402e1f889f480d3b)
2023-09-22 16:21:26 +08:00
Stone Li
be53cf4c7a NEW: support to display wired network for printer
JIRA: STUDIO-3519

Change-Id: I1c32254e249a3c0010973b17953121f4aa718f76
Signed-off-by: Stone Li <stone.li@bambulab.com>
2023-09-22 16:21:26 +08:00
lane.wei
29bdbf891c FIX: CLI: disable wipe tower under sequent-print mode
JIRA: STUDIO-4409
Change-Id: I7a3552180a31613244afeebdfcd9bc6b4d8b13b5
2023-09-22 16:21:26 +08:00
lane.wei
e76be77cfc ENH: 3mf: refine the rels to correct link
JIRA: STUDIO-4231
Change-Id: I02ff6343124ef2ea3642e5799469249538a4b97f
(cherry picked from commit 781793a4c84b3e8a01f38d990d34bee9add8850a)
2023-09-22 16:21:26 +08:00
maosheng.wei
bf8afa9889 FIX: [STUDIO-3743] 3mf consistence correction
Jira: 3743

Change-Id: I65d868753c380d5399c743d101668ef013549a38
(cherry picked from commit 0b87e3257a0c2806680768e152e2d35b322099a3)
2023-09-22 16:21:26 +08:00
zhou.xu
754085734e FIX: calculation error in overhang area
bug: There is a part of the overhang area in the model that cannot be applied

Change-Id: Ia1045225776ccb0e8730912aae1d4c7509f40c5b
(cherry picked from commit daa3e131564690e9e169313d147fd84537b898ca)
2023-09-22 16:21:26 +08:00
zhou.xu
a20ae7ec5b FIX: normal_matrix calculation lack transpose in overhang
Jira: STUDIO-4244
Change-Id: If706f098c43f15aa407dde68e8a914bd53ab7188
(cherry picked from commit ea78555dada3d7bb0d3ad87f09ed371f5b327352)
2023-09-22 16:21:26 +08:00
maosheng.wei
95625bb9d0 ENH: [STUDIO-3151] Optimize scoring entry 2
Jira: 3151

Change-Id: I3a3a9d53f9557a93f02c44af3906b2e9f0761baf
2023-09-22 16:21:26 +08:00
zhou.xu
2d9451e545 FIX: Upgrade the texture image
align texture image  to the grid of the x1 machine
Jira:STUDIO-4206

Change-Id: I7dcc5061017f355f30b3f584180751ec7a3f391b
(cherry picked from commit 7ec89042246162edc04e32abe2b609f5f561d810)
2023-09-22 16:21:26 +08:00
lane.wei
ac988a5c53 ENH: add the smooth pei bed type
smooth pei plate uses the same parameters as high temp plate
JIRA: STUDIO-4181

Change-Id: I9db8ca7440b5b205902fd4b35af6c24440e1104d
(cherry picked from commit 97e803f62e7d02ff171c2c63e261d319d49ce398)
2023-09-22 16:21:26 +08:00
zhou.xu
c40f37feec FIX: cancel grid undo/redo function
Jira: STUDIO-4150
Change-Id: I854a1ef2a5fade8e5702fc6e2e31c98ff2207eea
(cherry picked from commit 72777d6b1420472a99b590a4452246af9955ee53)
2023-09-22 16:21:26 +08:00
zhimin.zeng
144abfca27 ENH: Allow machines that do not support timelapse
STUDIO-3935

Change-Id: I8b65c1d24fdee744af10d4112b0f8bee7554ad3c
(cherry picked from commit 1802c2e8c4fc68fce3dc5b025814aec84e7653a3)
2023-09-22 16:21:26 +08:00
tao wang
7a7dcb1de2 NEW:N1 supports auto leveling
Change-Id: I7a1279317f6f28e9fa0bff1017e6257925e0b0bc
(cherry picked from commit af3ee7dbadd5c78d6c8404c49829a794138511e8)
2023-09-22 16:21:26 +08:00
hu.wang
2cf9ee1dc5 NEW:[STUDIO-4016] Support motor noise cali for N1
Calibrated motor noise option, N1 supported.
And when none of the calibration options are selected, the start calibration button turns gray

Change-Id: I991034a13001f840016475171c33218ddc812d35
(cherry picked from commit 7224ccd2a114d553b6234a7d8616d253bef0ced4)
2023-09-22 16:21:26 +08:00
Kunlong Ma
09b6f4d8fd ENH:Supplement to printing status supplement
Change-Id: I116e84705b390b99f8646b64eb7e96ae4c35c7d3
(cherry picked from commit 3f5381ff55a501bf95d01e31b4cbdabdab48c44a)
2023-09-22 16:21:26 +08:00
tao wang
eec2335466 FIX:fixed N1 and was unable to obtain all materials
Change-Id: I05cca90f1197ec04f45c630348ada17746238444
(cherry picked from commit 453b76e7af2f19d261071c2cf1c1bcefef420043)
2023-09-22 16:21:26 +08:00
Kunlong Ma
fc3891d6a4 ENH: [STUDIO-4062] print status supplement
Change-Id: I298d4fcfda51b48c90c62936185efc1a6bf459f0
2023-09-22 16:21:26 +08:00
liz.li
d3d5751814 ENH: replace n1 & f1 image and name Jira: [STUDIO-4008]
1. replace n1 image at LAN access code dialog
2. replace f1 text with AMS Lite
Change-Id: I1385ff5b8b6ca849ed330d49f803e4632732510f

Change-Id: I9e053c4123073c5bf152689e7f34ef1667c04d1d
(cherry picked from commit 2ca116de0c83c17a8c994c32fa4c41a315628f86)
2023-09-22 16:21:26 +08:00
xun.zhang
aa9ace3e39 ENH: update profiles for N1
Adjust the print acceleration from 10000 to 6000.
Retain only PLA-type filaments, including support types for PLA,PETG,TPU.
Delete all other high-temperature filament types.

jira: STUDIO-4038
Change-Id: Iba56bfe94aee0235a629b98a29cdcac323490e34
2023-09-22 16:21:26 +08:00
xun.zhang
e360f8d3c4 ENH: update N1 start& end gcode
Modify the motor beep G-code to support changing the volume for each beat

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
(cherry picked from commit 5dac263e17a39d5ab0a432cf6e2a04ee6bb74f22)

Change-Id: I0aabba8cf7d0d9db1d84a9151b7659d045d790ca
2023-09-22 16:21:26 +08:00
tao wang
d815a90f9b FIX:fixed that the road control was not hidden in MacOS
Change-Id: I83d6755e260fac95440bab0e8db7830a934d6249
(cherry picked from commit 3ab7efe6a7cb3ccd11a2eb1a74a1e0cdff5f5bc5)
2023-09-22 16:21:26 +08:00
hu.wang
b7b875a62a NEW:[STUDIO-4012] support prompt sound
support modifying whether to turn on prompt sound from the print option pop-up window

Change-Id: I3206bfcefc9292dd2a7acb7294addc901ad21d4d
(cherry picked from commit 77594f1aba7db2948dd9b8627d74f37ff8dbf07a)
2023-09-22 16:21:26 +08:00
tao wang
3992c14ad6 ENH:increase N1 camera busy status
jira:STUDIO-3982

Change-Id: I0272bbc28359b2e15d6c1f81ef9da825b3764b1a
(cherry picked from commit 357ecdcc1444cbc98d2fcd11faea519d53ad52b8)
2023-09-22 16:21:26 +08:00
tao wang
0bba850e59 FIX:check if the printer and preset are the same
jira:[STUDIO-4018]

Change-Id: I69ea1e3f8e8214ae68464665e1e7260fcc41dd82
(cherry picked from commit 12592ef1d9daf9471aad40a907f8c88bfc39bf30)
2023-09-22 16:21:26 +08:00
tao wang
971e5dfe67 ENH:update config file
Change-Id: I23d25f24a54454188249e069044c7a51eddfaf89
(cherry picked from commit 8deb03620a06df005734997c469387ab6b5c3b2c)
2023-09-22 16:21:26 +08:00
liz.li
366e71688d FIX: f1 display problem at upgrade panel
Change-Id: I4ea68d9c8d31d20c39a699537a40dafe4788f4aa
(cherry picked from commit 6738088b585df1e20cc1c0685d81834779abc5d1)
2023-09-22 16:21:26 +08:00
tao wang
6024f149c8 ENH:optimize the status display of the extruder
Change-Id: Ib35a31e46fe1c6b84d2e17d50c04a146e82f0270
(cherry picked from commit c79ee70d34f8628a50f6aaa73d256f5444094b62)
2023-09-22 16:21:26 +08:00
tao wang
60701cbc8e FIX:fixed UI flashing when playing liveview
Change-Id: I604620059556b74a7be5b472e2408aaea18625f6
(cherry picked from commit d17238694857a308b4f4aa5e48f91cade8f4c065)
2023-09-22 16:21:26 +08:00
tao wang
18c7f9bd4d FIX:fixed some unsupported HMS messages that cannot be displayed
Change-Id: Ib5acffb1e2c94bae56aed89fbb71a7a15a660485
(cherry picked from commit f736b576bb809e15f9d90ea49f343c43f2fc7367)
2023-09-22 16:21:26 +08:00
tao wang
ce7c28b134 ENH:dynamic display of AUX fan
Change-Id: Ib2b5578567eaa6fde15fdb54bdf24063b627d2d7
(cherry picked from commit 38f3fb6bf6b67c527dab313c1282ff97edf85efc)
2023-09-22 16:21:26 +08:00
xun.zhang
394196eef0 ENH: add upward machine for N1
Also fix a bug in default print profiles

Change-Id: I515e8762870968acce8fe17bdf33c7d380b3c29b
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
(cherry picked from commit 33c0a597c8b5390790772da06d880f6c03259817)
2023-09-22 16:21:26 +08:00
xun.zhang
0f57aa2b91 ENH: update N1 start gcode
Reduce the wiping speed of the mouth.

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I23bda42affc173a4d88ccfb1f4b79943d0bbecdc
(cherry picked from commit 12971f00f8918ce30634ef7467753fde0a562d82)
2023-09-22 16:21:26 +08:00
zhou.xu
9c834a9721 FIX: remove N1 setting and auto match textures based on printing area
Change-Id: Ia208c7436901a722c8c4e2caa3d7573fd0714432
(cherry picked from commit acf3a2ba8594e07039da2320a573c5ae12d6260f)
2023-09-22 16:21:26 +08:00
Stone Li
073ab53fa1 ENH: add N1 config
Change-Id: Iefca6b814368553d51b13e71a6851c12eeee8f4c
Signed-off-by: Stone Li <stone.li@bambulab.com>
(cherry picked from commit 4b8623cce58baf0e94e84a521a3a847459e86bb4)
2023-09-22 16:21:26 +08:00
tao wang
8177453d22 ENH:support setting chamber temperature
Change-Id: Icacd3f248a8f4dbff6c928e666f986c62801eebd
Signed-off-by: Stone Li <stone.li@bambulab.com>
(cherry picked from commit 6074340b1c3bd49b7e767384116fa73e96cd4ba9)
2023-09-22 16:21:26 +08:00
Stone Li
3595310b09 ENH: support to config printer arch
Change-Id: Ib3e0cdfa10ae19c3f5543328e211bce7ff20693a
Signed-off-by: Stone Li <stone.li@bambulab.com>
(cherry picked from commit 24e513a89f2346e9187853cd02f8e5d73eeb8075)
2023-09-22 16:21:26 +08:00
xun.zhang
957159d383 ENH: update N1 start gcode
Flow rate calibration checkbox in.

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ie51ca6e7e1d96569fc22cbcea261f662fd3dbf84
(cherry picked from commit 890ee755449fe6a4ca7d0d0b41558b43d97eed0b)
2023-09-22 16:21:26 +08:00
Stone Li
b7a0499abc ENH: modify config for N1
Change-Id: I151eb7ecabb1e5a8a2af95294cc03ffe92f6b660
Signed-off-by: Stone Li <stone.li@bambulab.com>
(cherry picked from commit 6d02a722798302c8648a62d86bcddc2650a47ea4)
2023-09-22 16:21:26 +08:00
liz.li
68d40d3c14 NEW: add N1/F1 related item at device upgrade page
Change-Id: Icc85088709ccb9b11ba7bd8387b7b57c02cf81a1
(cherry picked from commit cf1b456e0a43775bfa857524b5d5c1676f34f4d4)
2023-09-22 16:21:26 +08:00
tao wang
46dced098a NEW:supports f1 display
Change-Id: I886c4dbcaf5bf7451a6c24c867bd3c6286cc0b3e
Signed-off-by: Stone Li <stone.li@bambulab.com>
(cherry picked from commit 9f442418783c5559f7e8dd40bf800e88ebfdcf52)
2023-09-22 16:21:26 +08:00
liz.li
e8fa82cde9 ENH: modify device upgrade page
Change-Id: I16c91c6e7b9c4c44307425e343b260ed873a695d
(cherry picked from commit 01efa8bcc05ef7fa50968fd36d1f3a592d35cccf)
(cherry picked from commit 63ce7de0879517c5dd5a7aac6e01425dc74638de)
2023-09-22 16:21:26 +08:00
Stone Li
aca41cd20d FIX: fix a bug of n1
Change-Id: I859c8b55ff62f0d1052b29d781602991b636dc50
(cherry picked from commit f1a01da168efd770aab6a11db531c6429fc6f74d)
2023-09-22 16:21:26 +08:00
tao wang
ca17231c98 NEW:support for displaying extra styles
Change-Id: I5c468218c865d93f5813cc3f53f3b9a74de44312
(cherry picked from commit 36e12f142c2bfc26dca89262f6367457a29a326c)
(cherry picked from commit 88b58898a749156e291dbe90d286115af6e69855)
2023-09-22 16:21:26 +08:00
zhou.xu
32541741ed FIX: temporarily not show textures not used in N1 machine
Change-Id: I177b081ed602777e97c4cc9a8011e4aacd6bacaa
(cherry picked from commit 284fa5e767543527c5476e84553cc84dc24083b5)
(cherry picked from commit 3a67e4458168c65baf014561950de281ab900aca)
2023-09-22 16:21:26 +08:00
xun.zhang
46ec5ea930 ENH: add profiles for N1
Add filament,process,machine profiles.

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Iea89d42090fa7bf6ee66c84189b7425b8acffc27
(cherry picked from commit c9f6284d882b5df9fa8e34ab62a16813d198788c)
2023-09-22 16:21:26 +08:00
chunmao.guo
e3ca9af7e9 ENH: [STUDIO-3892] different app config dirs for internal/beta
Change-Id: Ibd771b948f9a0b8e95b87c8d7244ab5728b6f4a8
(cherry picked from commit cfbb31fa28e66d780e6305c840ad46091c6f5a8d)
2023-09-22 16:21:26 +08:00
maosheng.wei
db038d88fa ENH: [STUDIO-3151] Optimize scoring entry
Jira: STUDIO-3151

Change-Id: I6ffd236faea7de9f1e35b77f818f926f2477939a
(cherry picked from commit 5591f9d472bc7de45cc73acdd79e09bfc2549d89)
2023-09-22 16:21:26 +08:00
liz.li
d3166fda13 ENH: update slice status after insert all custom gcode
Jira: STUDIO-4155

Change-Id: Ia088a471477895c92eaeac6f26052e7ec0f060a9
2023-09-22 16:21:26 +08:00
Merikesh Dev
1fe94590bd Fix: fix the formatting on _L
Github pull request: #2439
2023-09-22 16:21:26 +08:00
Merikesh Dev
570a98fd45 ENH: Format: Add ModelIO support on macOS
Github pull request: #2439

Change-Id: I4464a735a0a20b3e8103a344a64500b3d14b70e6
2023-09-22 16:21:26 +08:00
tao wang
607f4ca526 ENH:update text that cannot connect to the printer
Change-Id: Id408fc0b9dd2e71d8928f842e1c34caad9469a68
2023-09-22 16:21:26 +08:00
gerrit
048ff596c9 ci: update build version to 01.07.04.54
Change-Id: Ia78cc31809b92d0feaa9fee3d288a62c91ab00b4
2023-09-22 16:21:26 +08:00
lane.wei
4bb913bcc8 ENH: Support: set the float air warning also to non-critical
JIRA: STUDIO-4217
Change-Id: Ic587acde0a566e4ea5217a5dc4f1ab8b6b155f5c
2023-09-22 16:21:26 +08:00
liz.li
18a3b8b757 FIX: slider show custom gcode issue
Jira: STUDIO-4316

Change-Id: I576e35861cd6306b67a0b5bd098eb2a739faf75b
(cherry picked from commit 59f80dad826ac81cf66a22a7e35fee87d94f0287)
2023-09-22 16:21:26 +08:00
gerrit
1da049921c ci: update build version to 01.07.04.53
Change-Id: Ief5f21d2dd449125ecdbd2cc786d9669731488b2
2023-09-22 16:21:26 +08:00
xun.zhang
caf30b21ea ENH: rename chamber_temperatures in placeholder
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Id4d853d479cfb9b6c3fda177891f11a34f7d29e8
2023-09-22 16:21:26 +08:00
xun.zhang
8d2a5dedc1 FIX: use extruder list to decide chamber temp
As title.Use the same way to decide exhaust fan.
Removes end print exhaust fan control.

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Id14f3d91171b81239b336ef879061c6de7d68edf
2023-09-22 16:21:26 +08:00
xun.zhang
9b20cad55e ENH: add support for chamber_temp and exhaust_fan
Support controlling chamebr temperature and exhaust fan for air filtration

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I31627ce4f8acce99e132b0436ab7dcd0bcebf81d
2023-09-22 16:21:26 +08:00
Stone Li
be19c137fe NEW: generate small thumbnail size in 3mf
JIRA: STUDIO-4282

Change-Id: I2f6e35bd643e950d15dcfacb9f6ecae8f8bd80fa
Signed-off-by: Stone Li <stone.li@bambulab.com>
2023-09-22 16:21:26 +08:00
chunmao.guo
f66cb2bb69 FIX: [STUDIO-3891] check config update after sync
Change-Id: I82e409f0d3649a371cbe0f8ee9a5f9ad1a267fc8
(cherry picked from commit a5bb7694cf874f125ee9d1169d20710fd4a27443)
2023-09-22 16:21:26 +08:00
chunmao.guo
2b1712bb9d FIX: [STUDIO-3891] move printer image to profiles path
Change-Id: I40755109fcab4532cfe7d2314accc7d9f61c249c
(cherry picked from commit 0398a5c5d842629b7aedfc989602d78324a64934)
2023-09-22 16:21:26 +08:00
chunmao.guo
c5882a1827 FIX: prefer local tunnel for P1P liveview
Change-Id: Ia4f52a8bd2b8bcf20740b2c7043e437d56a4a5b1
2023-09-22 16:21:26 +08:00
zhimin.zeng
1426913752 FIX: No progress bar is displayed during manual calibration
Jira: 3789
Change-Id: I4d56839136f4590b6df384f2287e9565e5e61afa
(cherry picked from commit ddb0c38fc0ed4b42bc5a132c2b2d907084576d41)
2023-09-22 16:21:26 +08:00
zhimin.zeng
50226b8b23 FIX: Incorrect exploded view after split to objects
and modify the incorrect assemble view after cut
Jira: 4182

Change-Id: I813a9179c54d544e745153186e09a4d82fc50dbc
(cherry picked from commit f60762ddefcaa9ba6bd9d61fb328fc42f1a2c5d0)
2023-09-22 16:21:26 +08:00
zhimin.zeng
f78b067525 FIX: Text dragging of special file doesn't work
Jira: 4271
Change-Id: I0b2e33ac0cf4919bea93732151529deac3b7e9ed
(cherry picked from commit f1534363d63c5f8b8ddb00edb8edef6b0376b54d)
2023-09-22 16:21:26 +08:00
zhimin.zeng
b0e20ad68e FIX: crash when multi-select connectors with different shape
Jira: 3916
Change-Id: Ic011827e5d301f91f684039a85b228196be1ba98
(cherry picked from commit 53705d8541a6d97ada278ea9310ac6e5e1ac45c7)
2023-09-22 16:21:26 +08:00
Arthur
ef2cc4b65c ENH: add load_model_objects_and_custom_gcodes
Add cmd line option to pass layer change gcode.
This is useful for lithophane auto change colors.
Cmd: --custom-gcode custom_gcode_toolchange.json

Examples of the input json file can be found in the jira.

Jira: STUDIO-4070

Change-Id: I5beb5ff7d6d81028e95013e79f955e498cd3ba30
(cherry picked from commit bed6152b95c965ea87958d94ec069d8c883a8037)
2023-09-22 16:21:26 +08:00
lane.wei
f250d6f5c7 FIX: CLI: fix the thumbnail color not correct issue
JIRA: MAK-1812
Change-Id: I61832ffeea75b9423d85ccd81d5602a3e7d288b8
2023-09-22 16:21:26 +08:00
zhimin.zeng
caac160c7f FIX: Crash when switch to the calibration page
after binding the printer in device page
jira: 4080

Change-Id: I8e712389bf619b177255111766c271cb9f1bf66e
(cherry picked from commit a012b3641713d7f1e3ae60688c2db8054d3cd731)
2023-09-22 16:21:26 +08:00
zhimin.zeng
e7fcd330ba FIX: the default value of flow rate calibration is the last value set
Jira: 4147
Change-Id: If587d92aea872e8cfadb556b2912db402e0a6a86
(cherry picked from commit 2530a94827231181ac30fb6ade1eb99021be5f2a)
2023-09-22 16:21:26 +08:00
lane.wei
c00caad244 ENH: CLI: add support of rotate
JIRA: STUDIO-4183
Change-Id: I091cc3142ce867d2ac75ba27b3cb2e4e569c9681
(cherry picked from commit 7eab9ba9f22dc8f00e13caf27c7cf72b8675562a)
2023-09-22 16:21:26 +08:00
lane.wei
4eea84f24a FIX: CLI: fix the compiling issue under windows
JIRA: STUDIO-4217
Change-Id: Id937f921aa6d1f5cbc2300ba7395df71c3cd147a
(cherry picked from commit 799faa7bbd270050bc8b04afba27021ebaf88933)
2023-09-22 16:21:26 +08:00
lane.wei
bf8ac4c436 ENH: CLI: optimize the logic for message
1. treat the critical slicing warnings as error
2. save more information into result
including the triangle counts and the non-critical warnings

JIRA: STUDIO-4217

Change-Id: I25b746d06c9a1ef2d642c67852577982a2986322
(cherry picked from commit 1d9707ed04cbb6dc12b440b70f3581c619136ac3)
2023-09-22 16:21:26 +08:00
xun.zhang
82791b0320 ENH: update fan speed for Generic high speed
jira:STUDIO-4205

Change-Id: I301b1995befaac5b2ae1af0dd383c4107e280c59
2023-09-22 16:21:26 +08:00
xun.zhang
0b1c2cbe3a ENH: Add Generic PLA High Speed
jira:STUDIO-4205

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I6132ad07968850c2136bc24b0702d0bf525a0b8f
2023-09-22 16:21:26 +08:00
xun.zhang
17621eb3e8 ENH: change PA6-CF filament type to PA6-CF
PA6-CF is disabled in AMS

jira:STUDIO-4196

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Iff32388a15f32da6b28034130d5ddadd107a3185
2023-09-22 16:21:26 +08:00
xun.zhang
507addcd4c FIX: invalid filament vendor in PA6-CF
jira:STUDIO-4212

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ie940cfb7ca3568e0fee04fa8a2bbcfad17040a15
2023-09-22 16:21:26 +08:00
xun.zhang
132e98c9c8 ENH: lower filament max volumetric speed for petg
Lower max volumetric speed for polyLite petg

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Id7a28dd8bd59e01934e60e926902deeea456c89a
2023-09-22 16:21:26 +08:00
xun.zhang
80b77a9c01 ENH: add filament PA6-CF
As title. Also modify temperature_vitrification for PA-CF

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I8bc577267652be294ebe01f015b0502070c68dbe
2023-09-22 16:21:26 +08:00
xun.zhang
321f1f38e0 ENH: add more 3rd party filaments
Add Overture PLA, Matte PLA,PolyLite PETG,ABS,ASA

jira: STUDIO-4044
Change-Id: I3e1954dae20b6695383d8abdf55eb4eeba3b5a08
2023-09-22 16:21:26 +08:00
lane.wei
6d5fad236e ENH: refine the logic of extruder_clearance_radius
1. use extruder_clearance_max_radius instead
2. set the value of P1P/P1S to the same value of X1C
JIRA: STUDIO-4214

Change-Id: I1ae5e4203db0933854b4388b5505dbf34b40edae
(cherry picked from commit 19cb6a0fbad0192d39813e449baed090baa163c5)
2023-09-22 16:21:26 +08:00
gerrit
5957912eaa ci: update network module based on commit 83a385c
Change-Id: I1c5fd418646d8387dc6437157f9c609cf3019eb2
(cherry picked from commit 95442e564b2c1b238a56230322463e3213eb43d4)
2023-09-22 16:21:26 +08:00
Stone Li
f5f650eac4 ENH: get thumbnail from task info
JIRA: STUDIO-3975

Change-Id: Ic9ae120673098a4b62c4a00b515558fbef630890
Signed-off-by: Stone Li <stone.li@bambulab.com>
2023-09-22 16:21:26 +08:00
Stone Li
24cb84e78f FIX: fix translation bug in third-party connection guide
JIRA: STUDIO-4161

Change-Id: I689aa495fec87bd1a40ca74be03799acd4f2fc5e
Signed-off-by: Stone Li <stone.li@bambulab.com>
2023-09-22 16:21:26 +08:00
lane.wei
a1e4975c81 FIX: CLI: fix the wipetower wrongly generated issue
JIRA: MAK-xxx
Change-Id: I6d6af58c7106df4dacb51e98dd607ff77c058c13
(cherry picked from commit 080c6ced15bf9eb6e490fbd3616667d66ecbff86)
2023-09-22 16:21:26 +08:00
lane.wei
d5b9dcfbbe FIX: CLI: fix the brim related issues
1. move the global functions to Model
2. set brim automation paremeters before process
JIRA: STUDIO-4208

Change-Id: I3f75175ec74d214ca2a6d5f3ade56d08e0ecd4f3
(cherry picked from commit bcc88bc01ec396e8fb8af1186b47a75cd5116f3c)
2023-09-22 16:21:26 +08:00
lane.wei
7f642112d2 ENH: CLI: add the re-arrange logic when the printer type change with different extruder_clearances
JIRA: STUDIO-4214

Change-Id: I6a8862b4da9812d38522fba2235d5e02f421878b
(cherry picked from commit 0d00660feb97fa0652c7984d92150aacd2746698)
2023-09-22 16:21:26 +08:00
Stone Li
353c962c21 ENH: add a device id parameter for hms wiki
JIRA: STUDIO-4177

different printer may have different hms wiki page

Change-Id: I0f4443580466ab1afc1fe16da6f5ed924e5d201d
Signed-off-by: Stone Li <stone.li@bambulab.com>
2023-09-22 16:21:26 +08:00
wenjie.guo
c97a88069b NEW: Z hop restriction
Z hop will only come into effect when it is between retract_lift_above and retract_lift_below.
Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: If43aea7024018eb8f532c6af5d8000973f2edee3
2023-09-22 16:21:26 +08:00
PavelMikus
a15700e5de FIX: short edge collapse algortihm
so that it does not decimate all triangles on very high detailed models
Relevant issue 8834 Access Error when slicing
Github: #2283

Change-Id: I047361c88c561962ef4d3cf67bc0126402c41941
(cherry picked from commit f8aaa5c69d59c5fced4b7bb112376e4df94b5ddc)
2023-09-22 16:21:26 +08:00
lane.wei
731035b8b6 FIX: CLI: fix some issues
1. JIRA: MAK-1727, color of thumbnail not correct
2. JIRA: MAK-1723, model upload outside issue

Change-Id: I1754d730021c9df8044248e931023899d410d8de
2023-09-22 16:21:26 +08:00
lane.wei
2f51b0be97 FIX: CLI: fix a wipe tower position issue
when arrange failed and restore to original
we will compute the position of wipe tower again
we should skip this case
JIRA: STUDIO-4048

Change-Id: I19edc36dfa7ec5a9f6b5ba3a1c1e0767361b3e33
2023-09-22 16:21:26 +08:00
lane.wei
e1b3a5b6d5 ENH: CLI: add a flag to allow minimum size save
JIRA: STUDIO-3752
Change-Id: I0277c34d108185d10130630a72811122f8ee9ae2
2023-09-22 16:21:26 +08:00
Arthur
064f3ee0aa FIX: unify cli and GUI auto-arrange
Make sure cli uses same params as GUI's auto-arrange.
Previously cli uses wrong skirt_distance.

Jira: BLPIOT-255
Change-Id: Iaccfb76acf7413ec614fff006feb770dcd6783cf
2023-09-22 16:21:26 +08:00
lane.wei
f6ac8b60b7 FIX: CLI: fix serveral issues of CLI
1. duplicate id issue, MAK-1702
2. shrink issue, STUDIO-4048

Change-Id: Ie952f1ecc5267a60f0ce3220c4a5ea31cf7199ff
2023-09-22 16:21:26 +08:00
lane.wei
990b0947e7 FIX: CLI: add logic to allow use cached_data while printer size change
when print profile created on small printers
the cached data should also be used
JIRA: MAK-1658

Change-Id: I31e801bd3116838baaeaef44f4aa6d53d65aa058
2023-09-22 16:21:26 +08:00
lane.wei
fca0d5b239 FIX: CLI: fix serveral bugs
1. bed index not correct issue
2. pick thumbnail not correct when repetitions

Change-Id: Ie846432e29c596f95da30c7df199c252873504f3
2023-09-22 16:21:26 +08:00
lane.wei
34061f1fb7 ENH: CLI: add time record for prepare/slice/export
Change-Id: I4004a9af3823223c885f428f5a2f180f9d9074e5
2023-09-22 16:21:26 +08:00
lane.wei
db5ed65577 ENH: CLI: add more logic to support repetitions
1. add identify_id for those clone objects
2. ensure succuss when copy multiple objects

Change-Id: I8a92f485442577ce70b1f5c46449dae1ae07b713
2023-09-22 16:21:26 +08:00
lane.wei
468fc828d0 ENH: CLI: support system preset passed to CLI
Change-Id: I933d49e677c8610c3fe90bbe7d455f94d950ae96
2023-09-22 16:21:26 +08:00
maosheng.wei
4bffab0ef8 FIX: add small disc stl
Change-Id: I5c6c8ca1d4a15fc1462fe47d2e5e37b459f9a9a6
(cherry picked from commit b240831ee664c825e0f7df08d3181263dc135606)
2023-09-22 16:21:26 +08:00
maosheng.wei
53240ddc66 FIX: [github 2259] Maintain development mode when reopening BBS
Change-Id: I9cd6bddbc58f7841499665e21dc606b35c706afc
(cherry picked from commit b0c313dc367c978b85853bb1317fb8f36f228034)
2023-09-22 16:21:26 +08:00
qing.zhang
3a87ded0c5 FIX: no soild ironing if top or bottom shell is 0
fix the ironing be apply to the preview layer of bridge

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I53cb4e6ff80176953c2927c1d9dc5eecc590764c
2023-09-22 16:21:26 +08:00
Noisyfox
685e058c35 Parallelized PrintObject::bridge_over_infill() (#2132)
Co-authored-by: Vojtech Bubnik <bubnikv@gmail.com>
2023-09-17 11:22:11 +08:00
Christophe Fonteyne
bd13d83385 Added profile for Creality CR-6 SE and CR-6 Max (#2040)
* Added profile for CReality CR-6 SE and CR-6 Max

* Removed merge conflict artifacts

* Removed duplicate process_list

* Fixed many bugs. Profile now loads correctly in 1.7.0-beta

* fixed filament dependencies for CR-6
2023-09-17 11:21:07 +08:00
Heiko Liebscher
4161b6cfa5 add new german translation (#2131) 2023-09-16 22:40:52 +08:00
Sadri ERCAN
11af4b1b80 Turkish Language String Updates For v1.7 (#2130)
Turkish Language String Updates For v1.7
2023-09-16 22:33:42 +08:00
ablegods
1751a41641 Updated TW translation (#2116) 2023-09-16 22:29:27 +08:00
Noisyfox
a73e533bdb Fix gcode viewer on linux (#2110) 2023-09-16 22:26:20 +08:00
igiannakas
61437b2c76 Detection of curled edges to enhance slowdown for overhangs algorithm (#2056)
* Overhang perimeter handling

Updated code to handle overhang perimeters as an overhang and not as a bridge.

* Preparing to add curled extrusions identification

* Porting curling calculations from Prusa Slier 2.6.1

* Prototype 1 - slowdown extended to detect curled edges and further reduce speed

First prototype of the code submitted.

* Working prototype - 2

Code is now finally working - external perimeters are slowed down as needed when there is likelyhood of curling up.

ToDo:
1. Reslicing the model causes the algorithm not to run - need to find where this fails to trigger the call for this.
2. Slowdown of internal perimeters not working yet.

* Updated to use overhang wall speed instead of bridging speed for this algorithm

* Fixed bug in speed calculation and tweaked parameters for high speed printer

Fixed bug in speed calculation and tweaked parameters for high speed printer

* Attempting to fix "set started" not being set

* Parameter tweak after print tests

* Fixed estimation not running when model is re-sliced.

* Removing debug printf statements and fixed threading flag.

* Fixed threading

* Parameter tweaks following print tests

* Made this as an option in the GUI

* Reintroduced handling of bridges as per original design

* UI line toggling when option makes sense to be visible.

* Fixed bug in field visibility & made it default to off

* Code optimisation

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-09-16 22:24:18 +08:00
Musicdad
0ee4a168f9 Merge branch 'main' into main 2023-05-18 10:47:56 -05:00
Musicdad12
1c6fe03df8 Update BIQU Generic PLA Silk.json 2023-05-16 08:12:39 -05:00
Musicdad12
7e60f171ef Reset Filament IDs for Filaments 2023-05-16 08:07:32 -05:00
Musicdad12
95c56dfbe9 remove duplicate cover images 2023-05-15 09:32:30 -05:00
Musicdad12
9184b4246f Updated Filament names Resized images 2023-05-14 19:35:31 -05:00
Musicdad12
6ee90ea0f3 Profiles for Folgertech Printers
includes i3, FT-5, FT-6
2023-05-13 13:38:27 -05:00
Musicdad12
e85815f0e9 Update BIQU Generic PVA.json 2023-05-12 22:27:09 -05:00
Musicdad12
c695f54a97 Fixed typo in filament, Gave unique IDs 2023-05-12 21:56:24 -05:00
Musicdad12
529762acd5 Fixed machine definition files 2023-05-12 21:24:52 -05:00
Musicdad12
6c2af5e400 Updated cover images
Updated Cover Images
2023-05-12 19:58:19 -05:00
Musicdad12
4852e180ff Requested changes made to profiles 2023-05-10 07:31:38 -05:00
Musicdad12
0b37502035 Add support for BIQU Printers
Adds printers BIQU B1, BX, and Hurakan
2023-05-09 17:20:13 -05:00
2545 changed files with 274633 additions and 94127 deletions

View File

@@ -95,7 +95,7 @@ PenaltyBreakString: 600
PenaltyBreakTemplateDeclaration: 10
PenaltyExcessCharacter: 50
PenaltyReturnTypeOnItsOwnLine: 300
PointerAlignment: Right
PointerAlignment: Left
ReflowComments: true
SortIncludes: false
SortUsingDeclarations: false

58
.github/workflows/build_all.yml vendored Normal file
View File

@@ -0,0 +1,58 @@
name: Build all
on:
push:
branches:
- main
- release/*
paths:
- 'deps/**'
- 'src/**'
- '**/CMakeLists.txt'
- 'version.inc'
- 'localization/**'
- 'resources/**'
- ".github/workflows/build_*.yml"
pull_request:
branches:
- main
- release/*
paths:
- 'deps/**'
- 'src/**'
- '**/CMakeLists.txt'
- 'version.inc'
- ".github/workflows/build_*.yml"
workflow_dispatch: # allows for manual dispatch
inputs:
build-deps-only:
description: 'Only build dependencies (bypasses caching)'
type: boolean
default: false
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
build_all:
name: Build All
strategy:
fail-fast: false
matrix:
include:
- os: ubuntu-20.04
- os: windows-latest
- os: macos-12
arch: x86_64
- os: macos-12
arch: arm64
uses: ./.github/workflows/build_check_cache.yml
with:
os: ${{ matrix.os }}
arch: ${{ matrix.arch }}
build-deps-only: ${{ inputs.build-deps-only || false }}
secrets: inherit

58
.github/workflows/build_check_cache.yml vendored Normal file
View File

@@ -0,0 +1,58 @@
name: Check Cache
on:
workflow_call:
inputs:
os:
required: true
type: string
arch:
required: false
type: string
build-deps-only:
required: false
type: boolean
jobs:
check_cache: # determines if there is a cache and outputs variables used in caching process
name: Check Cache
runs-on: ${{ inputs.os }}
outputs:
cache-key: ${{ steps.set_outputs.outputs.cache-key }}
cache-path: ${{ steps.set_outputs.outputs.cache-path }}
valid-cache: ${{ steps.cache_deps.outputs.cache-hit }}
steps:
- name: Checkout
uses: actions/checkout@v3
- name: set outputs
id: set_outputs
env:
underscore-arch: ${{ inputs.os == 'macos-12' && '_' || ''}}${{ inputs.os == 'macos-12' && inputs.arch || '' }} # if is macos, make a string that does "_{arch}", else output nothing
dash-arch: ${{ inputs.os == 'macos-12' && '-' || ''}}${{ inputs.os == 'macos-12' && inputs.arch || '' }} # if is macos, make a string that does "-{arch}", else output nothing
dep-folder-name: ${{ (inputs.os == 'windows-latest' || inputs.os == 'macos-12') && 'OrcaSlicer_dep' || 'destdir' }}
output-cmd: ${{ inputs.os == 'windows-latest' && '$env:GITHUB_OUTPUT' || '"$GITHUB_OUTPUT"'}}
run: |
echo cache-key=${{ runner.os }}${{ env.dash-arch }}-cache-orcaslicer_deps-build-${{ hashFiles('deps/**') }} >> ${{ env.output-cmd }}
echo cache-path=${{ github.workspace }}/deps/build${{ env.underscore-arch }}/${{ env.dep-folder-name }}${{ env.underscore-arch }} >> ${{ env.output-cmd }}
- name: load cache
id: cache_deps
uses: actions/cache@v3
with:
path: ${{ steps.set_outputs.outputs.cache-path }}
key: ${{ steps.set_outputs.outputs.cache-key }}
lookup-only: true
build_deps: # call next step
name: Build Deps
needs: [check_cache]
uses: ./.github/workflows/build_deps.yml
with:
cache-key: ${{ needs.check_cache.outputs.cache-key }}
cache-path: ${{ needs.check_cache.outputs.cache-path }}
valid-cache: ${{ needs.check_cache.outputs.valid-cache == 'true' }}
os: ${{ inputs.os }}
arch: ${{ inputs.arch }}
build-deps-only: ${{ inputs.build-deps-only }}
secrets: inherit

View File

@@ -1,88 +1,86 @@
# name: Build Deps
name: Build deps
on:
pull_request:
branches:
- main
paths:
- 'deps/**'
- .github/workflows/build_deps.yml
push:
branches:
- main
paths:
- 'deps/**'
- .github/workflows/build_deps.yml
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
workflow_call:
inputs:
cache-key:
required: true
type: string
cache-path:
required: true
type: string
valid-cache:
required: true
type: boolean
os:
required: true
type: string
arch:
required: false
type: string
build-deps-only:
required: false
type: boolean
jobs:
build_deps:
strategy:
fail-fast: false
matrix:
include:
# - os: ubuntu-22.04
- os: windows-latest
# - os: macos-12
# arch: x86_64
# - os: macos-12
# arch: arm64
runs-on: ${{ matrix.os }}
name: Build Deps
if: inputs.build-deps-only || inputs.valid-cache != true
runs-on: ${{ inputs.os }}
env:
date:
steps:
# Setup the environment
- name: Checkout
uses: actions/checkout@v3
- name: load cached deps
uses: actions/cache@v3
with:
path: ${{ inputs.cache-path }}
key: ${{ inputs.cache-key }}
- name: setup dev on Windows
if: matrix.os == 'Windows'
if: inputs.os == 'windows-latest'
uses: microsoft/setup-msbuild@v1.1
- name: Get the date on Ubuntu and macOS
if: matrix.os != 'windows-latest'
id: get-date-unix
if: inputs.os != 'windows-latest'
run: echo "date=$(date +'%Y%m%d')" >> $GITHUB_ENV
shell: bash
- name: Get the date on Windows
if: matrix.os == 'windows-latest'
id: get-date-windows
if: inputs.os == 'windows-latest'
run: echo "date=$(Get-Date -Format 'yyyyMMdd')" | Out-File -Append -FilePath $env:GITHUB_ENV -Encoding utf8
shell: pwsh
# Build Dependencies
- name: Build on Windows
if: matrix.os == 'windows-latest'
if: inputs.os == 'windows-latest'
working-directory: ${{ github.workspace }}
run: |
choco install strawberryperl
mkdir ${{ github.workspace }}/deps/build
mkdir ${{ github.workspace }}/deps/build/OrcaSlicer_dep
.\build_release_vs2022.bat deps
.\build_release_vs2022.bat pack
cd ${{ github.workspace }}/deps/build
- name: Build on Mac x86_64
if: matrix.os == 'macos-12' && matrix.arch == 'x86_64'
- name: Build on Mac ${{ inputs.arch }}
if: inputs.os == 'macos-12'
working-directory: ${{ github.workspace }}
run: |
brew install cmake git gettext
mkdir -p ${{ github.workspace }}/deps/build_x86_64
mkdir -p ${{ github.workspace }}/deps/build_x86_64/OrcaSlicer_dep_x86_64
./build_release_macos.sh -dp -a x86_64
brew install cmake git gettext automake texinfo
brew list
mkdir -p ${{ github.workspace }}/deps/build_${{ inputs.arch }}
mkdir -p ${{ github.workspace }}/deps/build_${{ inputs.arch }}/OrcaSlicer_dep_${{ inputs.arch }}
brew uninstall --ignore-dependencies zstd
./build_release_macos.sh -dp -a ${{ inputs.arch }} -t 10.15
brew install zstd
- name: Build on Mac arm64
if: matrix.os == 'macos-12' && matrix.arch == 'arm64'
working-directory: ${{ github.workspace }}
run: |
brew install cmake git gettext
mkdir -p ${{ github.workspace }}/deps/build_arm64
mkdir -p ${{ github.workspace }}/deps/build_arm64/OrcaSlicer_dep_arm64
./build_release_macos.sh -dp -a arm64
- name: Build on Ubuntu
if: matrix.os == 'ubuntu-22.04'
if: inputs.os == 'ubuntu-20.04'
working-directory: ${{ github.workspace }}
run: |
sudo apt-get update
@@ -90,38 +88,47 @@ jobs:
libwayland-dev libxkbcommon-dev wayland-protocols extra-cmake-modules pkgconf \
libglu1-mesa-dev libcairo2-dev libgtk-3-dev libsoup2.4-dev libwebkit2gtk-4.0-dev \
libgstreamer1.0-dev libgstreamer-plugins-good1.0-dev libgstreamer-plugins-base1.0-dev \
gstreamer1.0-plugins-bad libosmesa6-dev wget sudo autoconf curl libunwind-dev
gstreamer1.0-plugins-bad libosmesa6-dev wget sudo autoconf curl libunwind-dev texinfo
mkdir -p ${{ github.workspace }}/deps/build
mkdir -p ${{ github.workspace }}/deps/build/destdir
sudo ./BuildLinux.sh -ur
sudo chown $USER -R ./
./BuildLinux.sh -dr
- name: Upload Mac arm64 artifacts
if: matrix.os == 'macos-12' && matrix.arch == 'arm64'
uses: actions/upload-artifact@v3
with:
name: OrcaSlicer_dep_mac_arm64_${{ env.date }}
path: ${{ github.workspace }}/deps/build_arm64/OrcaSlicer_dep*.tar.gz
cd deps/build
tar -czvf OrcaSlicer_dep_ubuntu_$(date +"%Y%m%d").tar.gz destdir
- name: Upload Mac x86_64 artifacts
if: matrix.os == 'macos-12' && matrix.arch == 'x86_64'
# Upload Artifacts
- name: Upload Mac ${{ inputs.arch }} artifacts
if: inputs.os == 'macos-12'
uses: actions/upload-artifact@v3
with:
name: OrcaSlicer_dep_mac_x86_64_${{ env.date }}
path: ${{ github.workspace }}/deps/build_x86_64/OrcaSlicer_dep*.tar.gz
name: OrcaSlicer_dep_mac_${{ inputs.arch }}_${{ env.date }}
path: ${{ github.workspace }}/deps/build_${{ inputs.arch }}/OrcaSlicer_dep*.tar.gz
- name: Upload Windows artifacts
if: matrix.os == 'windows-latest'
if: inputs.os == 'windows-latest'
uses: actions/upload-artifact@v3
with:
name: OrcaSlicer_dep_win64_${{ env.date }}
path: ${{ github.workspace }}/deps/build/OrcaSlicer_dep
path: ${{ github.workspace }}/deps/build/OrcaSlicer_dep*.zip
- name: Upload Ubuntu artifacts
if: matrix.os == 'ubuntu-22.04'
if: inputs.os == 'ubuntu-20.04'
uses: actions/upload-artifact@v3
with:
name: OrcaSlicer_dep_ubuntu_${{ env.date }}
path: ${{ github.workspace }}/deps/build/destdir
path: ${{ github.workspace }}/deps/build/OrcaSlicer_dep_ubuntu_*.tar.gz
build_orca:
name: Build OrcaSlicer
needs: [build_deps]
if: ${{ !cancelled() && !inputs.build-deps-only && (inputs.valid-cache == true && needs.build_deps.result == 'skipped') || (inputs.valid-cache != true && success()) }}
uses: ./.github/workflows/build_orca.yml
with:
cache-key: ${{ inputs.cache-key }}
cache-path: ${{ inputs.cache-path }}
os: ${{ inputs.os }}
arch: ${{ inputs.arch }}
secrets: inherit

View File

@@ -1,114 +1,96 @@
name: Build OrcaSlicer
on:
push:
branches:
- main
paths:
- 'src/**'
- '**/CMakeLists.txt'
- 'version.inc'
- 'localization/**'
- 'resources/**'
- ".github/workflows/build_orca.yml"
pull_request:
branches:
- main
paths:
- 'src/**'
- '**/CMakeLists.txt'
- 'version.inc'
- ".github/workflows/build_orca.yml"
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
on:
workflow_call:
inputs:
cache-key:
required: true
type: string
cache-path:
required: true
type: string
os:
required: true
type: string
arch:
required: false
type: string
jobs:
build_orca:
strategy:
fail-fast: false
matrix:
include:
- os: ubuntu-20.04
- os: windows-2019
- os: macos-12
arch: x86_64
- os: macos-12
arch: arm64
runs-on: ${{ matrix.os }}
name: Build OrcaSlicer
runs-on: ${{ inputs.os }}
env:
date:
ver:
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Get the version and date on Ubuntu and macOS
if: matrix.os != 'windows-2019'
id: get-version-unix
if: inputs.os != 'windows-latest'
run: |
ver=$(grep 'set(SoftFever_VERSION' version.inc | cut -d '"' -f2)
if [ "${{ github.ref }}" == "refs/heads/main" ]; then
ver="nightly$(date +'%y%m%d')"
elif [[ "${{ github.event_name }}" == "pull_request" ]]; then
ver="PR${{ github.event.number }}"
else
ver=$(grep 'set(SoftFever_VERSION' version.inc | cut -d '"' -f2)
ver=V$ver
fi
echo "ver=$ver" >> $GITHUB_ENV
echo "date=$(date +'%Y%m%d')" >> $GITHUB_ENV
shell: bash
- name: Get the version and date on Windows
if: matrix.os == 'windows-2019'
id: get-version-windows
if: inputs.os == 'windows-latest'
run: |
echo "date=$(Get-Date -Format 'yyyyMMdd')" | Out-File -Append -FilePath $env:GITHUB_ENV -Encoding utf8
# Extract the version from the file
$versionContent = Get-Content version.inc -Raw
if ($versionContent -match 'set\(SoftFever_VERSION "(.*?)"\)') {
$ver = $matches[1]
$date = Get-Date -Format 'yyyyMMdd'
$ref = "${{ github.ref }}"
$eventName = "${{ github.event_name }}"
$prNumber = "${{ github.event.number }}"
if ($ref -eq 'refs/heads/main') {
$ver = "nightly" + $date.Substring(2)
} elseif ($eventName -eq 'pull_request') {
$ver = "PR" + $prNumber
} else {
$versionContent = Get-Content version.inc -Raw
if ($versionContent -match 'set\(SoftFever_VERSION "(.*?)"\)') {
$ver = $matches[1]
}
$ver = "V$ver"
}
echo "ver=$ver" | Out-File -Append -FilePath $env:GITHUB_ENV -Encoding utf8
echo "date: ${{ env.date }} version: $ver"
echo "date=$date" | Out-File -Append -FilePath $env:GITHUB_ENV -Encoding utf8
echo "date: ${{ env.date }} version: ${{ env.ver }}"
shell: pwsh
- name: load cached deps
uses: actions/cache@v3
with:
path: ${{ inputs.cache-path }}
key: ${{ inputs.cache-key }}
# Mac
- name: Install tools mac
if: matrix.os == 'macos-12'
if: inputs.os == 'macos-12'
run: |
brew install cmake git gettext zstd
mkdir -p ${{ github.workspace }}/deps/build_${{matrix.arch}}
mkdir -p ${{ github.workspace }}/deps/build_${{matrix.arch}}/OrcaSlicer_dep_${{matrix.arch}}
# - name: build deps
# if: matrix.os == 'macos-12'
# id: cache_deps
# uses: actions/cache@v3
# env:
# cache-name: ${{ runner.os }}-cache-orcaslicer_deps_${{matrix.arch}}
# with:
# path: ${{ github.workspace }}/deps/build/OrcaSlicer_dep
# key: build-${{ env.cache-name }}
# - if: ${{ steps.cache_deps.outputs.cache-hit != 'true' }}
# name: build deps
# working-directory: ${{ github.workspace }}
# continue-on-error: true
# run: ./build_release_macos.sh -d -a ${{matrix.arch}}
- name: Download and extract deps
if: matrix.os == 'macos-12'
working-directory: ${{ github.workspace }}
run: |
curl -LJO https://github.com/SoftFever/FileSharing/releases/download/2023.08.2/OrcaSlicer_dep_mac_${{matrix.arch}}_06-08-2023.tar.gz
tar -zxfOrcaSlicer_dep_mac_${{matrix.arch}}_06-08-2023.tar.gz -C ${{ github.workspace }}/deps/build_${{matrix.arch}}
chown -R $(id -u):$(id -g) ${{ github.workspace }}/deps/build_${{matrix.arch}}/OrcaSlicer_dep_${{matrix.arch}}
ls -l ${{ github.workspace }}/deps/build_${{matrix.arch}}/OrcaSlicer_dep_${{matrix.arch}}
rm OrcaSlicer_dep_mac_${{matrix.arch}}_06-08-2023.tar.gz
brew install cmake git gettext tree
brew list
mkdir -p ${{ github.workspace }}/deps/build_${{inputs.arch}}
mkdir -p ${{ github.workspace }}/deps/build_${{inputs.arch}}/OrcaSlicer_dep_${{inputs.arch}}
tree ${{ github.workspace }}/deps/build_${{inputs.arch}}/OrcaSlicer_dep_${{inputs.arch}}
- name: Build slicer mac
if: matrix.os == 'macos-12'
if: inputs.os == 'macos-12'
working-directory: ${{ github.workspace }}
run: |
./build_release_macos.sh -s -n -a ${{matrix.arch}}
./build_release_macos.sh -s -n -a ${{inputs.arch}} -t 10.15
# Thanks to RaySajuuk, it's working now
- name: Sign app and notary
if: github.ref == 'refs/heads/main' && matrix.os == 'macos-12'
if: (github.ref == 'refs/heads/main' || startsWith(github.ref, 'refs/heads/release/')) && inputs.os == 'macos-12'
working-directory: ${{ github.workspace }}
env:
BUILD_CERTIFICATE_BASE64: ${{ secrets.BUILD_CERTIFICATE_BASE64 }}
@@ -125,108 +107,86 @@ jobs:
security import $CERTIFICATE_PATH -P $P12_PASSWORD -A -t cert -f pkcs12 -k $KEYCHAIN_PATH
security list-keychain -d user -s $KEYCHAIN_PATH
security set-key-partition-list -S apple-tool:,apple:,codesign: -s -k $P12_PASSWORD $KEYCHAIN_PATH
codesign --deep --force --verbose --options runtime --timestamp --entitlements ${{ github.workspace }}/scripts/disable_validation.entitlements --sign "$CERTIFICATE_ID" ${{ github.workspace }}/build_${{matrix.arch}}/OrcaSlicer/OrcaSlicer.app
ln -s /Applications ${{ github.workspace }}/build_${{matrix.arch}}/OrcaSlicer/Applications
hdiutil create -volname "OrcaSlicer" -srcfolder ${{ github.workspace }}/build_${{matrix.arch}}/OrcaSlicer -ov -format UDZO OrcaSlicer_Mac_${{matrix.arch}}_V${{ env.ver }}.dmg
codesign --deep --force --verbose --options runtime --timestamp --entitlements ${{ github.workspace }}/scripts/disable_validation.entitlements --sign "$CERTIFICATE_ID" OrcaSlicer_Mac_${{matrix.arch}}_V${{ env.ver }}.dmg
codesign --deep --force --verbose --options runtime --timestamp --entitlements ${{ github.workspace }}/scripts/disable_validation.entitlements --sign "$CERTIFICATE_ID" ${{ github.workspace }}/build_${{inputs.arch}}/OrcaSlicer/OrcaSlicer.app
ln -s /Applications ${{ github.workspace }}/build_${{inputs.arch}}/OrcaSlicer/Applications
hdiutil create -volname "OrcaSlicer" -srcfolder ${{ github.workspace }}/build_${{inputs.arch}}/OrcaSlicer -ov -format UDZO OrcaSlicer_Mac_${{inputs.arch}}_${{ env.ver }}.dmg
codesign --deep --force --verbose --options runtime --timestamp --entitlements ${{ github.workspace }}/scripts/disable_validation.entitlements --sign "$CERTIFICATE_ID" OrcaSlicer_Mac_${{inputs.arch}}_${{ env.ver }}.dmg
xcrun notarytool store-credentials "notarytool-profile" --apple-id "${{ secrets.APPLE_DEV_ACCOUNT }}" --team-id "${{ secrets.TEAM_ID }}" --password "${{ secrets.APP_PWD }}"
xcrun notarytool submit "OrcaSlicer_Mac_${{matrix.arch}}_V${{ env.ver }}.dmg" --keychain-profile "notarytool-profile" --wait
xcrun stapler staple OrcaSlicer_Mac_${{matrix.arch}}_V${{ env.ver }}.dmg
xcrun notarytool submit "OrcaSlicer_Mac_${{inputs.arch}}_${{ env.ver }}.dmg" --keychain-profile "notarytool-profile" --wait
xcrun stapler staple OrcaSlicer_Mac_${{inputs.arch}}_${{ env.ver }}.dmg
- name: Create DMG without notary
if: github.ref != 'refs/heads/main' && matrix.os == 'macos-12'
if: github.ref != 'refs/heads/main' && inputs.os == 'macos-12'
working-directory: ${{ github.workspace }}
run: |
ln -s /Applications ${{ github.workspace }}/build_${{matrix.arch}}/OrcaSlicer/Applications
hdiutil create -volname "OrcaSlicer" -srcfolder ${{ github.workspace }}/build_${{matrix.arch}}/OrcaSlicer -ov -format UDZO OrcaSlicer_Mac_${{matrix.arch}}_V${{ env.ver }}.dmg
ln -s /Applications ${{ github.workspace }}/build_${{inputs.arch}}/OrcaSlicer/Applications
hdiutil create -volname "OrcaSlicer" -srcfolder ${{ github.workspace }}/build_${{inputs.arch}}/OrcaSlicer -ov -format UDZO OrcaSlicer_Mac_${{inputs.arch}}_${{ env.ver }}.dmg
- name: Upload artifacts mac
if: matrix.os == 'macos-12'
if: inputs.os == 'macos-12'
uses: actions/upload-artifact@v3
with:
name: OrcaSlicer_Mac_${{matrix.arch}}_V${{ env.ver }}
path: ${{ github.workspace }}/OrcaSlicer_Mac_${{matrix.arch}}_V${{ env.ver }}.dmg
name: OrcaSlicer_Mac_${{inputs.arch}}_${{ env.ver }}
path: ${{ github.workspace }}/OrcaSlicer_Mac_${{inputs.arch}}_${{ env.ver }}.dmg
# Windows
- name: setup MSVC
if: matrix.os == 'windows-2019'
if: inputs.os == 'windows-latest'
uses: microsoft/setup-msbuild@v1.1
- name: Install nsis
if: matrix.os == 'windows-2019'
if: inputs.os == 'windows-latest'
run: |
dir "C:/Program Files (x86)/Windows Kits/10/Include"
choco install nsis
- name: download deps
if: matrix.os == 'windows-2019'
shell: powershell
run: '(new-object System.Net.WebClient).DownloadFile("https://github.com/SoftFever/FileSharing/releases/download/4/OrcaSlicer_dep_18Jul2023.zip", "$env:temp\OrcaSlicer_dep_18Jul2023.zip")'
- name: maker dir
if: matrix.os == 'windows-2019'
working-directory: ${{ github.workspace }}
run: |
mkdir ${{ github.workspace }}/deps/build
mkdir ${{ github.workspace }}/deps/build/OrcaSlicer_dep
- name: extract deps
if: matrix.os == 'windows-2019'
working-directory: ${{ github.workspace }}/deps/build
shell: cmd
run: '"C:/Program Files/7-Zip/7z.exe" x %temp%\OrcaSlicer_dep_18Jul2023.zip'
# - name: build deps
# if: matrix.os == 'windows-2019'
# id: cache_deps
# uses: actions/cache@v3
# env:
# cache-name: ${{ runner.os }}-cache-orcaslicer_deps
# with:
# path: ${{ github.workspace }}/deps/build/OrcaSlicer_dep
# key: ${{ runner.os }}-build-${{ env.cache-name }}
# - if: ${{ steps.cache_deps.outputs.cache-hit != 'true' }}
# name: build deps
# working-directory: ${{ github.workspace }}
# continue-on-error: true
# run: .\build_release_vs2022.bat deps
# - run: Get-ChildItem ${{ github.workspace }}/deps/build/ -Exclude OrcaSlicer_dep | Remove-Item -Recurse -Force
- name: Build slicer Win
if: matrix.os == 'windows-2019'
if: inputs.os == 'windows-latest'
working-directory: ${{ github.workspace }}
run: .\build_release.bat slicer
run: .\build_release_vs2022.bat slicer
- name: Create installer Win
if: matrix.os == 'windows-2019'
if: inputs.os == 'windows-latest'
working-directory: ${{ github.workspace }}/build
run: |
cpack -G NSIS
# - name: pack app
# if: matrix.os == 'windows-2019'
# working-directory: ${{ github.workspace }}/build
# shell: cmd
# run: '"C:/Program Files/7-Zip/7z.exe" a -tzip OrcaSlicer_dev_build.zip ${{ github.workspace }}/build/OrcaSlicer'
- name: Pack app
if: inputs.os == 'windows-latest'
working-directory: ${{ github.workspace }}/build
shell: cmd
run: '"C:/Program Files/7-Zip/7z.exe" a -tzip OrcaSlicer_Windows_${{ env.ver }}_portable.zip ${{ github.workspace }}/build/OrcaSlicer'
- name: Pack PDB
if: inputs.os == 'windows-latest'
working-directory: ${{ github.workspace }}/build/src/Release
shell: cmd
run: '"C:/Program Files/7-Zip/7z.exe" a -m0=lzma2 -mx9 Debug_PDB_${{ env.ver }}_for_developers_only.7z *.pdb'
- name: Upload artifacts Win zip
if: matrix.os == 'windows-2019'
if: inputs.os == 'windows-latest'
uses: actions/upload-artifact@v3
with:
name: OrcaSlicer_Windows_V${{ env.ver }}_portable
path: ${{ github.workspace }}/build/OrcaSlicer
name: OrcaSlicer_Windows_${{ env.ver }}_portable
path: ${{ github.workspace }}/build/OrcaSlicer_Windows_${{ env.ver }}_portable.zip
- name: Upload artifacts Win installer
if: matrix.os == 'windows-2019'
if: inputs.os == 'windows-latest'
uses: actions/upload-artifact@v3
with:
name: OrcaSlicer_Windows_V${{ env.ver }}
name: OrcaSlicer_Windows_${{ env.ver }}
path: ${{ github.workspace }}/build/OrcaSlicer*.exe
# Ubuntu
- name: Upload artifacts Win PDB
if: inputs.os == 'windows-latest'
uses: actions/upload-artifact@v3
with:
name: PDB
path: ${{ github.workspace }}/build/src/Release/Debug_PDB_${{ env.ver }}_for_developers_only.7z
# Ubuntu
- name: Install dependencies
if: matrix.os == 'ubuntu-20.04'
if: inputs.os == 'ubuntu-20.04'
run: |
sudo apt-get update
sudo apt-get install -y autoconf build-essential cmake curl eglexternalplatform-dev \
@@ -236,52 +196,25 @@ jobs:
libwebkit2gtk-4.0-dev libxkbcommon-dev locales locales-all m4 pkgconf sudo wayland-protocols wget
- name: Install dependencies from BuildLinux.sh
if: matrix.os == 'ubuntu-20.04'
if: inputs.os == 'ubuntu-20.04'
shell: bash
run: sudo ./BuildLinux.sh -ur
- name: Fix permissions
if: matrix.os == 'ubuntu-20.04'
if: inputs.os == 'ubuntu-20.04'
shell: bash
run: sudo chown $USER -R ./
# - name: Build deps
# if: matrix.os == 'ubuntu-20.04'
# id: cache_deps
# uses: actions/cache@v3
# env:
# cache-name: ${{ runner.os }}-cache-orcaslicer_deps_x64
# with:
# path: ${{ github.workspace }}/deps/build/destdir
# key: build-${{ env.cache-name }}
# - if: ${{ steps.cache_deps.outputs.cache-hit != 'true' }}
# name: Build deps
# working-directory: ${{ github.workspace }}
# continue-on-error: true
# run: ./BuildLinux.sh -dr
- name: Download and extract deps
if: matrix.os == 'ubuntu-20.04'
working-directory: ${{ github.workspace }}
run: |
mkdir -p ${{ github.workspace }}/deps/build
mkdir -p ${{ github.workspace }}/deps/build/destdir
curl -LJO https://github.com/SoftFever/FileSharing/releases/download/2023.08/OrcaSlicer_dep_ubuntu_02-08-2023.tar.gz
tar -zxf OrcaSlicer_dep_ubuntu_02-08-2023.tar.gz -C ${{ github.workspace }}/deps/build
chown -R $(id -u):$(id -g) ${{ github.workspace }}/deps/build/destdir
ls -l ${{ github.workspace }}/deps/build/destdir
rm OrcaSlicer_dep_ubuntu_02-08-2023.tar.gz
- name: Build slicer
if: matrix.os == 'ubuntu-20.04'
if: inputs.os == 'ubuntu-20.04'
shell: bash
run: |
./BuildLinux.sh -isr
chmod +x ./build/OrcaSlicer_ubu64.AppImage
- name: Upload artifacts Ubuntu
if: matrix.os == 'ubuntu-20.04'
if: inputs.os == 'ubuntu-20.04'
uses: actions/upload-artifact@v3
with:
name: OrcaSlicer_Linux_V${{ env.ver }}
name: OrcaSlicer_Linux_${{ env.ver }}
path: './build/OrcaSlicer_ubu64.AppImage'

View File

@@ -21,6 +21,24 @@ jobs:
sudo apt-get update
sudo apt-get install -y gettext
# don't call ./run_gentext.sh as most translators never sync with main branch...
- name: Check translation format
run: |
./run_gettext.sh
echo $PWD
pot_file="./localization/i18n/OrcaSlicer.pot"
for dir in ./localization/i18n/*/
do
dir=${dir%*/} # remove the trailing "/"
lang=${dir##*/} # extract the language identifier
if [ -f "$dir/OrcaSlicer_${lang}.po" ]; then
mkdir -p ./resources/i18n/${lang}/
msgfmt --check-format -o ./resources/i18n/${lang}/OrcaSlicer.mo $dir/OrcaSlicer_${lang}.po
# Check the exit status of the msgfmt command
if [ $? -ne 0 ]; then
echo "Error encountered with msgfmt command for language ${lang}."
exit 1 # Exit the script with an error status
fi
fi
done

26
.github/workflows/orca_bot.yml vendored Normal file
View File

@@ -0,0 +1,26 @@
name: Orca bot
on:
schedule:
- cron: "0 0 * * *"
jobs:
close-issues:
runs-on: ubuntu-latest
permissions:
issues: write
pull-requests: write
steps:
- uses: actions/stale@v5
with:
days-before-issue-stale: 90
days-before-issue-close: 7
operations-per-run: 1000
stale-issue-label: "stale"
ascending: true
stale-issue-message: "GitHub bot: this issue is stale because it has been open for 90 days with no activity."
close-issue-message: "GitHub bot: This issue was closed because it has been inactive for 7 days since being marked as stale."
days-before-pr-stale: -1
days-before-pr-close: -1
remove-issue-stale-when-updated: true
remove-pr-stale-when-updated: true
repo-token: ${{ secrets.GITHUB_TOKEN }}

6
.gitignore vendored
View File

@@ -26,4 +26,8 @@ SVG
src/OrcaSlicer-doc/
.idea/
/.cache/
*.mo
*.mo
**/process_full/
**/machine_full/
**/filament_full/
/deps/DL_CACHE/

View File

@@ -1,5 +1,4 @@
#!/bin/bash
set -e # exit on first error
export ROOT=`pwd`
export NCORES=`nproc --all`
@@ -7,6 +6,8 @@ export CMAKE_BUILD_PARALLEL_LEVEL=${NCORES}
FOUND_GTK2=$(dpkg -l libgtk* | grep gtk2)
FOUND_GTK3=$(dpkg -l libgtk* | grep gtk-3)
set -e # exit on first error
function check_available_memory_and_disk() {
FREE_MEM_GB=$(free -g -t | grep 'Mem:' | rev | cut -d" " -f1 | rev)
MIN_MEM_GB=10
@@ -77,7 +78,7 @@ then
fi
# Addtional Dev packages for OrcaSlicer
export REQUIRED_DEV_PACKAGES="libmspack-dev libgstreamerd-3-dev libsecret-1-dev libwebkit2gtk-4.0-dev libosmesa6-dev libssl-dev libcurl4-openssl-dev eglexternalplatform-dev libudev-dev libdbus-1-dev extra-cmake-modules"
export REQUIRED_DEV_PACKAGES="libmspack-dev libgstreamerd-3-dev libsecret-1-dev libwebkit2gtk-4.0-dev libosmesa6-dev libssl-dev libcurl4-openssl-dev eglexternalplatform-dev libudev-dev libdbus-1-dev extra-cmake-modules texinfo"
# libwebkit2gtk-4.1-dev ??
export DEV_PACKAGES_COUNT=$(echo ${REQUIRED_DEV_PACKAGES} | wc -w)
if [ $(dpkg --get-selections | grep -E "$(echo ${REQUIRED_DEV_PACKAGES} | tr ' ' '|')" | wc -l) -lt ${DEV_PACKAGES_COUNT} ]; then
@@ -178,7 +179,7 @@ then
# make deps
echo "[4/9] Building dependencies..."
make -j$NCORES
make deps -j$NCORES
echo "done"
# rename wxscintilla # TODO: DeftDawg: Does OrcaSlicer need this?

View File

@@ -1,4 +1,13 @@
cmake_minimum_required(VERSION 3.13)
if (APPLE)
# if CMAKE_OSX_DEPLOYMENT_TARGET is not set, set it to 11.3
if (NOT CMAKE_OSX_DEPLOYMENT_TARGET)
set(CMAKE_OSX_DEPLOYMENT_TARGET "11.3" CACHE STRING "Minimum OS X deployment version" FORCE)
endif ()
message(STATUS "CMAKE_OSX_DEPLOYMENT_TARGET: ${CMAKE_OSX_DEPLOYMENT_TARGET}")
endif ()
project(OrcaSlicer)
include("version.inc")
@@ -52,9 +61,9 @@ if (APPLE)
if (CMAKE_MACOSX_BUNDLE)
set(CMAKE_INSTALL_RPATH @executable_path/../Frameworks)
endif()
set(CMAKE_OSX_DEPLOYMENT_TARGET "11.3" CACHE STRING "Minimum OS X deployment version" FORCE)
SET(CMAKE_XCODE_ATTRIBUTE_PRODUCT_BUNDLE_IDENTIFIER "com.softfever3d.orca-slicer")
message(STATUS "Orca: IS_CROSS_COMPILE: ${IS_CROSS_COMPILE}")
endif ()
# Proposal for C++ unit tests and sandboxes
@@ -113,6 +122,10 @@ if (MSVC)
add_compile_options(/wd4244 /wd4267)
endif ()
if (${CMAKE_CXX_COMPILER_ID} STREQUAL "AppleClang" AND ${CMAKE_CXX_COMPILER_VERSION} VERSION_GREATER 15)
add_compile_definitions(BOOST_NO_CXX98_FUNCTION_BASE _HAS_AUTO_PTR_ETC=0)
endif()
if (MINGW)
add_compile_options(-Wa,-mbig-obj)
endif ()
@@ -302,7 +315,7 @@ if(WIN32)
add_definitions(-D_USE_MATH_DEFINES -D_WIN32 -D_CRT_SECURE_NO_WARNINGS -D_SCL_SECURE_NO_WARNINGS)
if(MSVC)
# BOOST_ALL_NO_LIB: Avoid the automatic linking of Boost libraries on Windows. Rather rely on explicit linking.
add_definitions(-DBOOST_ALL_NO_LIB -DBOOST_USE_WINAPI_VERSION=0x601 -DBOOST_SYSTEM_USE_UTF8 )
add_definitions(-DBOOST_ALL_NO_LIB -DBOOST_USE_WINAPI_VERSION=0x602 -DBOOST_SYSTEM_USE_UTF8 )
# Force the source code encoding to UTF-8. See OrcaSlicer GH pull request #5583
add_compile_options("$<$<C_COMPILER_ID:MSVC>:/utf-8>")
add_compile_options("$<$<CXX_COMPILER_ID:MSVC>:/utf-8>")
@@ -328,6 +341,16 @@ if(CMAKE_CXX_FLAGS_RELWITHDEBINFO MATCHES "/O2")
string(REGEX REPLACE "/O2" "/Od" CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO}")
endif()
if("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang")
if(CMAKE_C_FLAGS_RELWITHDEBINFO MATCHES "-O2")
string(REGEX REPLACE "-O2" "-O0" CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO}")
endif()
if(CMAKE_CXX_FLAGS_RELWITHDEBINFO MATCHES "-O2")
string(REGEX REPLACE "-O2" "-O0" CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO}")
endif()
endif()
if(MSVC)
if(CMAKE_C_FLAGS_RELWITHDEBINFO MATCHES "/Ob1")
string(REGEX REPLACE "/Ob1" "/Ob0" CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO}")
@@ -422,11 +445,8 @@ find_package(TBB REQUIRED)
# add_definitions(-DTBB_USE_CAPTURED_EXCEPTION=0)
find_package(OpenSSL REQUIRED)
if (APPLE)
find_package(CURL CONFIG REQUIRED)
else()
find_package(CURL REQUIRED)
endif()
add_library(libcurl INTERFACE)
target_link_libraries(libcurl INTERFACE CURL::libcurl)
@@ -495,6 +515,8 @@ find_package(PNG REQUIRED)
set(OpenGL_GL_PREFERENCE "LEGACY")
find_package(OpenGL REQUIRED)
set(GLEW_ROOT "${CMAKE_PREFIX_PATH}")
message("GLEW_ROOT: ${GLEW_ROOT}")
# Find glew or use bundled version
if (SLIC3R_STATIC AND NOT SLIC3R_STATIC_EXCLUDE_GLEW)
set(GLEW_USE_STATIC_LIBS ON)
@@ -507,9 +529,11 @@ find_package(glfw3 REQUIRED)
# Find the Cereal serialization library
find_package(cereal REQUIRED)
set_target_properties(cereal PROPERTIES IMPORTED_GLOBAL TRUE)
if (NOT TARGET cereal::cereal)
set_target_properties(cereal PROPERTIES IMPORTED_GLOBAL TRUE)
add_library(cereal::cereal ALIAS cereal)
else ()
set_target_properties(cereal::cereal PROPERTIES IMPORTED_GLOBAL TRUE)
endif ()
# l10n
@@ -770,4 +794,4 @@ set (CPACK_RESOURCE_FILE_LICENSE ${CMAKE_SOURCE_DIR}/LICENSE.txt) # must also in
set(CPACK_WIX_UPGRADE_GUID "058245e8-20e0-4a95-9ab7-1acfe17ad511")
set(CPACK_GENERATOR NSIS)
include(CPack)
include(CPack)

View File

@@ -1,14 +1,14 @@
[![Build OrcaSlicer](https://github.com/SoftFever/OrcaSlicer/actions/workflows/build_orca.yml/badge.svg?branch=main)](https://github.com/SoftFever/OrcaSlicer/actions/workflows/build_orca.yml)
[![Build all](https://github.com/SoftFever/OrcaSlicer/actions/workflows/build_all.yml/badge.svg?branch=main)](https://github.com/SoftFever/OrcaSlicer/actions/workflows/build_all.yml)
# Orca Slicer
Orca Slicer is an open source slicer for FDM printers.
You can download Orca Slicer here: [github releases page](https://github.com/SoftFever/OrcaSlicer/releases/).
![discord-mark-blue](https://github.com/SoftFever/OrcaSlicer/assets/103989404/b97d5ffc-072d-4d0a-bbda-e67ef373876f) Join community: [OrcaSlicer Official Discord Server](https://discord.gg/WTEkCR6SnV)
![discord-mark-blue](https://github.com/SoftFever/OrcaSlicer/assets/103989404/b97d5ffc-072d-4d0a-bbda-e67ef373876f) Join community: [OrcaSlicer Official Discord Server](https://discord.gg/P4VE9UY9gJ)
# Main features
- Auto calibrations for all printers
- Sandwich(inner-outer-inner) mode - an improved version of the `External perimeters first` mode
- Precise wall
- [Precise wall](https://github.com/SoftFever/OrcaSlicer/wiki/Precise-wall)
- Polyholes conversion support [SuperSlicer Wiki: Polyholes](https://github.com/supermerill/SuperSlicer/wiki/Polyholes)
- Klipper support
- More granular controls
- More features can be found in [change notes](https://github.com/SoftFever/OrcaSlicer/releases/)
@@ -22,17 +22,22 @@ Orca Slicer's logo is designed by community member Justin Levine(@freejstnalxndr
# How to install
**Windows**:
1. Install and run
1. Download the installer for your preferred version from the [releases page](https://github.com/SoftFever/OrcaSlicer/releases).
- *For convenience there is also a portable build available.*
- *If you have troubles to run the build, you might need to install following runtimes:*
- [MicrosoftEdgeWebView2RuntimeInstallerX64](https://github.com/SoftFever/BambuStudio-SoftFever/releases/download/v1.0.10-sf2/MicrosoftEdgeWebView2RuntimeInstallerX64.exe)
- [vcredist2019_x64](https://github.com/SoftFever/BambuStudio-SoftFever/releases/download/v1.0.10-sf2/vcredist2019_x64.exe)
- [MicrosoftEdgeWebView2RuntimeInstallerX64](https://github.com/SoftFever/BambuStudio-SoftFever/releases/download/v1.0.10-sf2/MicrosoftEdgeWebView2RuntimeInstallerX64.exe)
- [Details of this runtime](https://aka.ms/webview2)
- [Alternative Download Link Hosted by Microsoft](https://go.microsoft.com/fwlink/p/?LinkId=2124703)
- [vcredist2019_x64](https://github.com/SoftFever/BambuStudio-SoftFever/releases/download/v1.0.10-sf2/vcredist2019_x64.exe)
- [Alternative Download Link Hosted by Microsoft](https://aka.ms/vs/17/release/vc_redist.x64.exe)
- This file may already be available on your computer if you've installed visual studio. Check the following location: `%VCINSTALLDIR%Redist\MSVC\v142`
**Mac**:
1. Download the DMG for your computer: `arm64` version for Apple Silicon and `x86_64` for Intel CPU.
2. Drag OrcaSlicer.app to Application folder.
3. *If you want to run a build from a PR, you also need following instructions bellow*
3. *If you want to run a build from a PR, you also need following instructions below*
<details quarantine>
- Option 1 (You only need to do this once. After that the app can be oppened normally.):
- Option 1 (You only need to do this once. After that the app can be opened normally.):
- Step 1: Hold _cmd_ and right click the app, from the context menu choose **Open**.
- Step 2: A warning window will pop up, click _Open_
@@ -51,16 +56,21 @@ Orca Slicer's logo is designed by community member Justin Levine(@freejstnalxndr
**Linux(Ubuntu)**:
1. If you run into trouble to execute it, try this command in terminal:
`chmod +x /path_to_appimage/OrcaSlicer_ubu64.AppImage`
# How to compile
- Windows 64-bit
- Tools needed: Visual Studio 2019, Cmake, git, Strawberry Perl.
- You will require cmake version 3.14 or later, which is available [on their website](https://cmake.org/download/).
- Strawberry Perl is [available on their github repository](https://github.com/StrawberryPerl/Perl-Dist-Strawberry/releases/).
- Run `build_release.bat` in `x64 Native Tools Command Prompt for VS 2019`
- Mac 64-bit
- Tools needed: Xcode, Cmake, git, gettext
- Tools needed: Xcode, Cmake, git, gettext, libtool, automake, autoconf, texinfo
- You can install most of them by running `brew install cmake gettext libtool automake autoconf texinfo`
- run `build_release_macos.sh`
- Ubuntu
- Ubuntu
- Dependencies **Will be auto installed with the shell script**: `libmspack-dev libgstreamerd-3-dev libsecret-1-dev libwebkit2gtk-4.0-dev libosmesa6-dev libssl-dev libcurl4-openssl-dev eglexternalplatform-dev libudev-dev libdbus-1-dev extra-cmake-modules libgtk2.0-dev libglew-dev libudev-dev libdbus-1-dev cmake git texinfo`
- run 'sudo ./BuildLinux.sh -u'
- run './BuildLinux.sh -dsir'
@@ -82,12 +92,28 @@ Their generous support enables me to purchase filaments and other essential 3D p
Thank you! :)
### Sponsors:
<table>
<tr>
<td>
<a href="https://peopoly.net/">
<img src="SoftFever_doc\sponsor_logos\peopoly-standard-logo.png" alt="Peopoly" width="64" height="">
</a>
</td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td>
<a href="https://qidi3d.com/">
<img src="SoftFever_doc\sponsor_logos\QIDI.png" alt="QIDI" width="64" height="">
</a>
</td>
</tr>
</table>
### Backers:
*todo: extract ko-fi backers list*
Ko-fi supporters: [Backers list](https://github.com/SoftFever/OrcaSlicer/wiki/OrcaSlicer-backers-%E2%80%90-28-Oct-2023)
Support me
[![ko-fi](https://ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/G2G5IP3CP)

Binary file not shown.

After

Width:  |  Height:  |  Size: 62 KiB

View File

@@ -1,6 +1,6 @@
#!/bin/sh
while getopts ":a:sdphn" opt; do
while getopts ":a:sdpt:hn" opt; do
case ${opt} in
d )
export BUILD_TARGET="deps"
@@ -17,11 +17,15 @@ while getopts ":a:sdphn" opt; do
n )
export NIGHTLY_BUILD="1"
;;
t )
export OSX_DEPLOYMENT_TARGET="$OPTARG"
;;
h ) echo "Usage: ./build_release_macos.sh [-d]"
echo " -d: Build deps only"
echo " -a: Set ARCHITECTURE (arm64 or x86_64)"
echo " -s: Build slicer only"
echo " -n: Nightly build"
echo " -t: Specify minimum version of the target platform, default is 11.3"
exit 0
;;
esac
@@ -34,19 +38,20 @@ fi
echo "Arch: $ARCH"
echo "BUILD_TARGET: $BUILD_TARGET"
echo "OSX_DEPLOYMENT_TARGET: $OSX_DEPLOYMENT_TARGET"
# if which -s brew; then
# brew --prefix libiconv
# brew --prefix zstd
# export LIBRARY_PATH=$LIBRARY_PATH:$(brew --prefix zstd)/lib/
# elif which -s port; then
# port install libiconv
# port install zstd
# export LIBRARY_PATH=$LIBRARY_PATH:/opt/local/lib
# else
# echo "Need either brew or macports to successfully build deps"
# exit 1
# fi
if which -s brew; then
brew --prefix libiconv
brew --prefix zstd
export LIBRARY_PATH=$LIBRARY_PATH:$(brew --prefix zstd)/lib/
elif which -s port; then
port install libiconv
port install zstd
export LIBRARY_PATH=$LIBRARY_PATH:/opt/local/lib
else
echo "Need either brew or macports to successfully build deps"
exit 1
fi
WD="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
cd $WD/deps
@@ -57,12 +62,12 @@ mkdir -p $DEPS
if [ "slicer." != $BUILD_TARGET. ];
then
echo "building deps..."
echo "cmake ../ -DDESTDIR=$DEPS -DOPENSSL_ARCH=darwin64-${ARCH}-cc -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_ARCHITECTURES:STRING=${ARCH}"
cmake ../ -DDESTDIR="$DEPS" -DOPENSSL_ARCH="darwin64-${ARCH}-cc" -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_ARCHITECTURES:STRING=${ARCH}
echo "cmake ../ -DDESTDIR=$DEPS -DOPENSSL_ARCH=darwin64-${ARCH}-cc -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_ARCHITECTURES:STRING=${ARCH} -DCMAKE_OSX_DEPLOYMENT_TARGET=${OSX_DEPLOYMENT_TARGET}"
cmake ../ -DDESTDIR="$DEPS" -DOPENSSL_ARCH="darwin64-${ARCH}-cc" -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_ARCHITECTURES:STRING=${ARCH} -DCMAKE_OSX_DEPLOYMENT_TARGET=${OSX_DEPLOYMENT_TARGET}
cmake --build . --config Release --target deps
if [ "1." == "$PACK_DEPS". ];
then
tar -zcvf OrcaSlicer_dep_mac_${ARCH}_$(date +"%d-%m-%Y").tar.gz OrcaSlicer_dep_$ARCH
tar -zcvf OrcaSlicer_dep_mac_${ARCH}_$(date +"%Y%m%d").tar.gz OrcaSlicer_dep_$ARCH
fi
fi
@@ -76,7 +81,7 @@ cd $WD
mkdir -p build_$ARCH
cd build_$ARCH
echo "building slicer..."
cmake .. -GXcode -DBBL_RELEASE_TO_PUBLIC=1 -DCMAKE_PREFIX_PATH="$DEPS/usr/local" -DCMAKE_INSTALL_PREFIX="$PWD/OrcaSlicer" -DCMAKE_BUILD_TYPE=Release -DCMAKE_MACOSX_RPATH=ON -DCMAKE_INSTALL_RPATH="$DEPS/usr/local" -DCMAKE_MACOSX_BUNDLE=ON -DCMAKE_OSX_ARCHITECTURES=${ARCH}
cmake .. -GXcode -DBBL_RELEASE_TO_PUBLIC=1 -DCMAKE_PREFIX_PATH="$DEPS/usr/local" -DCMAKE_INSTALL_PREFIX="$PWD/OrcaSlicer" -DCMAKE_BUILD_TYPE=Release -DCMAKE_MACOSX_RPATH=ON -DCMAKE_INSTALL_RPATH="$DEPS/usr/local" -DCMAKE_MACOSX_BUNDLE=ON -DCMAKE_OSX_ARCHITECTURES=${ARCH} -DCMAKE_OSX_DEPLOYMENT_TARGET=${OSX_DEPLOYMENT_TARGET}
cmake --build . --config Release --target ALL_BUILD
cd ..
./run_gettext.sh

View File

@@ -1,12 +1,30 @@
@REM OcarSlicer build script for Windows
@echo off
set WP=%CD%
@REM Pack deps
if "%1"=="pack" (
setlocal ENABLEDELAYEDEXPANSION
cd %WP%/deps/build
for /f "tokens=2-4 delims=/ " %%a in ('date /t') do set build_date=%%c%%b%%a
echo packing deps: OrcaSlicer_dep_win64_!build_date!_vs2022.zip
%WP%/tools/7z.exe a OrcaSlicer_dep_win64_!build_date!_vs2022.zip OrcaSlicer_dep
exit /b 0
)
setlocal DISABLEDELAYEDEXPANSION
cd deps
mkdir build
cd build
set DEPS=%CD%/OrcaSlicer_dep
if "%1"=="slicer" (
GOTO :slicer
)
echo "building deps.."
cmake ../ -G "Visual Studio 17 2022" -A x64 -DDESTDIR="%CD%/OrcaSlicer_dep" -DCMAKE_BUILD_TYPE=Release
cmake --build . --config Release --target deps -- -m
@@ -18,9 +36,10 @@ cd %WP%
mkdir build
cd build
cmake .. -G "Visual Studio 17 2022" -A x64 -DBBL_RELEASE_TO_PUBLIC=1 -DCMAKE_PREFIX_PATH="%DEPS%/usr/local" -DCMAKE_INSTALL_PREFIX="./OrcaSlicer" -DCMAKE_BUILD_TYPE=Release
echo cmake .. -G "Visual Studio 17 2022" -A x64 -DBBL_RELEASE_TO_PUBLIC=1 -DCMAKE_PREFIX_PATH="%DEPS%/usr/local" -DCMAKE_INSTALL_PREFIX="./OrcaSlicer" -DCMAKE_BUILD_TYPE=Release
cmake .. -G "Visual Studio 17 2022" -A x64 -DBBL_RELEASE_TO_PUBLIC=1 -DCMAKE_PREFIX_PATH="%DEPS%/usr/local" -DCMAKE_INSTALL_PREFIX="./OrcaSlicer" -DCMAKE_BUILD_TYPE=Release -DWIN10SDK_PATH="C:/Program Files (x86)/Windows Kits/10/Include/10.0.22000.0"
cmake --build . --config Release --target ALL_BUILD -- -m
cd ..
call run_gettext.bat
cd build
cmake --build . --target install --config Release
cmake --build . --target install --config Release

View File

@@ -64,16 +64,6 @@ This module defines the following variables:
include(FindPackageHandleStandardArgs)
find_package(GLEW CONFIG QUIET)
if(GLEW_FOUND)
find_package_handle_standard_args(GLEW DEFAULT_MSG GLEW_CONFIG)
return()
endif()
if(GLEW_VERBOSE)
message(STATUS "FindGLEW: did not find GLEW CMake config file. Searching for libraries.")
endif()
if(APPLE)
find_package(OpenGL QUIET)

216
deps/Boost/Boost.cmake vendored
View File

@@ -1,203 +1,25 @@
include(ExternalProject)
# Use boost 1.78 for Windows, to support VS2022
if (WIN32)
set(_boost_url "https://boostorg.jfrog.io/artifactory/main/release/1.78.0/source/boost_1_78_0.tar.gz")
set(_boost_hash 94CED8B72956591C4775AE2207A9763D3600B30D9D7446562C552F0A14A63BE7)
set(_bootstrap_cmd bootstrap.bat)
set(_build_cmd b2.exe)
else()
set(_boost_url "https://boostorg.jfrog.io/artifactory/main/release/1.75.0/source/boost_1_75_0.tar.gz")
set(_boost_hash AEB26F80E80945E82EE93E5939BAEBDCA47B9DEE80A07D3144BE1E1A6A66DD6A)
set(_bootstrap_cmd ./bootstrap.sh)
set(_build_cmd ./b2)
endif()
set(_patch_command ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_LIST_DIR}/common.jam ./tools/build/src/tools/common.jam)
if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
configure_file(${CMAKE_CURRENT_LIST_DIR}/user-config.jam boost-user-config.jam)
set(_boost_toolset gcc)
set(_patch_command ${_patch_command} && ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_BINARY_DIR}/boost-user-config.jam ./tools/build/src/tools/user-config.jam)
elseif (CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
# https://cmake.org/cmake/help/latest/variable/MSVC_VERSION.html
if (MSVC_VERSION EQUAL 1800)
# 1800 = VS 12.0 (v120 toolset)
set(_boost_toolset "msvc-12.0")
elseif (MSVC_VERSION EQUAL 1900)
# 1900 = VS 14.0 (v140 toolset)
set(_boost_toolset "msvc-14.0")
elseif (MSVC_VERSION LESS 1920)
# 1910-1919 = VS 15.0 (v141 toolset)
set(_boost_toolset "msvc-14.1")
elseif (MSVC_VERSION LESS 1930)
# 1920-1929 = VS 16.0 (v142 toolset)
set(_boost_toolset "msvc-14.2")
elseif (MSVC_VERSION LESS 1940)
# 1930-1939 = VS 17.0 (v143 toolset)
set(_boost_toolset "msvc-14.3")
else ()
message(FATAL_ERROR "Unsupported MSVC version")
set(_context_abi_line "")
set(_context_arch_line "")
if (APPLE AND CMAKE_OSX_ARCHITECTURES)
if (CMAKE_OSX_ARCHITECTURES MATCHES "x86")
set(_context_abi_line "-DBOOST_CONTEXT_ABI:STRING=sysv")
elseif (CMAKE_OSX_ARCHITECTURES MATCHES "arm")
set (_context_abi_line "-DBOOST_CONTEXT_ABI:STRING=aapcs")
endif ()
elseif (CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
if (WIN32)
set(_boost_toolset "clang-win")
else()
set(_boost_toolset "clang")
endif()
elseif (CMAKE_CXX_COMPILER_ID STREQUAL "Intel")
set(_boost_toolset "intel")
elseif (CMAKE_CXX_COMPILER_ID STREQUAL "AppleClang")
set(_boost_toolset "clang")
endif()
message(STATUS "Deduced boost toolset: ${_boost_toolset} based on ${CMAKE_CXX_COMPILER_ID} compiler")
set(_libs "")
foreach(_comp ${DEP_Boost_COMPONENTS})
list(APPEND _libs "--with-${_comp}")
endforeach()
if (BUILD_SHARED_LIBS)
set(_link shared)
else()
set(_link static)
endif()
set(_bits "")
if ("${CMAKE_SIZEOF_VOID_P}" STREQUAL "8")
set(_bits 64)
elseif ("${CMAKE_SIZEOF_VOID_P}" STREQUAL "4")
set(_bits 32)
set(_context_arch_line "-DBOOST_CONTEXT_ARCHITECTURE:STRING=${CMAKE_OSX_ARCHITECTURES}")
endif ()
include(ProcessorCount)
ProcessorCount(NPROC)
file(TO_NATIVE_PATH ${DESTDIR}/usr/local/ _prefix)
set(_boost_variants "")
if(CMAKE_BUILD_TYPE)
list(APPEND CMAKE_CONFIGURATION_TYPES ${CMAKE_BUILD_TYPE})
list(REMOVE_DUPLICATES CMAKE_CONFIGURATION_TYPES)
endif()
list(FIND CMAKE_CONFIGURATION_TYPES "Release" _cfg_rel)
list(FIND CMAKE_CONFIGURATION_TYPES "RelWithDebInfo" _cfg_relwdeb)
list(FIND CMAKE_CONFIGURATION_TYPES "MinSizeRel" _cfg_minsizerel)
list(FIND CMAKE_CONFIGURATION_TYPES "Debug" _cfg_deb)
if (_cfg_rel GREATER -1 OR _cfg_relwdeb GREATER -1 OR _cfg_minsizerel GREATER -1)
list(APPEND _boost_variants release)
endif()
if (MSVC AND ${DEP_DEBUG} )
list(APPEND _boost_variants debug)
endif()
if (NOT _boost_variants)
set(_boost_variants release)
endif()
if (IS_CROSS_COMPILE AND APPLE)
if (${CMAKE_OSX_ARCHITECTURES} MATCHES "arm")
message(STATUS "Compiling Boost for arm64.")
message(STATUS "Compiling Boost with toolset ${_boost_toolset}.")
message(STATUS "Compiling Boost with libs ${_libs}.")
message(STATUS "Compiling Boost with variant ${_boost_variants}.")
message(STATUS "Compiling Boost with _bootstrap_cmd ${_bootstrap_cmd}.")
message(STATUS "_boost_linkflags = ${_boost_linkflags}")
set(_arch_flags "-arch arm64")
set(_boost_linkflags "linkflags=${_arch_flags}")
message(STATUS "_cmake_args_osx_arch = '${_cmake_args_osx_arch}'")
elseif (${CMAKE_OSX_ARCHITECTURES} MATCHES "x86_64")
message(STATUS "Compiling Boost for x86_64.")
set(_arch_flags "-arch x86_64")
endif()
set(_boost_linkflags "linkflags=${_arch_flags}")
endif ()
set(_boost_flags "")
if(APPLE)
set(_boost_flags
"cflags=-fPIC ${_arch_flags} -mmacosx-version-min=${DEP_OSX_TARGET};"
"cxxflags=-fPIC ${_arch_flags} -mmacosx-version-min=${DEP_OSX_TARGET};"
"mflags=-fPIC ${_arch_flags} -mmacosx-version-min=${DEP_OSX_TARGET};"
"mmflags=-fPIC ${_arch_flags} -mmacosx-version-min=${DEP_OSX_TARGET}")
elseif (UNIX)
set(_boost_flags "cflags=-fPIC;cxxflags=-fPIC")
endif()
set(_build_cmd ${_build_cmd}
${_boost_flags}
${_boost_linkflags}
-j${NPROC}
${_libs}
--layout=versioned
--debug-configuration
toolset=${_boost_toolset}
address-model=${_bits}
link=${_link}
threading=multi
boost.locale.icu=off
--disable-icu
${_boost_variants}
stage)
set(_install_cmd ${_build_cmd} --prefix=${_prefix} install)
if (NOT IS_CROSS_COMPILE OR NOT APPLE OR BUILD_SHARED_LIBS)
message(STATUS "Standard boost build with bootstrap command '${_bootstrap_cmd}'")
message(STATUS "Standard boost build with patch command '${_patch_command}'")
message(STATUS "Standard boost build with build command '${_build_cmd}'")
message(STATUS "Standard boost build with install command '${_install_cmd}'")
ExternalProject_Add(
dep_Boost
URL ${_boost_url}
URL_HASH SHA256=${_boost_hash}
DOWNLOAD_DIR ${DEP_DOWNLOAD_DIR}/Boost
CONFIGURE_COMMAND "${_bootstrap_cmd}"
PATCH_COMMAND ${_patch_command}
BUILD_COMMAND "${_build_cmd}"
BUILD_IN_SOURCE ON
INSTALL_COMMAND "${_install_cmd}"
orcaslicer_add_cmake_project(Boost
URL "https://github.com/boostorg/boost/releases/download/boost-1.84.0/boost-1.84.0.tar.gz"
URL_HASH SHA256=4d27e9efed0f6f152dc28db6430b9d3dfb40c0345da7342eaa5a987dde57bd95
LIST_SEPARATOR |
CMAKE_ARGS
-DBOOST_EXCLUDE_LIBRARIES:STRING=contract|fiber|numpy|stacktrace|wave|test
-DBOOST_LOCALE_ENABLE_ICU:BOOL=OFF # do not link to libicu, breaks compatibility between distros
-DBUILD_TESTING:BOOL=OFF
"${_context_abi_line}"
"${_context_arch_line}"
)
else()
ExternalProject_Add(
dep_Boost
URL ${_boost_url}
URL_HASH SHA256=${_boost_hash}
DOWNLOAD_DIR ${DEP_DOWNLOAD_DIR}/Boost
CONFIGURE_COMMAND ./bootstrap.sh
--with-toolset=clang
--with-libraries=date_time,filesystem,iostreams,locale,log,regex,system,thread
"--prefix=${DESTDIR}/usr/local"
# PATCH_COMMAND ${_patch_command}
BUILD_COMMAND "${_build_cmd}"
BUILD_IN_SOURCE ON
INSTALL_COMMAND "${_install_cmd}"
)
endif()
if ("${CMAKE_SIZEOF_VOID_P}" STREQUAL "8")
message(STATUS "Patch the boost::polygon library with a custom one.")
# Patch the boost::polygon library with a custom one.
ExternalProject_Add(dep_boost_polygon
EXCLUDE_FROM_ALL ON
# GIT_REPOSITORY "https://github.com/prusa3d/polygon"
# GIT_TAG prusaslicer_gmp
URL https://github.com/prusa3d/polygon/archive/refs/heads/prusaslicer_gmp.zip
URL_HASH SHA256=abeb9710f0a7069fb9b22181ae5c56f6066002f125db210e7ffb27032aed6824
DOWNLOAD_DIR ${DEP_DOWNLOAD_DIR}/boost_polygon
DEPENDS dep_Boost
CONFIGURE_COMMAND ""
BUILD_COMMAND ""
${_cmake_args_osx_arch}
INSTALL_COMMAND ${CMAKE_COMMAND} -E copy_directory
"${CMAKE_CURRENT_BINARY_DIR}/dep_boost_polygon-prefix/src/dep_boost_polygon/include/boost/polygon"
"${DESTDIR}/usr/local/include/boost/polygon"
)
# Only override boost::Polygon Voronoi implementation with Vojtech's GMP hacks on 64bit platforms.
list(APPEND _dep_list "dep_boost_polygon")
endif ()
set(DEP_Boost_DEPENDS ZLIB)

28
deps/CGAL/CGAL.cmake vendored
View File

@@ -1,31 +1,11 @@
orcaslicer_add_cmake_project(
CGAL
GIT_REPOSITORY https://github.com/CGAL/cgal.git
GIT_TAG caacd806dc55c61cc68adaad99f2240f00493b29 # releases/CGAL-5.3
# GIT_REPOSITORY https://github.com/CGAL/cgal.git
# GIT_TAG bec70a6d52d8aacb0b3d82a7b4edc3caa899184b # releases/CGAL-5.0
# For whatever reason, this keeps downloading forever (repeats downloads if finished)
#URL https://github.com/CGAL/cgal/archive/releases/CGAL-5.0.zip
#URL_HASH SHA256=c2b035bd078687b6d8c0fb6371a7443adcdb647856af9969532c4050cd5f48e5
URL https://github.com/CGAL/cgal/archive/refs/tags/v5.4.zip
URL_HASH SHA256=d7605e0a5a5ca17da7547592f6f6e4a59430a0bc861948974254d0de43eab4c0
DEPENDS dep_Boost dep_GMP dep_MPFR
)
include(GNUInstallDirs)
# CGAL, for whatever reason, makes itself non-relocatable by writing the build directory into
# CGALConfig-installation-dirs.cmake and including it in configure time.
# If this file is not present, it will not consider the stored absolute path
ExternalProject_Add_Step(dep_CGAL dep_CGAL_relocation_fix
DEPENDEES install
COMMAND ${CMAKE_COMMAND} -E remove CGALConfig-installation-dirs.cmake
WORKING_DIRECTORY "${DESTDIR}/usr/local/${CMAKE_INSTALL_LIBDIR}/cmake/CGAL"
)
# Again, for whatever reason, CGAL thinks that its version is not relevant if
# configured as a header only library. Fixing it by placing a cmake version file
# besides the installed config file.
ExternalProject_Add_Step(dep_CGAL dep_CGAL_version_fix
DEPENDEES install
COMMAND ${CMAKE_COMMAND} -E copy cgal/CGALConfigVersion.cmake "${DESTDIR}/usr/local/${CMAKE_INSTALL_LIBDIR}/cmake/CGAL/CGALConfigVersion.cmake"
WORKING_DIRECTORY "${CMAKE_CURRENT_LIST_DIR}"
)

15
deps/CMakeLists.txt vendored
View File

@@ -20,8 +20,17 @@
# therefore, unfortunatelly, the installation cannot be copied/moved elsewhere without re-installing wxWidgets.
#
project(OrcaSlicer-deps)
cmake_minimum_required(VERSION 3.2)
if (APPLE)
# if CMAKE_OSX_DEPLOYMENT_TARGET is not set, set it to 11.3
if (NOT CMAKE_OSX_DEPLOYMENT_TARGET)
set(CMAKE_OSX_DEPLOYMENT_TARGET "11.3" CACHE STRING "Minimum OS X deployment version" FORCE)
endif ()
message(STATUS "CMAKE_OSX_DEPLOYMENT_TARGET: ${CMAKE_OSX_DEPLOYMENT_TARGET}")
endif ()
project(OrcaSlicer-deps)
include(ExternalProject)
include(ProcessorCount)
@@ -32,7 +41,7 @@ if (NPROC EQUAL 0)
endif ()
set(DESTDIR "${CMAKE_CURRENT_BINARY_DIR}/destdir" CACHE PATH "Destination directory")
set(DEP_DOWNLOAD_DIR ${CMAKE_CURRENT_BINARY_DIR} CACHE PATH "Path for downloaded source packages.")
set(DEP_DOWNLOAD_DIR ${CMAKE_CURRENT_BINARY_DIR}/../DL_CACHE CACHE PATH "Path for downloaded source packages.")
option(DEP_DEBUG "Build debug variants (only applicable on Windows)" OFF)
@@ -133,6 +142,7 @@ else()
${_gen}
CMAKE_ARGS
-DCMAKE_INSTALL_PREFIX:STRING=${DESTDIR}/usr/local
-DCMAKE_PREFIX_PATH:STRING=${DESTDIR}/usr/local
-DBUILD_SHARED_LIBS:BOOL=OFF
${_cmake_osx_arch}
"${_configs_line}"
@@ -162,7 +172,6 @@ if (MSVC)
endif ()
elseif (APPLE)
message("OS X SDK Path: ${CMAKE_OSX_SYSROOT}")
set(CMAKE_OSX_DEPLOYMENT_TARGET "11.3" CACHE STRING "Minimum OS X deployment version" FORCE)
if (CMAKE_OSX_DEPLOYMENT_TARGET)
set(DEP_OSX_TARGET "${CMAKE_OSX_DEPLOYMENT_TARGET}")
message("OS X Deployment Target: ${DEP_OSX_TARGET}")

View File

@@ -25,7 +25,8 @@ set(_curl_platform_flags
)
if (WIN32)
set(_curl_platform_flags ${_curl_platform_flags} -DCMAKE_USE_SCHANNEL=ON)
#set(_curl_platform_flags ${_curl_platform_flags} -DCMAKE_USE_SCHANNEL=ON)
set(_curl_platform_flags ${_curl_platform_flags} -DCMAKE_USE_OPENSSL=ON -DCURL_CA_PATH:STRING=none)
elseif (APPLE)
set(_curl_platform_flags
@@ -65,14 +66,15 @@ orcaslicer_add_cmake_project(CURL
# ${GIT_EXECUTABLE} apply --whitespace=fix ${CMAKE_CURRENT_LIST_DIR}/curl-mods.patch
CMAKE_ARGS
-DBUILD_TESTING:BOOL=OFF
-DBUILD_CURL_EXE:BOOL=OFF
-DCMAKE_POSITION_INDEPENDENT_CODE=ON
-DCURL_STATICLIB=${_curl_static}
${_curl_platform_flags}
)
if (CMAKE_SYSTEM_NAME STREQUAL "Linux")
# if (APPLE OR (CMAKE_SYSTEM_NAME STREQUAL "Linux"))
add_dependencies(dep_CURL dep_OpenSSL)
endif ()
# endif ()
if (MSVC)
add_debug_dep(dep_CURL)

View File

@@ -1,6 +1,12 @@
#/|/ Copyright (c) Prusa Research 2021 - 2022 Tomáš Mészáros @tamasmeszaros, Filip Sykala @Jony01
#/|/
#/|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
#/|/
orcaslicer_add_cmake_project(Cereal
URL "https://github.com/USCiLab/cereal/archive/v1.2.2.tar.gz"
URL_HASH SHA256=1921f26d2e1daf9132da3c432e2fd02093ecaedf846e65d7679ddf868c7289c4
URL "https://github.com/USCiLab/cereal/archive/refs/tags/v1.3.0.zip"
URL_HASH SHA256=71642cb54658e98c8f07a0f0d08bf9766f1c3771496936f6014169d3726d9657
CMAKE_ARGS
-DJUST_INSTALL_CEREAL=on
-DJUST_INSTALL_CEREAL=ON
-DSKIP_PERFORMANCE_COMPARISON=ON
-DBUILD_TESTS=OFF
)

View File

@@ -2,6 +2,65 @@ cmake_minimum_required(VERSION 3.0)
project(EXPAT)
include(${CMAKE_CURRENT_LIST_DIR}/ConfigureChecks.cmake)
macro(expat_shy_set var default cache type desc)
# Macro expat_shy_set came into life because:
# - Expat was previously using an inconsistent mix of CMake's native set()
# and option() to define public build time options.
# - option() is more friendly than set() with regard to configuring an
# external project that is pulled in by means of add_subdirectory() --
# see comments in issue #597 -- so we wanted to get away from set().
# - option() auto-converts non-bool values to bool when writing to the CMake
# cache, so we needed something that supports non-bool better and hence
# wanted to get away from plain option(), too.
#
# As a result, this function serves as a hybrid between CMake's regular set()
# and option(): from set() it takes support for non-bool types and the function
# name and signature whereas from option() (with policy CMP0077 mode NEW) it
# takes being shy when a value has previously been defined for that variable.
#
# So that resolves all need for set(.. FORCE) when pulling in Expat by means of
# add_subdirectory().
#
if(NOT ${cache} STREQUAL "CACHE")
message(SEND_ERROR "Macro usage is: expat_shy_set(var default CACHE type desc)")
endif()
if(DEFINED ${var})
# NOTE: The idea is to (ideally) only add to the cache if
# there is no cache entry, yet. "if(DEFINED CACHE{var})"
# requires CMake >=3.14.
if(CMAKE_VERSION VERSION_GREATER_EQUAL "3.14" AND NOT DEFINED "CACHE{${var}}")
set("${var}" "${${var}}" CACHE "${type}" "${desc}")
endif()
else()
set("${var}" "${default}" CACHE "${type}" "${desc}")
endif()
endmacro()
if(NOT WIN32)
expat_shy_set(EXPAT_WITH_GETRANDOM "AUTO" CACHE STRING "Make use of getrandom function (ON|OFF|AUTO) [default=AUTO]")
expat_shy_set(EXPAT_WITH_SYS_GETRANDOM "AUTO" CACHE STRING "Make use of syscall SYS_getrandom (ON|OFF|AUTO) [default=AUTO]")
endif()
macro(evaluate_detection_results use_ref have_ref thing_lower thing_title)
if(${use_ref} AND NOT (${use_ref} STREQUAL "AUTO") AND NOT ${have_ref})
message(SEND_ERROR
"Use of ${thing_lower} was enforced by ${use_ref}=ON but it could not be found.")
elseif(NOT ${use_ref} AND ${have_ref})
message("${thing_title} was found but it will not be used due to ${use_ref}=OFF.")
set(${have_ref} 0)
endif()
endmacro()
if(NOT WIN32)
evaluate_detection_results(EXPAT_WITH_GETRANDOM HAVE_GETRANDOM "function getrandom" "Function getrandom")
evaluate_detection_results(EXPAT_WITH_SYS_GETRANDOM HAVE_SYSCALL_GETRANDOM "syscall SYS_getrandom" "Syscall SYS_getrandom")
endif()
configure_file(expat_configure.h.cmake "${CMAKE_CURRENT_BINARY_DIR}/expat_configure.h")
if (BUILD_SHARED_LIBS AND MSVC)
set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON)
endif()
@@ -12,7 +71,7 @@ add_library(expat
xmltok.c
)
target_include_directories(expat PRIVATE ${PROJECT_SOURCE_DIR})
target_include_directories(expat PRIVATE ${PROJECT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR})
include(GNUInstallDirs)

View File

@@ -1,5 +1,5 @@
Copyright (c) 1998-2000 Thai Open Source Software Center Ltd and Clark Cooper
Copyright (c) 2001-2016 Expat maintainers
Copyright (c) 2001-2022 Expat maintainers
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the

69
deps/EXPAT/expat/ConfigureChecks.cmake vendored Normal file
View File

@@ -0,0 +1,69 @@
include(CheckCCompilerFlag)
include(CheckCSourceCompiles)
include(CheckIncludeFile)
include(CheckIncludeFiles)
include(CheckLibraryExists)
include(CheckSymbolExists)
include(TestBigEndian)
check_include_file("dlfcn.h" HAVE_DLFCN_H)
check_include_file("fcntl.h" HAVE_FCNTL_H)
check_include_file("inttypes.h" HAVE_INTTYPES_H)
check_include_file("memory.h" HAVE_MEMORY_H)
check_include_file("stdint.h" HAVE_STDINT_H)
check_include_file("stdlib.h" HAVE_STDLIB_H)
check_include_file("strings.h" HAVE_STRINGS_H)
check_include_file("string.h" HAVE_STRING_H)
check_include_file("sys/stat.h" HAVE_SYS_STAT_H)
check_include_file("sys/types.h" HAVE_SYS_TYPES_H)
check_include_file("unistd.h" HAVE_UNISTD_H)
check_symbol_exists("getpagesize" "unistd.h" HAVE_GETPAGESIZE)
check_symbol_exists("mmap" "sys/mman.h" HAVE_MMAP)
check_symbol_exists("getrandom" "sys/random.h" HAVE_GETRANDOM)
if(EXPAT_WITH_LIBBSD)
set(CMAKE_REQUIRED_LIBRARIES "${LIB_BSD}")
set(_bsd "bsd/")
else()
set(_bsd "")
endif()
check_symbol_exists("arc4random_buf" "${_bsd}stdlib.h" HAVE_ARC4RANDOM_BUF)
if(NOT HAVE_ARC4RANDOM_BUF)
check_symbol_exists("arc4random" "${_bsd}stdlib.h" HAVE_ARC4RANDOM)
endif()
set(CMAKE_REQUIRED_LIBRARIES)
#/* Define to 1 if you have the ANSI C header files. */
check_include_files("stdlib.h;stdarg.h;string.h;float.h" STDC_HEADERS)
test_big_endian(WORDS_BIGENDIAN)
#/* 1234 = LIL_ENDIAN, 4321 = BIGENDIAN */
if(WORDS_BIGENDIAN)
set(BYTEORDER 4321)
else(WORDS_BIGENDIAN)
set(BYTEORDER 1234)
endif(WORDS_BIGENDIAN)
if(HAVE_SYS_TYPES_H)
check_symbol_exists("off_t" "sys/types.h" OFF_T)
check_symbol_exists("size_t" "sys/types.h" SIZE_T)
else(HAVE_SYS_TYPES_H)
set(OFF_T "long")
set(SIZE_T "unsigned")
endif(HAVE_SYS_TYPES_H)
check_c_source_compiles("
#include <stdlib.h> /* for NULL */
#include <unistd.h> /* for syscall */
#include <sys/syscall.h> /* for SYS_getrandom */
int main() {
syscall(SYS_getrandom, NULL, 0, 0);
return 0;
}"
HAVE_SYSCALL_GETRANDOM)
check_c_compiler_flag("-fno-strict-aliasing" FLAG_NO_STRICT_ALIASING)
check_c_compiler_flag("-fvisibility=hidden" FLAG_VISIBILITY)
check_library_exists(m cos "" _EXPAT_LIBM_FOUND)

View File

@@ -1,146 +0,0 @@
Expat, Release 2.2.0, stripped and modified for inclusion into Slic3r.
Only the library sources needed for static linking were left.
The original README follows:
---------------------------------------------------------------------
Expat, Release 2.2.0
This is Expat, a C library for parsing XML, written by James Clark.
Expat is a stream-oriented XML parser. This means that you register
handlers with the parser before starting the parse. These handlers
are called when the parser discovers the associated structures in the
document being parsed. A start tag is an example of the kind of
structures for which you may register handlers.
Windows users should use the expat_win32bin package, which includes
both precompiled libraries and executables, and source code for
developers.
Expat is free software. You may copy, distribute, and modify it under
the terms of the License contained in the file COPYING distributed
with this package. This license is the same as the MIT/X Consortium
license.
Versions of Expat that have an odd minor version (the middle number in
the release above), are development releases and should be considered
as beta software. Releases with even minor version numbers are
intended to be production grade software.
If you are building Expat from a check-out from the CVS repository,
you need to run a script that generates the configure script using the
GNU autoconf and libtool tools. To do this, you need to have
autoconf 2.58 or newer. Run the script like this:
./buildconf.sh
Once this has been done, follow the same instructions as for building
from a source distribution.
To build Expat from a source distribution, you first run the
configuration shell script in the top level distribution directory:
./configure
There are many options which you may provide to configure (which you
can discover by running configure with the --help option). But the
one of most interest is the one that sets the installation directory.
By default, the configure script will set things up to install
libexpat into /usr/local/lib, expat.h into /usr/local/include, and
xmlwf into /usr/local/bin. If, for example, you'd prefer to install
into /home/me/mystuff/lib, /home/me/mystuff/include, and
/home/me/mystuff/bin, you can tell configure about that with:
./configure --prefix=/home/me/mystuff
Another interesting option is to enable 64-bit integer support for
line and column numbers and the over-all byte index:
./configure CPPFLAGS=-DXML_LARGE_SIZE
However, such a modification would be a breaking change to the ABI
and is therefore not recommended for general use - e.g. as part of
a Linux distribution - but rather for builds with special requirements.
After running the configure script, the "make" command will build
things and "make install" will install things into their proper
location. Have a look at the "Makefile" to learn about additional
"make" options. Note that you need to have write permission into
the directories into which things will be installed.
If you are interested in building Expat to provide document
information in UTF-16 encoding rather than the default UTF-8, follow
these instructions (after having run "make distclean"):
1. For UTF-16 output as unsigned short (and version/error
strings as char), run:
./configure CPPFLAGS=-DXML_UNICODE
For UTF-16 output as wchar_t (incl. version/error strings),
run:
./configure CFLAGS="-g -O2 -fshort-wchar" \
CPPFLAGS=-DXML_UNICODE_WCHAR_T
2. Edit the MakeFile, changing:
LIBRARY = libexpat.la
to:
LIBRARY = libexpatw.la
(Note the additional "w" in the library name.)
3. Run "make buildlib" (which builds the library only).
Or, to save step 2, run "make buildlib LIBRARY=libexpatw.la".
4. Run "make installlib" (which installs the library only).
Or, if step 2 was omitted, run "make installlib LIBRARY=libexpatw.la".
Using DESTDIR or INSTALL_ROOT is enabled, with INSTALL_ROOT being the default
value for DESTDIR, and the rest of the make file using only DESTDIR.
It works as follows:
$ make install DESTDIR=/path/to/image
overrides the in-makefile set DESTDIR, while both
$ INSTALL_ROOT=/path/to/image make install
$ make install INSTALL_ROOT=/path/to/image
use DESTDIR=$(INSTALL_ROOT), even if DESTDIR eventually is defined in the
environment, because variable-setting priority is
1) commandline
2) in-makefile
3) environment
Note: This only applies to the Expat library itself, building UTF-16 versions
of xmlwf and the tests is currently not supported.
Note for Solaris users: The "ar" command is usually located in
"/usr/ccs/bin", which is not in the default PATH. You will need to
add this to your path for the "make" command, and probably also switch
to GNU make (the "make" found in /usr/ccs/bin does not seem to work
properly -- apparently it does not understand .PHONY directives). If
you're using ksh or bash, use this command to build:
PATH=/usr/ccs/bin:$PATH make
When using Expat with a project using autoconf for configuration, you
can use the probing macro in conftools/expat.m4 to determine how to
include Expat. See the comments at the top of that file for more
information.
A reference manual is available in the file doc/reference.html in this
distribution.
The homepage for this project is http://www.libexpat.org/. There
are links there to connect you to the bug reports page. If you need
to report a bug when you don't have access to a browser, you may also
send a bug report by email to expat-bugs@mail.libexpat.org.
Discussion related to the direction of future expat development takes
place on expat-discuss@mail.libexpat.org. Archives of this list and
other Expat-related lists may be found at:
http://mail.libexpat.org/mailman/listinfo/

274
deps/EXPAT/expat/README.md vendored Normal file
View File

@@ -0,0 +1,274 @@
Expat, Release 2.5.0, only picked the lib related files into Bambu Studio, built as static library
The original README:
---------------------------------------------------------------------
[![Run Linux Travis CI tasks](https://github.com/libexpat/libexpat/actions/workflows/linux.yml/badge.svg)](https://github.com/libexpat/libexpat/actions/workflows/linux.yml)
[![AppVeyor Build Status](https://ci.appveyor.com/api/projects/status/github/libexpat/libexpat?svg=true)](https://ci.appveyor.com/project/libexpat/libexpat)
[![Packaging status](https://repology.org/badge/tiny-repos/expat.svg)](https://repology.org/metapackage/expat/versions)
[![Downloads SourceForge](https://img.shields.io/sourceforge/dt/expat?label=Downloads%20SourceForge)](https://sourceforge.net/projects/expat/files/)
[![Downloads GitHub](https://img.shields.io/github/downloads/libexpat/libexpat/total?label=Downloads%20GitHub)](https://github.com/libexpat/libexpat/releases)
# Expat, Release 2.5.0
This is Expat, a C library for parsing XML, started by
[James Clark](https://en.wikipedia.org/wiki/James_Clark_%28programmer%29) in 1997.
Expat is a stream-oriented XML parser. This means that you register
handlers with the parser before starting the parse. These handlers
are called when the parser discovers the associated structures in the
document being parsed. A start tag is an example of the kind of
structures for which you may register handlers.
Expat supports the following compilers:
- GNU GCC >=4.5
- LLVM Clang >=3.5
- Microsoft Visual Studio >=15.0/2017 (rolling `${today} minus 5 years`)
Windows users can use the
[`expat-win32bin-*.*.*.{exe,zip}` download](https://github.com/libexpat/libexpat/releases),
which includes both pre-compiled libraries and executables, and source code for
developers.
Expat is [free software](https://www.gnu.org/philosophy/free-sw.en.html).
You may copy, distribute, and modify it under the terms of the License
contained in the file
[`COPYING`](https://github.com/libexpat/libexpat/blob/master/expat/COPYING)
distributed with this package.
This license is the same as the MIT/X Consortium license.
## Using libexpat in your CMake-Based Project
There are two ways of using libexpat with CMake:
### a) Module Mode
This approach leverages CMake's own [module `FindEXPAT`](https://cmake.org/cmake/help/latest/module/FindEXPAT.html).
Notice the *uppercase* `EXPAT` in the following example:
```cmake
cmake_minimum_required(VERSION 3.0) # or 3.10, see below
project(hello VERSION 1.0.0)
find_package(EXPAT 2.2.8 MODULE REQUIRED)
add_executable(hello
hello.c
)
# a) for CMake >=3.10 (see CMake's FindEXPAT docs)
target_link_libraries(hello PUBLIC EXPAT::EXPAT)
# b) for CMake >=3.0
target_include_directories(hello PRIVATE ${EXPAT_INCLUDE_DIRS})
target_link_libraries(hello PUBLIC ${EXPAT_LIBRARIES})
```
### b) Config Mode
This approach requires files from…
- libexpat >=2.2.8 where packaging uses the CMake build system
or
- libexpat >=2.3.0 where packaging uses the GNU Autotools build system
on Linux
or
- libexpat >=2.4.0 where packaging uses the GNU Autotools build system
on macOS or MinGW.
Notice the *lowercase* `expat` in the following example:
```cmake
cmake_minimum_required(VERSION 3.0)
project(hello VERSION 1.0.0)
find_package(expat 2.2.8 CONFIG REQUIRED char dtd ns)
add_executable(hello
hello.c
)
target_link_libraries(hello PUBLIC expat::expat)
```
## Building from a Git Clone
If you are building Expat from a check-out from the
[Git repository](https://github.com/libexpat/libexpat/),
you need to run a script that generates the configure script using the
GNU autoconf and libtool tools. To do this, you need to have
autoconf 2.58 or newer. Run the script like this:
```console
./buildconf.sh
```
Once this has been done, follow the same instructions as for building
from a source distribution.
## Building from a Source Distribution
### a) Building with the configure script (i.e. GNU Autotools)
To build Expat from a source distribution, you first run the
configuration shell script in the top level distribution directory:
```console
./configure
```
There are many options which you may provide to configure (which you
can discover by running configure with the `--help` option). But the
one of most interest is the one that sets the installation directory.
By default, the configure script will set things up to install
libexpat into `/usr/local/lib`, `expat.h` into `/usr/local/include`, and
`xmlwf` into `/usr/local/bin`. If, for example, you'd prefer to install
into `/home/me/mystuff/lib`, `/home/me/mystuff/include`, and
`/home/me/mystuff/bin`, you can tell `configure` about that with:
```console
./configure --prefix=/home/me/mystuff
```
Another interesting option is to enable 64-bit integer support for
line and column numbers and the over-all byte index:
```console
./configure CPPFLAGS=-DXML_LARGE_SIZE
```
However, such a modification would be a breaking change to the ABI
and is therefore not recommended for general use &mdash; e.g. as part of
a Linux distribution &mdash; but rather for builds with special requirements.
After running the configure script, the `make` command will build
things and `make install` will install things into their proper
location. Have a look at the `Makefile` to learn about additional
`make` options. Note that you need to have write permission into
the directories into which things will be installed.
If you are interested in building Expat to provide document
information in UTF-16 encoding rather than the default UTF-8, follow
these instructions (after having run `make distclean`).
Please note that we configure with `--without-xmlwf` as xmlwf does not
support this mode of compilation (yet):
1. Mass-patch `Makefile.am` files to use `libexpatw.la` for a library name:
<br/>
`find -name Makefile.am -exec sed
-e 's,libexpat\.la,libexpatw.la,'
-e 's,libexpat_la,libexpatw_la,'
-i {} +`
1. Run `automake` to re-write `Makefile.in` files:<br/>
`automake`
1. For UTF-16 output as unsigned short (and version/error strings as char),
run:<br/>
`./configure CPPFLAGS=-DXML_UNICODE --without-xmlwf`<br/>
For UTF-16 output as `wchar_t` (incl. version/error strings), run:<br/>
`./configure CFLAGS="-g -O2 -fshort-wchar" CPPFLAGS=-DXML_UNICODE_WCHAR_T
--without-xmlwf`
<br/>Note: The latter requires libc compiled with `-fshort-wchar`, as well.
1. Run `make` (which excludes xmlwf).
1. Run `make install` (again, excludes xmlwf).
Using `DESTDIR` is supported. It works as follows:
```console
make install DESTDIR=/path/to/image
```
overrides the in-makefile set `DESTDIR`, because variable-setting priority is
1. commandline
1. in-makefile
1. environment
Note: This only applies to the Expat library itself, building UTF-16 versions
of xmlwf and the tests is currently not supported.
When using Expat with a project using autoconf for configuration, you
can use the probing macro in `conftools/expat.m4` to determine how to
include Expat. See the comments at the top of that file for more
information.
A reference manual is available in the file `doc/reference.html` in this
distribution.
### b) Building with CMake
The CMake build system is still *experimental* and may replace the primary
build system based on GNU Autotools at some point when it is ready.
#### Available Options
For an idea of the available (non-advanced) options for building with CMake:
```console
# rm -f CMakeCache.txt ; cmake -D_EXPAT_HELP=ON -LH . | grep -B1 ':.*=' | sed 's,^--$,,'
// Choose the type of build, options are: None Debug Release RelWithDebInfo MinSizeRel ...
CMAKE_BUILD_TYPE:STRING=
// Install path prefix, prepended onto install directories.
CMAKE_INSTALL_PREFIX:PATH=/usr/local
// Path to a program.
DOCBOOK_TO_MAN:FILEPATH=/usr/bin/docbook2x-man
// Build man page for xmlwf
EXPAT_BUILD_DOCS:BOOL=ON
// Build the examples for expat library
EXPAT_BUILD_EXAMPLES:BOOL=ON
// Build fuzzers for the expat library
EXPAT_BUILD_FUZZERS:BOOL=OFF
// Build pkg-config file
EXPAT_BUILD_PKGCONFIG:BOOL=ON
// Build the tests for expat library
EXPAT_BUILD_TESTS:BOOL=ON
// Build the xmlwf tool for expat library
EXPAT_BUILD_TOOLS:BOOL=ON
// Character type to use (char|ushort|wchar_t) [default=char]
EXPAT_CHAR_TYPE:STRING=char
// Install expat files in cmake install target
EXPAT_ENABLE_INSTALL:BOOL=ON
// Use /MT flag (static CRT) when compiling in MSVC
EXPAT_MSVC_STATIC_CRT:BOOL=OFF
// Build fuzzers via ossfuzz for the expat library
EXPAT_OSSFUZZ_BUILD:BOOL=OFF
// Build a shared expat library
EXPAT_SHARED_LIBS:BOOL=ON
// Treat all compiler warnings as errors
EXPAT_WARNINGS_AS_ERRORS:BOOL=OFF
// Make use of getrandom function (ON|OFF|AUTO) [default=AUTO]
EXPAT_WITH_GETRANDOM:STRING=AUTO
// Utilize libbsd (for arc4random_buf)
EXPAT_WITH_LIBBSD:BOOL=OFF
// Make use of syscall SYS_getrandom (ON|OFF|AUTO) [default=AUTO]
EXPAT_WITH_SYS_GETRANDOM:STRING=AUTO
```

View File

@@ -1,5 +1,36 @@
/* Copyright (c) 1998, 1999 Thai Open Source Software Center Ltd
See the file COPYING for copying permission.
/*
__ __ _
___\ \/ /_ __ __ _| |_
/ _ \\ /| '_ \ / _` | __|
| __// \| |_) | (_| | |_
\___/_/\_\ .__/ \__,_|\__|
|_| XML parser
Copyright (c) 1999-2000 Thai Open Source Software Center Ltd
Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
Copyright (c) 2002 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
Copyright (c) 2007 Karl Waclawek <karl@waclawek.net>
Copyright (c) 2017 Sebastian Pipping <sebastian@pipping.org>
Licensed under the MIT license:
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to permit
persons to whom the Software is furnished to do so, subject to the
following conditions:
The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
#define ASCII_A 0x41

View File

@@ -1,36 +1,66 @@
/* Copyright (c) 1998, 1999 Thai Open Source Software Center Ltd
See the file COPYING for copying permission.
/*
__ __ _
___\ \/ /_ __ __ _| |_
/ _ \\ /| '_ \ / _` | __|
| __// \| |_) | (_| | |_
\___/_/\_\ .__/ \__,_|\__|
|_| XML parser
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
Copyright (c) 2002 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
Copyright (c) 2017 Sebastian Pipping <sebastian@pipping.org>
Licensed under the MIT license:
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to permit
persons to whom the Software is furnished to do so, subject to the
following conditions:
The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
/* 0x00 */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
/* 0x04 */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
/* 0x08 */ BT_NONXML, BT_S, BT_LF, BT_NONXML,
/* 0x0C */ BT_NONXML, BT_CR, BT_NONXML, BT_NONXML,
/* 0x10 */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
/* 0x14 */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
/* 0x18 */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
/* 0x1C */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
/* 0x20 */ BT_S, BT_EXCL, BT_QUOT, BT_NUM,
/* 0x24 */ BT_OTHER, BT_PERCNT, BT_AMP, BT_APOS,
/* 0x28 */ BT_LPAR, BT_RPAR, BT_AST, BT_PLUS,
/* 0x2C */ BT_COMMA, BT_MINUS, BT_NAME, BT_SOL,
/* 0x30 */ BT_DIGIT, BT_DIGIT, BT_DIGIT, BT_DIGIT,
/* 0x34 */ BT_DIGIT, BT_DIGIT, BT_DIGIT, BT_DIGIT,
/* 0x38 */ BT_DIGIT, BT_DIGIT, BT_COLON, BT_SEMI,
/* 0x3C */ BT_LT, BT_EQUALS, BT_GT, BT_QUEST,
/* 0x40 */ BT_OTHER, BT_HEX, BT_HEX, BT_HEX,
/* 0x44 */ BT_HEX, BT_HEX, BT_HEX, BT_NMSTRT,
/* 0x48 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0x4C */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0x50 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0x54 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0x58 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_LSQB,
/* 0x5C */ BT_OTHER, BT_RSQB, BT_OTHER, BT_NMSTRT,
/* 0x60 */ BT_OTHER, BT_HEX, BT_HEX, BT_HEX,
/* 0x64 */ BT_HEX, BT_HEX, BT_HEX, BT_NMSTRT,
/* 0x68 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0x6C */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0x70 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0x74 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0x78 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_OTHER,
/* 0x7C */ BT_VERBAR, BT_OTHER, BT_OTHER, BT_OTHER,
/* 0x04 */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
/* 0x08 */ BT_NONXML, BT_S, BT_LF, BT_NONXML,
/* 0x0C */ BT_NONXML, BT_CR, BT_NONXML, BT_NONXML,
/* 0x10 */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
/* 0x14 */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
/* 0x18 */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
/* 0x1C */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
/* 0x20 */ BT_S, BT_EXCL, BT_QUOT, BT_NUM,
/* 0x24 */ BT_OTHER, BT_PERCNT, BT_AMP, BT_APOS,
/* 0x28 */ BT_LPAR, BT_RPAR, BT_AST, BT_PLUS,
/* 0x2C */ BT_COMMA, BT_MINUS, BT_NAME, BT_SOL,
/* 0x30 */ BT_DIGIT, BT_DIGIT, BT_DIGIT, BT_DIGIT,
/* 0x34 */ BT_DIGIT, BT_DIGIT, BT_DIGIT, BT_DIGIT,
/* 0x38 */ BT_DIGIT, BT_DIGIT, BT_COLON, BT_SEMI,
/* 0x3C */ BT_LT, BT_EQUALS, BT_GT, BT_QUEST,
/* 0x40 */ BT_OTHER, BT_HEX, BT_HEX, BT_HEX,
/* 0x44 */ BT_HEX, BT_HEX, BT_HEX, BT_NMSTRT,
/* 0x48 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0x4C */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0x50 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0x54 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0x58 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_LSQB,
/* 0x5C */ BT_OTHER, BT_RSQB, BT_OTHER, BT_NMSTRT,
/* 0x60 */ BT_OTHER, BT_HEX, BT_HEX, BT_HEX,
/* 0x64 */ BT_HEX, BT_HEX, BT_HEX, BT_NMSTRT,
/* 0x68 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0x6C */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0x70 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0x74 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0x78 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_OTHER,
/* 0x7C */ BT_VERBAR, BT_OTHER, BT_OTHER, BT_OTHER,

View File

@@ -1,4 +1,4 @@
include(${CMAKE_CURRENT_LIST_DIR}/EXPATTargets.cmake)
set(EXPAT_LIBRARIES EXPAT::expat)
set(EXPAT_INCLUDE_DIRS ${_IMPORT_PREFIX}/${CMAKE_INSTALL_INCLUDEDIR})
include(${CMAKE_CURRENT_LIST_DIR}/EXPATTargets.cmake)
set(EXPAT_LIBRARIES EXPAT::expat)
set(EXPAT_INCLUDE_DIRS ${_IMPORT_PREFIX}/${CMAKE_INSTALL_INCLUDEDIR})

View File

@@ -1,19 +1,46 @@
/* Copyright (c) 1998, 1999, 2000 Thai Open Source Software Center Ltd
See the file COPYING for copying permission.
/*
__ __ _
___\ \/ /_ __ __ _| |_
/ _ \\ /| '_ \ / _` | __|
| __// \| |_) | (_| | |_
\___/_/\_\ .__/ \__,_|\__|
|_| XML parser
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
Copyright (c) 2000-2005 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
Copyright (c) 2001-2002 Greg Stein <gstein@users.sourceforge.net>
Copyright (c) 2002-2016 Karl Waclawek <karl@waclawek.net>
Copyright (c) 2016-2022 Sebastian Pipping <sebastian@pipping.org>
Copyright (c) 2016 Cristian Rodríguez <crrodriguez@opensuse.org>
Copyright (c) 2016 Thomas Beutlich <tc@tbeu.de>
Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk>
Copyright (c) 2022 Thijs Schreijer <thijs@thijsschreijer.nl>
Licensed under the MIT license:
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to permit
persons to whom the Software is furnished to do so, subject to the
following conditions:
The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
#ifndef Expat_INCLUDED
#define Expat_INCLUDED 1
#ifdef __VMS
/* 0 1 2 3 0 1 2 3
1234567890123456789012345678901 1234567890123456789012345678901 */
#define XML_SetProcessingInstructionHandler XML_SetProcessingInstrHandler
#define XML_SetUnparsedEntityDeclHandler XML_SetUnparsedEntDeclHandler
#define XML_SetStartNamespaceDeclHandler XML_SetStartNamespcDeclHandler
#define XML_SetExternalEntityRefHandlerArg XML_SetExternalEntRefHandlerArg
#endif
#include <stdlib.h>
#include "expat_external.h"
@@ -24,10 +51,9 @@ extern "C" {
struct XML_ParserStruct;
typedef struct XML_ParserStruct *XML_Parser;
/* Should this be defined using stdbool.h when C99 is available? */
typedef unsigned char XML_Bool;
#define XML_TRUE ((XML_Bool) 1)
#define XML_FALSE ((XML_Bool) 0)
#define XML_TRUE ((XML_Bool)1)
#define XML_FALSE ((XML_Bool)0)
/* The XML_Status enum gives the possible return values for several
API functions. The preprocessor #defines are included so this
@@ -95,7 +121,13 @@ enum XML_Error {
/* Added in 2.0. */
XML_ERROR_RESERVED_PREFIX_XML,
XML_ERROR_RESERVED_PREFIX_XMLNS,
XML_ERROR_RESERVED_NAMESPACE_URI
XML_ERROR_RESERVED_NAMESPACE_URI,
/* Added in 2.2.1. */
XML_ERROR_INVALID_ARGUMENT,
/* Added in 2.3.0. */
XML_ERROR_NO_BUFFER,
/* Added in 2.4.0. */
XML_ERROR_AMPLIFICATION_LIMIT_BREACH
};
enum XML_Content_Type {
@@ -135,25 +167,25 @@ enum XML_Content_Quant {
typedef struct XML_cp XML_Content;
struct XML_cp {
enum XML_Content_Type type;
enum XML_Content_Quant quant;
XML_Char * name;
unsigned int numchildren;
XML_Content * children;
enum XML_Content_Type type;
enum XML_Content_Quant quant;
XML_Char *name;
unsigned int numchildren;
XML_Content *children;
};
/* This is called for an element declaration. See above for
description of the model argument. It's the caller's responsibility
to free model when finished with it.
description of the model argument. It's the user code's responsibility
to free model when finished with it. See XML_FreeContentModel.
There is no need to free the model from the handler, it can be kept
around and freed at a later stage.
*/
typedef void (XMLCALL *XML_ElementDeclHandler) (void *userData,
const XML_Char *name,
XML_Content *model);
typedef void(XMLCALL *XML_ElementDeclHandler)(void *userData,
const XML_Char *name,
XML_Content *model);
XMLPARSEAPI(void)
XML_SetElementDeclHandler(XML_Parser parser,
XML_ElementDeclHandler eldecl);
XML_SetElementDeclHandler(XML_Parser parser, XML_ElementDeclHandler eldecl);
/* The Attlist declaration handler is called for *each* attribute. So
a single Attlist declaration with multiple attributes declared will
@@ -163,17 +195,12 @@ XML_SetElementDeclHandler(XML_Parser parser,
value will be NULL in the case of "#REQUIRED". If "isrequired" is
true and default is non-NULL, then this is a "#FIXED" default.
*/
typedef void (XMLCALL *XML_AttlistDeclHandler) (
void *userData,
const XML_Char *elname,
const XML_Char *attname,
const XML_Char *att_type,
const XML_Char *dflt,
int isrequired);
typedef void(XMLCALL *XML_AttlistDeclHandler)(
void *userData, const XML_Char *elname, const XML_Char *attname,
const XML_Char *att_type, const XML_Char *dflt, int isrequired);
XMLPARSEAPI(void)
XML_SetAttlistDeclHandler(XML_Parser parser,
XML_AttlistDeclHandler attdecl);
XML_SetAttlistDeclHandler(XML_Parser parser, XML_AttlistDeclHandler attdecl);
/* The XML declaration handler is called for *both* XML declarations
and text declarations. The way to distinguish is that the version
@@ -183,15 +210,13 @@ XML_SetAttlistDeclHandler(XML_Parser parser,
was no standalone parameter in the declaration, that it was given
as no, or that it was given as yes.
*/
typedef void (XMLCALL *XML_XmlDeclHandler) (void *userData,
const XML_Char *version,
const XML_Char *encoding,
int standalone);
typedef void(XMLCALL *XML_XmlDeclHandler)(void *userData,
const XML_Char *version,
const XML_Char *encoding,
int standalone);
XMLPARSEAPI(void)
XML_SetXmlDeclHandler(XML_Parser parser,
XML_XmlDeclHandler xmldecl);
XML_SetXmlDeclHandler(XML_Parser parser, XML_XmlDeclHandler xmldecl);
typedef struct {
void *(*malloc_fcn)(size_t size);
@@ -215,11 +240,21 @@ XML_ParserCreate(const XML_Char *encoding);
and the local part will be concatenated without any separator.
It is a programming error to use the separator '\0' with namespace
triplets (see XML_SetReturnNSTriplet).
If a namespace separator is chosen that can be part of a URI or
part of an XML name, splitting an expanded name back into its
1, 2 or 3 original parts on application level in the element handler
may end up vulnerable, so these are advised against; sane choices for
a namespace separator are e.g. '\n' (line feed) and '|' (pipe).
Note that Expat does not validate namespace URIs (beyond encoding)
against RFC 3986 today (and is not required to do so with regard to
the XML 1.0 namespaces specification) but it may start doing that
in future releases. Before that, an application using Expat must
be ready to receive namespace URIs containing non-URI characters.
*/
XMLPARSEAPI(XML_Parser)
XML_ParserCreateNS(const XML_Char *encoding, XML_Char namespaceSeparator);
/* Constructs a new parser using the memory management suite referred to
by memsuite. If memsuite is NULL, then use the standard library memory
suite. If namespaceSeparator is non-NULL it creates a parser with
@@ -235,7 +270,7 @@ XML_ParserCreate_MM(const XML_Char *encoding,
const XML_Char *namespaceSeparator);
/* Prepare a parser object to be re-used. This is particularly
valuable when memory allocation overhead is disproportionatly high,
valuable when memory allocation overhead is disproportionately high,
such as when a large number of small documnents need to be parsed.
All handlers are cleared from the parser, except for the
unknownEncodingHandler. The parser's external state is re-initialized
@@ -249,31 +284,27 @@ XML_ParserReset(XML_Parser parser, const XML_Char *encoding);
/* atts is array of name/value pairs, terminated by 0;
names and values are 0 terminated.
*/
typedef void (XMLCALL *XML_StartElementHandler) (void *userData,
const XML_Char *name,
const XML_Char **atts);
typedef void (XMLCALL *XML_EndElementHandler) (void *userData,
const XML_Char *name);
typedef void(XMLCALL *XML_StartElementHandler)(void *userData,
const XML_Char *name,
const XML_Char **atts);
typedef void(XMLCALL *XML_EndElementHandler)(void *userData,
const XML_Char *name);
/* s is not 0 terminated. */
typedef void (XMLCALL *XML_CharacterDataHandler) (void *userData,
const XML_Char *s,
int len);
typedef void(XMLCALL *XML_CharacterDataHandler)(void *userData,
const XML_Char *s, int len);
/* target and data are 0 terminated */
typedef void (XMLCALL *XML_ProcessingInstructionHandler) (
void *userData,
const XML_Char *target,
const XML_Char *data);
typedef void(XMLCALL *XML_ProcessingInstructionHandler)(void *userData,
const XML_Char *target,
const XML_Char *data);
/* data is 0 terminated */
typedef void (XMLCALL *XML_CommentHandler) (void *userData,
const XML_Char *data);
typedef void(XMLCALL *XML_CommentHandler)(void *userData, const XML_Char *data);
typedef void (XMLCALL *XML_StartCdataSectionHandler) (void *userData);
typedef void (XMLCALL *XML_EndCdataSectionHandler) (void *userData);
typedef void(XMLCALL *XML_StartCdataSectionHandler)(void *userData);
typedef void(XMLCALL *XML_EndCdataSectionHandler)(void *userData);
/* This is called for any characters in the XML document for which
there is no applicable handler. This includes both characters that
@@ -288,25 +319,23 @@ typedef void (XMLCALL *XML_EndCdataSectionHandler) (void *userData);
default handler: for example, a comment might be split between
multiple calls.
*/
typedef void (XMLCALL *XML_DefaultHandler) (void *userData,
const XML_Char *s,
int len);
typedef void(XMLCALL *XML_DefaultHandler)(void *userData, const XML_Char *s,
int len);
/* This is called for the start of the DOCTYPE declaration, before
any DTD or internal subset is parsed.
*/
typedef void (XMLCALL *XML_StartDoctypeDeclHandler) (
void *userData,
const XML_Char *doctypeName,
const XML_Char *sysid,
const XML_Char *pubid,
int has_internal_subset);
typedef void(XMLCALL *XML_StartDoctypeDeclHandler)(void *userData,
const XML_Char *doctypeName,
const XML_Char *sysid,
const XML_Char *pubid,
int has_internal_subset);
/* This is called for the start of the DOCTYPE declaration when the
/* This is called for the end of the DOCTYPE declaration when the
closing > is encountered, but after processing any external
subset.
*/
typedef void (XMLCALL *XML_EndDoctypeDeclHandler)(void *userData);
typedef void(XMLCALL *XML_EndDoctypeDeclHandler)(void *userData);
/* This is called for entity declarations. The is_parameter_entity
argument will be non-zero if the entity is a parameter entity, zero
@@ -314,7 +343,7 @@ typedef void (XMLCALL *XML_EndDoctypeDeclHandler)(void *userData);
For internal entities (<!ENTITY foo "bar">), value will
be non-NULL and systemId, publicID, and notationName will be NULL.
The value string is NOT nul-terminated; the length is provided in
The value string is NOT null-terminated; the length is provided in
the value_length argument. Since it is legal to have zero-length
values, do not use this argument to test for internal entities.
@@ -326,20 +355,14 @@ typedef void (XMLCALL *XML_EndDoctypeDeclHandler)(void *userData);
Note that is_parameter_entity can't be changed to XML_Bool, since
that would break binary compatibility.
*/
typedef void (XMLCALL *XML_EntityDeclHandler) (
void *userData,
const XML_Char *entityName,
int is_parameter_entity,
const XML_Char *value,
int value_length,
const XML_Char *base,
const XML_Char *systemId,
const XML_Char *publicId,
const XML_Char *notationName);
typedef void(XMLCALL *XML_EntityDeclHandler)(
void *userData, const XML_Char *entityName, int is_parameter_entity,
const XML_Char *value, int value_length, const XML_Char *base,
const XML_Char *systemId, const XML_Char *publicId,
const XML_Char *notationName);
XMLPARSEAPI(void)
XML_SetEntityDeclHandler(XML_Parser parser,
XML_EntityDeclHandler handler);
XML_SetEntityDeclHandler(XML_Parser parser, XML_EntityDeclHandler handler);
/* OBSOLETE -- OBSOLETE -- OBSOLETE
This handler has been superseded by the EntityDeclHandler above.
@@ -350,24 +373,20 @@ XML_SetEntityDeclHandler(XML_Parser parser,
entityName, systemId and notationName arguments will never be
NULL. The other arguments may be.
*/
typedef void (XMLCALL *XML_UnparsedEntityDeclHandler) (
void *userData,
const XML_Char *entityName,
const XML_Char *base,
const XML_Char *systemId,
const XML_Char *publicId,
const XML_Char *notationName);
typedef void(XMLCALL *XML_UnparsedEntityDeclHandler)(
void *userData, const XML_Char *entityName, const XML_Char *base,
const XML_Char *systemId, const XML_Char *publicId,
const XML_Char *notationName);
/* This is called for a declaration of notation. The base argument is
whatever was set by XML_SetBase. The notationName will never be
NULL. The other arguments can be.
*/
typedef void (XMLCALL *XML_NotationDeclHandler) (
void *userData,
const XML_Char *notationName,
const XML_Char *base,
const XML_Char *systemId,
const XML_Char *publicId);
typedef void(XMLCALL *XML_NotationDeclHandler)(void *userData,
const XML_Char *notationName,
const XML_Char *base,
const XML_Char *systemId,
const XML_Char *publicId);
/* When namespace processing is enabled, these are called once for
each namespace declaration. The call to the start and end element
@@ -375,14 +394,12 @@ typedef void (XMLCALL *XML_NotationDeclHandler) (
declaration handlers. For an xmlns attribute, prefix will be
NULL. For an xmlns="" attribute, uri will be NULL.
*/
typedef void (XMLCALL *XML_StartNamespaceDeclHandler) (
void *userData,
const XML_Char *prefix,
const XML_Char *uri);
typedef void(XMLCALL *XML_StartNamespaceDeclHandler)(void *userData,
const XML_Char *prefix,
const XML_Char *uri);
typedef void (XMLCALL *XML_EndNamespaceDeclHandler) (
void *userData,
const XML_Char *prefix);
typedef void(XMLCALL *XML_EndNamespaceDeclHandler)(void *userData,
const XML_Char *prefix);
/* This is called if the document is not standalone, that is, it has an
external subset or a reference to a parameter entity, but does not
@@ -393,7 +410,7 @@ typedef void (XMLCALL *XML_EndNamespaceDeclHandler) (
conditions above this handler will only be called if the referenced
entity was actually read.
*/
typedef int (XMLCALL *XML_NotStandaloneHandler) (void *userData);
typedef int(XMLCALL *XML_NotStandaloneHandler)(void *userData);
/* This is called for a reference to an external parsed general
entity. The referenced entity is not automatically parsed. The
@@ -429,12 +446,11 @@ typedef int (XMLCALL *XML_NotStandaloneHandler) (void *userData);
Note that unlike other handlers the first argument is the parser,
not userData.
*/
typedef int (XMLCALL *XML_ExternalEntityRefHandler) (
XML_Parser parser,
const XML_Char *context,
const XML_Char *base,
const XML_Char *systemId,
const XML_Char *publicId);
typedef int(XMLCALL *XML_ExternalEntityRefHandler)(XML_Parser parser,
const XML_Char *context,
const XML_Char *base,
const XML_Char *systemId,
const XML_Char *publicId);
/* This is called in two situations:
1) An entity reference is encountered for which no declaration
@@ -446,10 +462,9 @@ typedef int (XMLCALL *XML_ExternalEntityRefHandler) (
the event would be out of sync with the reporting of the
declarations or attribute values
*/
typedef void (XMLCALL *XML_SkippedEntityHandler) (
void *userData,
const XML_Char *entityName,
int is_parameter_entity);
typedef void(XMLCALL *XML_SkippedEntityHandler)(void *userData,
const XML_Char *entityName,
int is_parameter_entity);
/* This structure is filled in by the XML_UnknownEncodingHandler to
provide information to the parser about encodings that are unknown
@@ -506,8 +521,8 @@ typedef void (XMLCALL *XML_SkippedEntityHandler) (
typedef struct {
int map[256];
void *data;
int (XMLCALL *convert)(void *data, const char *s);
void (XMLCALL *release)(void *data);
int(XMLCALL *convert)(void *data, const char *s);
void(XMLCALL *release)(void *data);
} XML_Encoding;
/* This is called for an encoding that is unknown to the parser.
@@ -523,25 +538,21 @@ typedef struct {
Otherwise it must return XML_STATUS_ERROR.
If info does not describe a suitable encoding, then the parser will
return an XML_UNKNOWN_ENCODING error.
return an XML_ERROR_UNKNOWN_ENCODING error.
*/
typedef int (XMLCALL *XML_UnknownEncodingHandler) (
void *encodingHandlerData,
const XML_Char *name,
XML_Encoding *info);
typedef int(XMLCALL *XML_UnknownEncodingHandler)(void *encodingHandlerData,
const XML_Char *name,
XML_Encoding *info);
XMLPARSEAPI(void)
XML_SetElementHandler(XML_Parser parser,
XML_StartElementHandler start,
XML_SetElementHandler(XML_Parser parser, XML_StartElementHandler start,
XML_EndElementHandler end);
XMLPARSEAPI(void)
XML_SetStartElementHandler(XML_Parser parser,
XML_StartElementHandler handler);
XML_SetStartElementHandler(XML_Parser parser, XML_StartElementHandler handler);
XMLPARSEAPI(void)
XML_SetEndElementHandler(XML_Parser parser,
XML_EndElementHandler handler);
XML_SetEndElementHandler(XML_Parser parser, XML_EndElementHandler handler);
XMLPARSEAPI(void)
XML_SetCharacterDataHandler(XML_Parser parser,
@@ -551,8 +562,7 @@ XMLPARSEAPI(void)
XML_SetProcessingInstructionHandler(XML_Parser parser,
XML_ProcessingInstructionHandler handler);
XMLPARSEAPI(void)
XML_SetCommentHandler(XML_Parser parser,
XML_CommentHandler handler);
XML_SetCommentHandler(XML_Parser parser, XML_CommentHandler handler);
XMLPARSEAPI(void)
XML_SetCdataSectionHandler(XML_Parser parser,
@@ -572,20 +582,17 @@ XML_SetEndCdataSectionHandler(XML_Parser parser,
default handler, or to the skipped entity handler, if one is set.
*/
XMLPARSEAPI(void)
XML_SetDefaultHandler(XML_Parser parser,
XML_DefaultHandler handler);
XML_SetDefaultHandler(XML_Parser parser, XML_DefaultHandler handler);
/* This sets the default handler but does not inhibit expansion of
internal entities. The entity reference will not be passed to the
default handler.
*/
XMLPARSEAPI(void)
XML_SetDefaultHandlerExpand(XML_Parser parser,
XML_DefaultHandler handler);
XML_SetDefaultHandlerExpand(XML_Parser parser, XML_DefaultHandler handler);
XMLPARSEAPI(void)
XML_SetDoctypeDeclHandler(XML_Parser parser,
XML_StartDoctypeDeclHandler start,
XML_SetDoctypeDeclHandler(XML_Parser parser, XML_StartDoctypeDeclHandler start,
XML_EndDoctypeDeclHandler end);
XMLPARSEAPI(void)
@@ -593,16 +600,14 @@ XML_SetStartDoctypeDeclHandler(XML_Parser parser,
XML_StartDoctypeDeclHandler start);
XMLPARSEAPI(void)
XML_SetEndDoctypeDeclHandler(XML_Parser parser,
XML_EndDoctypeDeclHandler end);
XML_SetEndDoctypeDeclHandler(XML_Parser parser, XML_EndDoctypeDeclHandler end);
XMLPARSEAPI(void)
XML_SetUnparsedEntityDeclHandler(XML_Parser parser,
XML_UnparsedEntityDeclHandler handler);
XMLPARSEAPI(void)
XML_SetNotationDeclHandler(XML_Parser parser,
XML_NotationDeclHandler handler);
XML_SetNotationDeclHandler(XML_Parser parser, XML_NotationDeclHandler handler);
XMLPARSEAPI(void)
XML_SetNamespaceDeclHandler(XML_Parser parser,
@@ -630,8 +635,7 @@ XML_SetExternalEntityRefHandler(XML_Parser parser,
instead of the parser object.
*/
XMLPARSEAPI(void)
XML_SetExternalEntityRefHandlerArg(XML_Parser parser,
void *arg);
XML_SetExternalEntityRefHandlerArg(XML_Parser parser, void *arg);
XMLPARSEAPI(void)
XML_SetSkippedEntityHandler(XML_Parser parser,
@@ -706,11 +710,11 @@ XML_UseParserAsHandlerArg(XML_Parser parser);
be called, despite an external subset being parsed.
Note: If XML_DTD is not defined when Expat is compiled, returns
XML_ERROR_FEATURE_REQUIRES_XML_DTD.
Note: If parser == NULL, returns XML_ERROR_INVALID_ARGUMENT.
*/
XMLPARSEAPI(enum XML_Error)
XML_UseForeignDTD(XML_Parser parser, XML_Bool useDTD);
/* Sets the base to be used for resolving relative URIs in system
identifiers in declarations. Resolving relative identifiers is
left to the application: this value will be passed through as the
@@ -728,16 +732,17 @@ XML_GetBase(XML_Parser parser);
/* Returns the number of the attribute/value pairs passed in last call
to the XML_StartElementHandler that were specified in the start-tag
rather than defaulted. Each attribute/value pair counts as 2; thus
this correspondds to an index into the atts array passed to the
XML_StartElementHandler.
this corresponds to an index into the atts array passed to the
XML_StartElementHandler. Returns -1 if parser == NULL.
*/
XMLPARSEAPI(int)
XML_GetSpecifiedAttributeCount(XML_Parser parser);
/* Returns the index of the ID attribute passed in the last call to
XML_StartElementHandler, or -1 if there is no ID attribute. Each
attribute/value pair counts as 2; thus this correspondds to an
index into the atts array passed to the XML_StartElementHandler.
XML_StartElementHandler, or -1 if there is no ID attribute or
parser == NULL. Each attribute/value pair counts as 2; thus this
corresponds to an index into the atts array passed to the
XML_StartElementHandler.
*/
XMLPARSEAPI(int)
XML_GetIdAttributeIndex(XML_Parser parser);
@@ -749,10 +754,10 @@ XML_GetIdAttributeIndex(XML_Parser parser);
info->valueEnd - info->valueStart = 4 bytes.
*/
typedef struct {
XML_Index nameStart; /* Offset to beginning of the attribute name. */
XML_Index nameEnd; /* Offset after the attribute name's last byte. */
XML_Index valueStart; /* Offset to beginning of the attribute value. */
XML_Index valueEnd; /* Offset after the attribute value's last byte. */
XML_Index nameStart; /* Offset to beginning of the attribute name. */
XML_Index nameEnd; /* Offset after the attribute name's last byte. */
XML_Index valueStart; /* Offset to beginning of the attribute value. */
XML_Index valueEnd; /* Offset after the attribute value's last byte. */
} XML_AttrInfo;
/* Returns an array of XML_AttrInfo structures for the attribute/value pairs
@@ -788,20 +793,20 @@ XML_ParseBuffer(XML_Parser parser, int len, int isFinal);
(resumable = 0) an already suspended parser. Some call-backs may
still follow because they would otherwise get lost. Examples:
- endElementHandler() for empty elements when stopped in
startElementHandler(),
- endNameSpaceDeclHandler() when stopped in endElementHandler(),
startElementHandler(),
- endNameSpaceDeclHandler() when stopped in endElementHandler(),
and possibly others.
Can be called from most handlers, including DTD related call-backs,
except when parsing an external parameter entity and resumable != 0.
Returns XML_STATUS_OK when successful, XML_STATUS_ERROR otherwise.
Possible error codes:
Possible error codes:
- XML_ERROR_SUSPENDED: when suspending an already suspended parser.
- XML_ERROR_FINISHED: when the parser has already finished.
- XML_ERROR_SUSPEND_PE: when suspending while parsing an external PE.
When resumable != 0 (true) then parsing is suspended, that is,
XML_Parse() and XML_ParseBuffer() return XML_STATUS_SUSPENDED.
When resumable != 0 (true) then parsing is suspended, that is,
XML_Parse() and XML_ParseBuffer() return XML_STATUS_SUSPENDED.
Otherwise, parsing is aborted, that is, XML_Parse() and XML_ParseBuffer()
return XML_STATUS_ERROR with error code XML_ERROR_ABORTED.
@@ -812,7 +817,7 @@ XML_ParseBuffer(XML_Parser parser, int len, int isFinal);
the externalEntityRefHandler() to call XML_StopParser() on the parent
parser (recursively), if one wants to stop parsing altogether.
When suspended, parsing can be resumed by calling XML_ResumeParser().
When suspended, parsing can be resumed by calling XML_ResumeParser().
*/
XMLPARSEAPI(enum XML_Status)
XML_StopParser(XML_Parser parser, XML_Bool resumable);
@@ -820,7 +825,7 @@ XML_StopParser(XML_Parser parser, XML_Bool resumable);
/* Resumes parsing after it has been suspended with XML_StopParser().
Must not be called from within a handler call-back. Returns same
status codes as XML_Parse() or XML_ParseBuffer().
Additional error code XML_ERROR_NOT_SUSPENDED possible.
Additional error code XML_ERROR_NOT_SUSPENDED possible.
*Note*:
This must be called on the most deeply nested child parser instance
@@ -832,12 +837,7 @@ XML_StopParser(XML_Parser parser, XML_Bool resumable);
XMLPARSEAPI(enum XML_Status)
XML_ResumeParser(XML_Parser parser);
enum XML_Parsing {
XML_INITIALIZED,
XML_PARSING,
XML_FINISHED,
XML_SUSPENDED
};
enum XML_Parsing { XML_INITIALIZED, XML_PARSING, XML_FINISHED, XML_SUSPENDED };
typedef struct {
enum XML_Parsing parsing;
@@ -869,8 +869,7 @@ XML_GetParsingStatus(XML_Parser parser, XML_ParsingStatus *status);
Otherwise returns a new XML_Parser object.
*/
XMLPARSEAPI(XML_Parser)
XML_ExternalEntityParserCreate(XML_Parser parser,
const XML_Char *context,
XML_ExternalEntityParserCreate(XML_Parser parser, const XML_Char *context,
const XML_Char *encoding);
enum XML_ParamEntityParsing {
@@ -901,6 +900,7 @@ enum XML_ParamEntityParsing {
entities is requested; otherwise it will return non-zero.
Note: If XML_SetParamEntityParsing is called after XML_Parse or
XML_ParseBuffer, then it has no effect and will always return 0.
Note: If parser == NULL, the function will do nothing and return 0.
*/
XMLPARSEAPI(int)
XML_SetParamEntityParsing(XML_Parser parser,
@@ -910,10 +910,10 @@ XML_SetParamEntityParsing(XML_Parser parser,
Helps in preventing DoS attacks based on predicting hash
function behavior. This must be called before parsing is started.
Returns 1 if successful, 0 when called after parsing has started.
Note: If parser == NULL, the function will do nothing and return 0.
*/
XMLPARSEAPI(int)
XML_SetHashSalt(XML_Parser parser,
unsigned long hash_salt);
XML_SetHashSalt(XML_Parser parser, unsigned long hash_salt);
/* If XML_Parse or XML_ParseBuffer have returned XML_STATUS_ERROR, then
XML_GetErrorCode returns information about the error.
@@ -930,12 +930,16 @@ XML_GetErrorCode(XML_Parser parser);
be within the relevant markup. When called outside of the callback
functions, the position indicated will be just past the last parse
event (regardless of whether there was an associated callback).
They may also be called after returning from a call to XML_Parse
or XML_ParseBuffer. If the return value is XML_STATUS_ERROR then
the location is the location of the character at which the error
was detected; otherwise the location is the location of the last
parse event, as described above.
Note: XML_GetCurrentLineNumber and XML_GetCurrentColumnNumber
return 0 to indicate an error.
Note: XML_GetCurrentByteIndex returns -1 to indicate an error.
*/
XMLPARSEAPI(XML_Size) XML_GetCurrentLineNumber(XML_Parser parser);
XMLPARSEAPI(XML_Size) XML_GetCurrentColumnNumber(XML_Parser parser);
@@ -958,14 +962,12 @@ XML_GetCurrentByteCount(XML_Parser parser);
the handler that makes the call.
*/
XMLPARSEAPI(const char *)
XML_GetInputContext(XML_Parser parser,
int *offset,
int *size);
XML_GetInputContext(XML_Parser parser, int *offset, int *size);
/* For backwards compatibility with previous versions. */
#define XML_GetErrorLineNumber XML_GetCurrentLineNumber
#define XML_GetErrorLineNumber XML_GetCurrentLineNumber
#define XML_GetErrorColumnNumber XML_GetCurrentColumnNumber
#define XML_GetErrorByteIndex XML_GetCurrentByteIndex
#define XML_GetErrorByteIndex XML_GetCurrentByteIndex
/* Frees the content model passed to the element declaration handler */
XMLPARSEAPI(void)
@@ -1020,25 +1022,39 @@ enum XML_FeatureEnum {
XML_FEATURE_SIZEOF_XML_LCHAR,
XML_FEATURE_NS,
XML_FEATURE_LARGE_SIZE,
XML_FEATURE_ATTR_INFO
XML_FEATURE_ATTR_INFO,
/* Added in Expat 2.4.0. */
XML_FEATURE_BILLION_LAUGHS_ATTACK_PROTECTION_MAXIMUM_AMPLIFICATION_DEFAULT,
XML_FEATURE_BILLION_LAUGHS_ATTACK_PROTECTION_ACTIVATION_THRESHOLD_DEFAULT
/* Additional features must be added to the end of this enum. */
};
typedef struct {
enum XML_FeatureEnum feature;
const XML_LChar *name;
long int value;
enum XML_FeatureEnum feature;
const XML_LChar *name;
long int value;
} XML_Feature;
XMLPARSEAPI(const XML_Feature *)
XML_GetFeatureList(void);
#ifdef XML_DTD
/* Added in Expat 2.4.0. */
XMLPARSEAPI(XML_Bool)
XML_SetBillionLaughsAttackProtectionMaximumAmplification(
XML_Parser parser, float maximumAmplificationFactor);
/* Added in Expat 2.4.0. */
XMLPARSEAPI(XML_Bool)
XML_SetBillionLaughsAttackProtectionActivationThreshold(
XML_Parser parser, unsigned long long activationThresholdBytes);
#endif
/* Expat follows the semantic versioning convention.
See http://semver.org.
*/
#define XML_MAJOR_VERSION 2
#define XML_MINOR_VERSION 2
#define XML_MINOR_VERSION 5
#define XML_MICRO_VERSION 0
#ifdef __cplusplus

View File

@@ -1,28 +1,40 @@
/*================================================================
** Copyright 2000, Clark Cooper
** All rights reserved.
**
** This is free software. You are permitted to copy, distribute, or modify
** it under the terms of the MIT/X license (contained in the COPYING file
** with this distribution.)
/*
__ __ _
___\ \/ /_ __ __ _| |_
/ _ \\ /| '_ \ / _` | __|
| __// \| |_) | (_| | |_
\___/_/\_\ .__/ \__,_|\__|
|_| XML parser
Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
Copyright (c) 2002 Greg Stein <gstein@users.sourceforge.net>
Copyright (c) 2005 Karl Waclawek <karl@waclawek.net>
Copyright (c) 2017-2021 Sebastian Pipping <sebastian@pipping.org>
Licensed under the MIT license:
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to permit
persons to whom the Software is furnished to do so, subject to the
following conditions:
The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
#ifndef EXPATCONFIG_H
#define EXPATCONFIG_H
#include <memory.h>
#include <string.h>
#define XML_NS 1
#define XML_DTD 1
#define XML_CONTEXT_BYTES 1024
/* we will assume all Windows platforms are little endian */
#define BYTEORDER 1234
/* Windows has memmove() available. */
#define HAVE_MEMMOVE
#ifdef WIN32
#define WIN32_LEAN_AND_MEAN
#include <windows.h>
@@ -30,4 +42,8 @@
#else
#endif
#endif /* ifndef EXPATCONFIG_H */
#include "expat_configure.h"
#include <memory.h>
#include <string.h>
#endif /* ndef EXPATCONFIG_H */

120
deps/EXPAT/expat/expat_configure.h.cmake vendored Normal file
View File

@@ -0,0 +1,120 @@
/* expat_config.h.cmake. Based upon generated expat_config.h.in. */
#ifndef EXPAT_CONFIG_H
#define EXPAT_CONFIG_H 1
/* 1234 = LIL_ENDIAN, 4321 = BIGENDIAN */
#cmakedefine BYTEORDER @BYTEORDER@
/* Define to 1 if you have the `arc4random' function. */
#cmakedefine HAVE_ARC4RANDOM
/* Define to 1 if you have the `arc4random_buf' function. */
#cmakedefine HAVE_ARC4RANDOM_BUF
/* Define to 1 if you have the <dlfcn.h> header file. */
#cmakedefine HAVE_DLFCN_H
/* Define to 1 if you have the <fcntl.h> header file. */
#cmakedefine HAVE_FCNTL_H
/* Define to 1 if you have the `getpagesize' function. */
#cmakedefine HAVE_GETPAGESIZE
/* Define to 1 if you have the `getrandom' function. */
#cmakedefine HAVE_GETRANDOM
/* Define to 1 if you have the <inttypes.h> header file. */
#cmakedefine HAVE_INTTYPES_H
/* Define to 1 if you have the `bsd' library (-lbsd). */
#cmakedefine HAVE_LIBBSD
/* Define to 1 if you have the <memory.h> header file. */
#cmakedefine HAVE_MEMORY_H
/* Define to 1 if you have a working `mmap' system call. */
#cmakedefine HAVE_MMAP
/* Define to 1 if you have the <stdint.h> header file. */
#cmakedefine HAVE_STDINT_H
/* Define to 1 if you have the <stdlib.h> header file. */
#cmakedefine HAVE_STDLIB_H
/* Define to 1 if you have the <strings.h> header file. */
#cmakedefine HAVE_STRINGS_H
/* Define to 1 if you have the <string.h> header file. */
#cmakedefine HAVE_STRING_H
/* Define to 1 if you have `syscall' and `SYS_getrandom'. */
#cmakedefine HAVE_SYSCALL_GETRANDOM
/* Define to 1 if you have the <sys/stat.h> header file. */
#cmakedefine HAVE_SYS_STAT_H
/* Define to 1 if you have the <sys/types.h> header file. */
#cmakedefine HAVE_SYS_TYPES_H
/* Define to 1 if you have the <unistd.h> header file. */
#cmakedefine HAVE_UNISTD_H
/* Name of package */
#define PACKAGE "@PACKAGE_NAME@"
/* Define to the address where bug reports for this package should be sent. */
#cmakedefine PACKAGE_BUGREPORT "@PACKAGE_BUGREPORT@"
/* Define to the full name of this package. */
#cmakedefine PACKAGE_NAME "@PACKAGE_NAME@"
/* Define to the full name and version of this package. */
#cmakedefine PACKAGE_STRING "@PACKAGE_STRING@"
/* Define to the one symbol short name of this package. */
#cmakedefine PACKAGE_TARNAME "@PACKAGE_TARNAME@"
/* Define to the home page for this package. */
#define PACKAGE_URL ""
/* Define to the version of this package. */
#cmakedefine PACKAGE_VERSION "@PACKAGE_VERSION@"
/* Define to 1 if you have the ANSI C header files. */
#cmakedefine STDC_HEADERS
/* whether byteorder is bigendian */
#cmakedefine WORDS_BIGENDIAN
/* Define to allow retrieving the byte offsets for attribute names and values.
*/
#cmakedefine XML_ATTR_INFO
/* Define to specify how much context to retain around the current parse
point. */
#cmakedefine XML_CONTEXT_BYTES @XML_CONTEXT_BYTES@
#if ! defined(_WIN32)
/* Define to include code reading entropy from `/dev/urandom'. */
#cmakedefine XML_DEV_URANDOM
#endif
/* Define to make parameter entity parsing functionality available. */
#cmakedefine XML_DTD
/* Define to make XML Namespaces functionality available. */
#cmakedefine XML_NS
/* Define to __FUNCTION__ or "" if `__func__' does not conform to ANSI C. */
#ifdef _MSC_VER
# define __func__ __FUNCTION__
#endif
/* Define to `long' if <sys/types.h> does not define. */
#cmakedefine off_t @OFF_T@
/* Define to `unsigned' if <sys/types.h> does not define. */
#cmakedefine size_t @SIZE_T@
#endif // ndef EXPAT_CONFIG_H

View File

@@ -1,5 +1,40 @@
/* Copyright (c) 1998, 1999, 2000 Thai Open Source Software Center Ltd
See the file COPYING for copying permission.
/*
__ __ _
___\ \/ /_ __ __ _| |_
/ _ \\ /| '_ \ / _` | __|
| __// \| |_) | (_| | |_
\___/_/\_\ .__/ \__,_|\__|
|_| XML parser
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
Copyright (c) 2000-2004 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
Copyright (c) 2001-2002 Greg Stein <gstein@users.sourceforge.net>
Copyright (c) 2002-2006 Karl Waclawek <karl@waclawek.net>
Copyright (c) 2016 Cristian Rodríguez <crrodriguez@opensuse.org>
Copyright (c) 2016-2019 Sebastian Pipping <sebastian@pipping.org>
Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk>
Copyright (c) 2018 Yury Gribov <tetra2005@gmail.com>
Licensed under the MIT license:
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to permit
persons to whom the Software is furnished to do so, subject to the
following conditions:
The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
#ifndef Expat_External_INCLUDED
@@ -7,10 +42,6 @@
/* External API definitions */
#if defined(_MSC_EXTENSIONS) && !defined(__BEOS__) && !defined(__CYGWIN__)
#define XML_USE_MSC_EXTENSIONS 1
#endif
/* Expat tries very hard to make the API boundary very specifically
defined. There are two macros defined to control this boundary;
each of these can be defined before including this header to
@@ -34,11 +65,11 @@
system headers may assume the cdecl convention.
*/
#ifndef XMLCALL
#if defined(_MSC_VER)
#define XMLCALL __cdecl
#elif defined(__GNUC__) && defined(__i386) && !defined(__INTEL_COMPILER)
#define XMLCALL __attribute__((cdecl))
#else
# if defined(_MSC_VER)
# define XMLCALL __cdecl
# elif defined(__GNUC__) && defined(__i386) && ! defined(__INTEL_COMPILER)
# define XMLCALL __attribute__((cdecl))
# else
/* For any platform which uses this definition and supports more than
one calling convention, we need to extend this definition to
declare the convention used on that platform, if it's possible to
@@ -49,41 +80,46 @@
pre-processor and how to specify the same calling convention as the
platform's malloc() implementation.
*/
#define XMLCALL
#endif
#endif /* not defined XMLCALL */
# define XMLCALL
# endif
#endif /* not defined XMLCALL */
#if !defined(XML_STATIC) && !defined(XMLIMPORT)
#ifndef XML_BUILDING_EXPAT
#if ! defined(XML_STATIC) && ! defined(XMLIMPORT)
# ifndef XML_BUILDING_EXPAT
/* using Expat from an application */
#ifdef XML_USE_MSC_EXTENSIONS
// #define XMLIMPORT __declspec(dllimport)
# if defined(_MSC_EXTENSIONS) && ! defined(__BEOS__) && ! defined(__CYGWIN__)
//# define XMLIMPORT __declspec(dllimport)
# endif
# endif
#endif /* not defined XML_STATIC */
#ifndef XML_ENABLE_VISIBILITY
# define XML_ENABLE_VISIBILITY 0
#endif
#endif
#endif /* not defined XML_STATIC */
#if !defined(XMLIMPORT) && defined(__GNUC__) && (__GNUC__ >= 4)
#define XMLIMPORT __attribute__ ((visibility ("default")))
#if ! defined(XMLIMPORT) && XML_ENABLE_VISIBILITY
# define XMLIMPORT __attribute__((visibility("default")))
#endif
/* If we didn't define it above, define it away: */
#ifndef XMLIMPORT
#define XMLIMPORT
# define XMLIMPORT
#endif
#if defined(__GNUC__) && (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96))
#define XML_ATTR_MALLOC __attribute__((__malloc__))
#if defined(__GNUC__) \
&& (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96))
# define XML_ATTR_MALLOC __attribute__((__malloc__))
#else
#define XML_ATTR_MALLOC
# define XML_ATTR_MALLOC
#endif
#if defined(__GNUC__) && ((__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3))
#define XML_ATTR_ALLOC_SIZE(x) __attribute__((__alloc_size__(x)))
#if defined(__GNUC__) \
&& ((__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3))
# define XML_ATTR_ALLOC_SIZE(x) __attribute__((__alloc_size__(x)))
#else
#define XML_ATTR_ALLOC_SIZE(x)
# define XML_ATTR_ALLOC_SIZE(x)
#endif
#define XMLPARSEAPI(type) XMLIMPORT type XMLCALL
@@ -93,30 +129,30 @@ extern "C" {
#endif
#ifdef XML_UNICODE_WCHAR_T
#define XML_UNICODE
# ifndef XML_UNICODE
# define XML_UNICODE
# endif
# if defined(__SIZEOF_WCHAR_T__) && (__SIZEOF_WCHAR_T__ != 2)
# error "sizeof(wchar_t) != 2; Need -fshort-wchar for both Expat and libc"
# endif
#endif
#ifdef XML_UNICODE /* Information is UTF-16 encoded. */
#ifdef XML_UNICODE_WCHAR_T
#ifdef XML_UNICODE /* Information is UTF-16 encoded. */
# ifdef XML_UNICODE_WCHAR_T
typedef wchar_t XML_Char;
typedef wchar_t XML_LChar;
#else
# else
typedef unsigned short XML_Char;
typedef char XML_LChar;
#endif /* XML_UNICODE_WCHAR_T */
#else /* Information is UTF-8 encoded. */
# endif /* XML_UNICODE_WCHAR_T */
#else /* Information is UTF-8 encoded. */
typedef char XML_Char;
typedef char XML_LChar;
#endif /* XML_UNICODE */
#endif /* XML_UNICODE */
#ifdef XML_LARGE_SIZE /* Use large integers for file/stream positions. */
#if defined(XML_USE_MSC_EXTENSIONS) && _MSC_VER < 1400
typedef __int64 XML_Index;
typedef unsigned __int64 XML_Size;
#else
#ifdef XML_LARGE_SIZE /* Use large integers for file/stream positions. */
typedef long long XML_Index;
typedef unsigned long long XML_Size;
#endif
#else
typedef long XML_Index;
typedef unsigned long XML_Size;

View File

@@ -1,37 +1,67 @@
/* Copyright (c) 1998, 1999 Thai Open Source Software Center Ltd
See the file COPYING for copying permission.
/*
__ __ _
___\ \/ /_ __ __ _| |_
/ _ \\ /| '_ \ / _` | __|
| __// \| |_) | (_| | |_
\___/_/\_\ .__/ \__,_|\__|
|_| XML parser
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
Copyright (c) 2002 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
Copyright (c) 2017 Sebastian Pipping <sebastian@pipping.org>
Licensed under the MIT license:
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to permit
persons to whom the Software is furnished to do so, subject to the
following conditions:
The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
/* Like asciitab.h, except that 0xD has code BT_S rather than BT_CR */
/* 0x00 */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
/* 0x04 */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
/* 0x08 */ BT_NONXML, BT_S, BT_LF, BT_NONXML,
/* 0x0C */ BT_NONXML, BT_S, BT_NONXML, BT_NONXML,
/* 0x10 */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
/* 0x14 */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
/* 0x18 */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
/* 0x1C */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
/* 0x20 */ BT_S, BT_EXCL, BT_QUOT, BT_NUM,
/* 0x24 */ BT_OTHER, BT_PERCNT, BT_AMP, BT_APOS,
/* 0x28 */ BT_LPAR, BT_RPAR, BT_AST, BT_PLUS,
/* 0x2C */ BT_COMMA, BT_MINUS, BT_NAME, BT_SOL,
/* 0x30 */ BT_DIGIT, BT_DIGIT, BT_DIGIT, BT_DIGIT,
/* 0x34 */ BT_DIGIT, BT_DIGIT, BT_DIGIT, BT_DIGIT,
/* 0x38 */ BT_DIGIT, BT_DIGIT, BT_COLON, BT_SEMI,
/* 0x3C */ BT_LT, BT_EQUALS, BT_GT, BT_QUEST,
/* 0x40 */ BT_OTHER, BT_HEX, BT_HEX, BT_HEX,
/* 0x44 */ BT_HEX, BT_HEX, BT_HEX, BT_NMSTRT,
/* 0x48 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0x4C */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0x50 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0x54 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0x58 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_LSQB,
/* 0x5C */ BT_OTHER, BT_RSQB, BT_OTHER, BT_NMSTRT,
/* 0x60 */ BT_OTHER, BT_HEX, BT_HEX, BT_HEX,
/* 0x64 */ BT_HEX, BT_HEX, BT_HEX, BT_NMSTRT,
/* 0x68 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0x6C */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0x70 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0x74 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0x78 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_OTHER,
/* 0x7C */ BT_VERBAR, BT_OTHER, BT_OTHER, BT_OTHER,
/* 0x04 */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
/* 0x08 */ BT_NONXML, BT_S, BT_LF, BT_NONXML,
/* 0x0C */ BT_NONXML, BT_S, BT_NONXML, BT_NONXML,
/* 0x10 */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
/* 0x14 */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
/* 0x18 */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
/* 0x1C */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
/* 0x20 */ BT_S, BT_EXCL, BT_QUOT, BT_NUM,
/* 0x24 */ BT_OTHER, BT_PERCNT, BT_AMP, BT_APOS,
/* 0x28 */ BT_LPAR, BT_RPAR, BT_AST, BT_PLUS,
/* 0x2C */ BT_COMMA, BT_MINUS, BT_NAME, BT_SOL,
/* 0x30 */ BT_DIGIT, BT_DIGIT, BT_DIGIT, BT_DIGIT,
/* 0x34 */ BT_DIGIT, BT_DIGIT, BT_DIGIT, BT_DIGIT,
/* 0x38 */ BT_DIGIT, BT_DIGIT, BT_COLON, BT_SEMI,
/* 0x3C */ BT_LT, BT_EQUALS, BT_GT, BT_QUEST,
/* 0x40 */ BT_OTHER, BT_HEX, BT_HEX, BT_HEX,
/* 0x44 */ BT_HEX, BT_HEX, BT_HEX, BT_NMSTRT,
/* 0x48 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0x4C */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0x50 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0x54 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0x58 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_LSQB,
/* 0x5C */ BT_OTHER, BT_RSQB, BT_OTHER, BT_NMSTRT,
/* 0x60 */ BT_OTHER, BT_HEX, BT_HEX, BT_HEX,
/* 0x64 */ BT_HEX, BT_HEX, BT_HEX, BT_NMSTRT,
/* 0x68 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0x6C */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0x70 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0x74 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0x78 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_OTHER,
/* 0x7C */ BT_VERBAR, BT_OTHER, BT_OTHER, BT_OTHER,

View File

@@ -18,9 +18,42 @@
Note: Use of these macros is based on judgement, not hard rules,
and therefore subject to change.
__ __ _
___\ \/ /_ __ __ _| |_
/ _ \\ /| '_ \ / _` | __|
| __// \| |_) | (_| | |_
\___/_/\_\ .__/ \__,_|\__|
|_| XML parser
Copyright (c) 2002-2003 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
Copyright (c) 2002-2006 Karl Waclawek <karl@waclawek.net>
Copyright (c) 2003 Greg Stein <gstein@users.sourceforge.net>
Copyright (c) 2016-2022 Sebastian Pipping <sebastian@pipping.org>
Copyright (c) 2018 Yury Gribov <tetra2005@gmail.com>
Copyright (c) 2019 David Loffredo <loffredo@steptools.com>
Licensed under the MIT license:
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to permit
persons to whom the Software is furnished to do so, subject to the
following conditions:
The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
#if defined(__GNUC__) && defined(__i386__) && !defined(__MINGW32__)
#if defined(__GNUC__) && defined(__i386__) && ! defined(__MINGW32__)
/* We'll use this version by default only where we know it helps.
regparm() generates warnings on Solaris boxes. See SF bug #692878.
@@ -30,8 +63,8 @@
#define FASTCALL __attribute__((stdcall, regparm(3)))
and let's try this:
*/
#define FASTCALL __attribute__((regparm(3)))
#define PTRFASTCALL __attribute__((regparm(3)))
# define FASTCALL __attribute__((regparm(3)))
# define PTRFASTCALL __attribute__((regparm(3)))
#endif
/* Using __fastcall seems to have an unexpected negative effect under
@@ -45,50 +78,87 @@
/* Make sure all of these are defined if they aren't already. */
#ifndef FASTCALL
#define FASTCALL
# define FASTCALL
#endif
#ifndef PTRCALL
#define PTRCALL
# define PTRCALL
#endif
#ifndef PTRFASTCALL
#define PTRFASTCALL
# define PTRFASTCALL
#endif
#ifndef XML_MIN_SIZE
#if !defined(__cplusplus) && !defined(inline)
#ifdef __GNUC__
#define inline __inline
#endif /* __GNUC__ */
#endif
# if ! defined(__cplusplus) && ! defined(inline)
# ifdef __GNUC__
# define inline __inline
# endif /* __GNUC__ */
# endif
#endif /* XML_MIN_SIZE */
#ifdef __cplusplus
#define inline inline
# define inline inline
#else
#ifndef inline
#define inline
# ifndef inline
# define inline
# endif
#endif
#include <limits.h> // ULONG_MAX
#if defined(_WIN32) \
&& (! defined(__USE_MINGW_ANSI_STDIO) \
|| (1 - __USE_MINGW_ANSI_STDIO - 1 == 0))
# define EXPAT_FMT_ULL(midpart) "%" midpart "I64u"
# if defined(_WIN64) // Note: modifiers "td" and "zu" do not work for MinGW
# define EXPAT_FMT_PTRDIFF_T(midpart) "%" midpart "I64d"
# define EXPAT_FMT_SIZE_T(midpart) "%" midpart "I64u"
# else
# define EXPAT_FMT_PTRDIFF_T(midpart) "%" midpart "d"
# define EXPAT_FMT_SIZE_T(midpart) "%" midpart "u"
# endif
#else
# define EXPAT_FMT_ULL(midpart) "%" midpart "llu"
# if ! defined(ULONG_MAX)
# error Compiler did not define ULONG_MAX for us
# elif ULONG_MAX == 18446744073709551615u // 2^64-1
# define EXPAT_FMT_PTRDIFF_T(midpart) "%" midpart "ld"
# define EXPAT_FMT_SIZE_T(midpart) "%" midpart "lu"
# else
# define EXPAT_FMT_PTRDIFF_T(midpart) "%" midpart "d"
# define EXPAT_FMT_SIZE_T(midpart) "%" midpart "u"
# endif
#endif
#ifndef UNUSED_P
# ifdef __GNUC__
# define UNUSED_P(p) UNUSED_ ## p __attribute__((__unused__))
# else
# define UNUSED_P(p) UNUSED_ ## p
# endif
# define UNUSED_P(p) (void)p
#endif
/* NOTE BEGIN If you ever patch these defaults to greater values
for non-attack XML payload in your environment,
please file a bug report with libexpat. Thank you!
*/
#define EXPAT_BILLION_LAUGHS_ATTACK_PROTECTION_MAXIMUM_AMPLIFICATION_DEFAULT \
100.0f
#define EXPAT_BILLION_LAUGHS_ATTACK_PROTECTION_ACTIVATION_THRESHOLD_DEFAULT \
8388608 // 8 MiB, 2^23
/* NOTE END */
#include "expat.h" // so we can use type XML_Parser below
#ifdef __cplusplus
extern "C" {
#endif
void _INTERNAL_trim_to_complete_utf8_characters(const char *from,
const char **fromLimRef);
void
align_limit_to_full_utf8_characters(const char * from, const char ** fromLimRef);
#if defined(XML_DTD)
unsigned long long testingAccountingGetCountBytesDirect(XML_Parser parser);
unsigned long long testingAccountingGetCountBytesIndirect(XML_Parser parser);
const char *unsignedCharToPrintable(unsigned char c);
#endif
#ifdef __cplusplus
}

View File

@@ -1,36 +1,66 @@
/* Copyright (c) 1998, 1999 Thai Open Source Software Center Ltd
See the file COPYING for copying permission.
/*
__ __ _
___\ \/ /_ __ __ _| |_
/ _ \\ /| '_ \ / _` | __|
| __// \| |_) | (_| | |_
\___/_/\_\ .__/ \__,_|\__|
|_| XML parser
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
Copyright (c) 2002 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
Copyright (c) 2017 Sebastian Pipping <sebastian@pipping.org>
Licensed under the MIT license:
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to permit
persons to whom the Software is furnished to do so, subject to the
following conditions:
The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
/* 0x80 */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
/* 0x84 */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
/* 0x88 */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
/* 0x8C */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
/* 0x90 */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
/* 0x94 */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
/* 0x98 */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
/* 0x9C */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
/* 0xA0 */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
/* 0xA4 */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
/* 0xA8 */ BT_OTHER, BT_OTHER, BT_NMSTRT, BT_OTHER,
/* 0xAC */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
/* 0xB0 */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
/* 0xB4 */ BT_OTHER, BT_NMSTRT, BT_OTHER, BT_NAME,
/* 0xB8 */ BT_OTHER, BT_OTHER, BT_NMSTRT, BT_OTHER,
/* 0xBC */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
/* 0xC0 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0xC4 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0xC8 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0xCC */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0xD0 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0xD4 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_OTHER,
/* 0xD8 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0xDC */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0xE0 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0xE4 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0xE8 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0xEC */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0xF0 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0xF4 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_OTHER,
/* 0xF8 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0xFC */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0x84 */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
/* 0x88 */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
/* 0x8C */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
/* 0x90 */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
/* 0x94 */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
/* 0x98 */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
/* 0x9C */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
/* 0xA0 */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
/* 0xA4 */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
/* 0xA8 */ BT_OTHER, BT_OTHER, BT_NMSTRT, BT_OTHER,
/* 0xAC */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
/* 0xB0 */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
/* 0xB4 */ BT_OTHER, BT_NMSTRT, BT_OTHER, BT_NAME,
/* 0xB8 */ BT_OTHER, BT_OTHER, BT_NMSTRT, BT_OTHER,
/* 0xBC */ BT_OTHER, BT_OTHER, BT_OTHER, BT_OTHER,
/* 0xC0 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0xC4 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0xC8 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0xCC */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0xD0 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0xD4 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_OTHER,
/* 0xD8 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0xDC */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0xE0 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0xE4 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0xE8 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0xEC */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0xF0 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0xF4 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_OTHER,
/* 0xF8 */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,
/* 0xFC */ BT_NMSTRT, BT_NMSTRT, BT_NMSTRT, BT_NMSTRT,

View File

@@ -1,150 +1,136 @@
/*
__ __ _
___\ \/ /_ __ __ _| |_
/ _ \\ /| '_ \ / _` | __|
| __// \| |_) | (_| | |_
\___/_/\_\ .__/ \__,_|\__|
|_| XML parser
Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
Copyright (c) 2017 Sebastian Pipping <sebastian@pipping.org>
Licensed under the MIT license:
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to permit
persons to whom the Software is furnished to do so, subject to the
following conditions:
The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
static const unsigned namingBitmap[] = {
0x00000000, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000,
0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
0x00000000, 0x04000000, 0x87FFFFFE, 0x07FFFFFE,
0x00000000, 0x00000000, 0xFF7FFFFF, 0xFF7FFFFF,
0xFFFFFFFF, 0x7FF3FFFF, 0xFFFFFDFE, 0x7FFFFFFF,
0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFE00F, 0xFC31FFFF,
0x00FFFFFF, 0x00000000, 0xFFFF0000, 0xFFFFFFFF,
0xFFFFFFFF, 0xF80001FF, 0x00000003, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000,
0xFFFFD740, 0xFFFFFFFB, 0x547F7FFF, 0x000FFFFD,
0xFFFFDFFE, 0xFFFFFFFF, 0xDFFEFFFF, 0xFFFFFFFF,
0xFFFF0003, 0xFFFFFFFF, 0xFFFF199F, 0x033FCFFF,
0x00000000, 0xFFFE0000, 0x027FFFFF, 0xFFFFFFFE,
0x0000007F, 0x00000000, 0xFFFF0000, 0x000707FF,
0x00000000, 0x07FFFFFE, 0x000007FE, 0xFFFE0000,
0xFFFFFFFF, 0x7CFFFFFF, 0x002F7FFF, 0x00000060,
0xFFFFFFE0, 0x23FFFFFF, 0xFF000000, 0x00000003,
0xFFF99FE0, 0x03C5FDFF, 0xB0000000, 0x00030003,
0xFFF987E0, 0x036DFDFF, 0x5E000000, 0x001C0000,
0xFFFBAFE0, 0x23EDFDFF, 0x00000000, 0x00000001,
0xFFF99FE0, 0x23CDFDFF, 0xB0000000, 0x00000003,
0xD63DC7E0, 0x03BFC718, 0x00000000, 0x00000000,
0xFFFDDFE0, 0x03EFFDFF, 0x00000000, 0x00000003,
0xFFFDDFE0, 0x03EFFDFF, 0x40000000, 0x00000003,
0xFFFDDFE0, 0x03FFFDFF, 0x00000000, 0x00000003,
0x00000000, 0x00000000, 0x00000000, 0x00000000,
0xFFFFFFFE, 0x000D7FFF, 0x0000003F, 0x00000000,
0xFEF02596, 0x200D6CAE, 0x0000001F, 0x00000000,
0x00000000, 0x00000000, 0xFFFFFEFF, 0x000003FF,
0x00000000, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0xFFFFFFFF, 0xFFFF003F, 0x007FFFFF,
0x0007DAED, 0x50000000, 0x82315001, 0x002C62AB,
0x40000000, 0xF580C900, 0x00000007, 0x02010800,
0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
0x0FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x03FFFFFF,
0x3F3FFFFF, 0xFFFFFFFF, 0xAAFF3F3F, 0x3FFFFFFF,
0xFFFFFFFF, 0x5FDFFFFF, 0x0FCF1FDC, 0x1FDC1FFF,
0x00000000, 0x00004C40, 0x00000000, 0x00000000,
0x00000007, 0x00000000, 0x00000000, 0x00000000,
0x00000080, 0x000003FE, 0xFFFFFFFE, 0xFFFFFFFF,
0x001FFFFF, 0xFFFFFFFE, 0xFFFFFFFF, 0x07FFFFFF,
0xFFFFFFE0, 0x00001FFF, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000,
0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
0xFFFFFFFF, 0x0000003F, 0x00000000, 0x00000000,
0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
0xFFFFFFFF, 0x0000000F, 0x00000000, 0x00000000,
0x00000000, 0x07FF6000, 0x87FFFFFE, 0x07FFFFFE,
0x00000000, 0x00800000, 0xFF7FFFFF, 0xFF7FFFFF,
0x00FFFFFF, 0x00000000, 0xFFFF0000, 0xFFFFFFFF,
0xFFFFFFFF, 0xF80001FF, 0x00030003, 0x00000000,
0xFFFFFFFF, 0xFFFFFFFF, 0x0000003F, 0x00000003,
0xFFFFD7C0, 0xFFFFFFFB, 0x547F7FFF, 0x000FFFFD,
0xFFFFDFFE, 0xFFFFFFFF, 0xDFFEFFFF, 0xFFFFFFFF,
0xFFFF007B, 0xFFFFFFFF, 0xFFFF199F, 0x033FCFFF,
0x00000000, 0xFFFE0000, 0x027FFFFF, 0xFFFFFFFE,
0xFFFE007F, 0xBBFFFFFB, 0xFFFF0016, 0x000707FF,
0x00000000, 0x07FFFFFE, 0x0007FFFF, 0xFFFF03FF,
0xFFFFFFFF, 0x7CFFFFFF, 0xFFEF7FFF, 0x03FF3DFF,
0xFFFFFFEE, 0xF3FFFFFF, 0xFF1E3FFF, 0x0000FFCF,
0xFFF99FEE, 0xD3C5FDFF, 0xB080399F, 0x0003FFCF,
0xFFF987E4, 0xD36DFDFF, 0x5E003987, 0x001FFFC0,
0xFFFBAFEE, 0xF3EDFDFF, 0x00003BBF, 0x0000FFC1,
0xFFF99FEE, 0xF3CDFDFF, 0xB0C0398F, 0x0000FFC3,
0xD63DC7EC, 0xC3BFC718, 0x00803DC7, 0x0000FF80,
0xFFFDDFEE, 0xC3EFFDFF, 0x00603DDF, 0x0000FFC3,
0xFFFDDFEC, 0xC3EFFDFF, 0x40603DDF, 0x0000FFC3,
0xFFFDDFEC, 0xC3FFFDFF, 0x00803DCF, 0x0000FFC3,
0x00000000, 0x00000000, 0x00000000, 0x00000000,
0xFFFFFFFE, 0x07FF7FFF, 0x03FF7FFF, 0x00000000,
0xFEF02596, 0x3BFF6CAE, 0x03FF3F5F, 0x00000000,
0x03000000, 0xC2A003FF, 0xFFFFFEFF, 0xFFFE03FF,
0xFEBF0FDF, 0x02FE3FFF, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0x1FFF0000, 0x00000002,
0x000000A0, 0x003EFFFE, 0xFFFFFFFE, 0xFFFFFFFF,
0x661FFFFF, 0xFFFFFFFE, 0xFFFFFFFF, 0x77FFFFFF,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00000000, 0x04000000,
0x87FFFFFE, 0x07FFFFFE, 0x00000000, 0x00000000, 0xFF7FFFFF, 0xFF7FFFFF,
0xFFFFFFFF, 0x7FF3FFFF, 0xFFFFFDFE, 0x7FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
0xFFFFE00F, 0xFC31FFFF, 0x00FFFFFF, 0x00000000, 0xFFFF0000, 0xFFFFFFFF,
0xFFFFFFFF, 0xF80001FF, 0x00000003, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0xFFFFD740, 0xFFFFFFFB, 0x547F7FFF, 0x000FFFFD,
0xFFFFDFFE, 0xFFFFFFFF, 0xDFFEFFFF, 0xFFFFFFFF, 0xFFFF0003, 0xFFFFFFFF,
0xFFFF199F, 0x033FCFFF, 0x00000000, 0xFFFE0000, 0x027FFFFF, 0xFFFFFFFE,
0x0000007F, 0x00000000, 0xFFFF0000, 0x000707FF, 0x00000000, 0x07FFFFFE,
0x000007FE, 0xFFFE0000, 0xFFFFFFFF, 0x7CFFFFFF, 0x002F7FFF, 0x00000060,
0xFFFFFFE0, 0x23FFFFFF, 0xFF000000, 0x00000003, 0xFFF99FE0, 0x03C5FDFF,
0xB0000000, 0x00030003, 0xFFF987E0, 0x036DFDFF, 0x5E000000, 0x001C0000,
0xFFFBAFE0, 0x23EDFDFF, 0x00000000, 0x00000001, 0xFFF99FE0, 0x23CDFDFF,
0xB0000000, 0x00000003, 0xD63DC7E0, 0x03BFC718, 0x00000000, 0x00000000,
0xFFFDDFE0, 0x03EFFDFF, 0x00000000, 0x00000003, 0xFFFDDFE0, 0x03EFFDFF,
0x40000000, 0x00000003, 0xFFFDDFE0, 0x03FFFDFF, 0x00000000, 0x00000003,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xFFFFFFFE, 0x000D7FFF,
0x0000003F, 0x00000000, 0xFEF02596, 0x200D6CAE, 0x0000001F, 0x00000000,
0x00000000, 0x00000000, 0xFFFFFEFF, 0x000003FF, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0xFFFFFFFF, 0xFFFF003F, 0x007FFFFF, 0x0007DAED, 0x50000000,
0x82315001, 0x002C62AB, 0x40000000, 0xF580C900, 0x00000007, 0x02010800,
0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0FFFFFFF, 0xFFFFFFFF,
0xFFFFFFFF, 0x03FFFFFF, 0x3F3FFFFF, 0xFFFFFFFF, 0xAAFF3F3F, 0x3FFFFFFF,
0xFFFFFFFF, 0x5FDFFFFF, 0x0FCF1FDC, 0x1FDC1FFF, 0x00000000, 0x00004C40,
0x00000000, 0x00000000, 0x00000007, 0x00000000, 0x00000000, 0x00000000,
0x00000080, 0x000003FE, 0xFFFFFFFE, 0xFFFFFFFF, 0x001FFFFF, 0xFFFFFFFE,
0xFFFFFFFF, 0x07FFFFFF, 0xFFFFFFE0, 0x00001FFF, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xFFFFFFFF, 0xFFFFFFFF,
0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000003F, 0x00000000, 0x00000000,
0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000000F,
0x00000000, 0x00000000, 0x00000000, 0x07FF6000, 0x87FFFFFE, 0x07FFFFFE,
0x00000000, 0x00800000, 0xFF7FFFFF, 0xFF7FFFFF, 0x00FFFFFF, 0x00000000,
0xFFFF0000, 0xFFFFFFFF, 0xFFFFFFFF, 0xF80001FF, 0x00030003, 0x00000000,
0xFFFFFFFF, 0xFFFFFFFF, 0x0000003F, 0x00000003, 0xFFFFD7C0, 0xFFFFFFFB,
0x547F7FFF, 0x000FFFFD, 0xFFFFDFFE, 0xFFFFFFFF, 0xDFFEFFFF, 0xFFFFFFFF,
0xFFFF007B, 0xFFFFFFFF, 0xFFFF199F, 0x033FCFFF, 0x00000000, 0xFFFE0000,
0x027FFFFF, 0xFFFFFFFE, 0xFFFE007F, 0xBBFFFFFB, 0xFFFF0016, 0x000707FF,
0x00000000, 0x07FFFFFE, 0x0007FFFF, 0xFFFF03FF, 0xFFFFFFFF, 0x7CFFFFFF,
0xFFEF7FFF, 0x03FF3DFF, 0xFFFFFFEE, 0xF3FFFFFF, 0xFF1E3FFF, 0x0000FFCF,
0xFFF99FEE, 0xD3C5FDFF, 0xB080399F, 0x0003FFCF, 0xFFF987E4, 0xD36DFDFF,
0x5E003987, 0x001FFFC0, 0xFFFBAFEE, 0xF3EDFDFF, 0x00003BBF, 0x0000FFC1,
0xFFF99FEE, 0xF3CDFDFF, 0xB0C0398F, 0x0000FFC3, 0xD63DC7EC, 0xC3BFC718,
0x00803DC7, 0x0000FF80, 0xFFFDDFEE, 0xC3EFFDFF, 0x00603DDF, 0x0000FFC3,
0xFFFDDFEC, 0xC3EFFDFF, 0x40603DDF, 0x0000FFC3, 0xFFFDDFEC, 0xC3FFFDFF,
0x00803DCF, 0x0000FFC3, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
0xFFFFFFFE, 0x07FF7FFF, 0x03FF7FFF, 0x00000000, 0xFEF02596, 0x3BFF6CAE,
0x03FF3F5F, 0x00000000, 0x03000000, 0xC2A003FF, 0xFFFFFEFF, 0xFFFE03FF,
0xFEBF0FDF, 0x02FE3FFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x1FFF0000, 0x00000002,
0x000000A0, 0x003EFFFE, 0xFFFFFFFE, 0xFFFFFFFF, 0x661FFFFF, 0xFFFFFFFE,
0xFFFFFFFF, 0x77FFFFFF,
};
static const unsigned char nmstrtPages[] = {
0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x00,
0x00, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F,
0x10, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x12, 0x13,
0x00, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x15, 0x16, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x17,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x18,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x00, 0x00, 0x09, 0x0A, 0x0B,
0x0C, 0x0D, 0x0E, 0x0F, 0x10, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x12, 0x13, 0x00, 0x14, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x15, 0x16, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x17, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x18,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00,
};
static const unsigned char namePages[] = {
0x19, 0x03, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x00,
0x00, 0x1F, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25,
0x10, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x12, 0x13,
0x26, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x27, 0x16, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x17,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x18,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x19, 0x03, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x00, 0x00, 0x1F, 0x20, 0x21,
0x22, 0x23, 0x24, 0x25, 0x10, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x12, 0x13, 0x26, 0x14, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x27, 0x16, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x17, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x18,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00,
};

393
deps/EXPAT/expat/siphash.h vendored Normal file
View File

@@ -0,0 +1,393 @@
/* ==========================================================================
* siphash.h - SipHash-2-4 in a single header file
* --------------------------------------------------------------------------
* Derived by William Ahern from the reference implementation[1] published[2]
* by Jean-Philippe Aumasson and Daniel J. Berstein.
* Minimal changes by Sebastian Pipping and Victor Stinner on top, see below.
* Licensed under the CC0 Public Domain Dedication license.
*
* 1. https://www.131002.net/siphash/siphash24.c
* 2. https://www.131002.net/siphash/
* --------------------------------------------------------------------------
* HISTORY:
*
* 2020-10-03 (Sebastian Pipping)
* - Drop support for Visual Studio 9.0/2008 and earlier
*
* 2019-08-03 (Sebastian Pipping)
* - Mark part of sip24_valid as to be excluded from clang-format
* - Re-format code using clang-format 9
*
* 2018-07-08 (Anton Maklakov)
* - Add "fall through" markers for GCC's -Wimplicit-fallthrough
*
* 2017-11-03 (Sebastian Pipping)
* - Hide sip_tobin and sip_binof unless SIPHASH_TOBIN macro is defined
*
* 2017-07-25 (Vadim Zeitlin)
* - Fix use of SIPHASH_MAIN macro
*
* 2017-07-05 (Sebastian Pipping)
* - Use _SIP_ULL macro to not require a C++11 compiler if compiled as C++
* - Add const qualifiers at two places
* - Ensure <=80 characters line length (assuming tab width 4)
*
* 2017-06-23 (Victor Stinner)
* - Address Win64 compile warnings
*
* 2017-06-18 (Sebastian Pipping)
* - Clarify license note in the header
* - Address C89 issues:
* - Stop using inline keyword (and let compiler decide)
* - Replace _Bool by int
* - Turn macro siphash24 into a function
* - Address invalid conversion (void pointer) by explicit cast
* - Address lack of stdint.h for Visual Studio 2003 to 2008
* - Always expose sip24_valid (for self-tests)
*
* 2012-11-04 - Born. (William Ahern)
* --------------------------------------------------------------------------
* USAGE:
*
* SipHash-2-4 takes as input two 64-bit words as the key, some number of
* message bytes, and outputs a 64-bit word as the message digest. This
* implementation employs two data structures: a struct sipkey for
* representing the key, and a struct siphash for representing the hash
* state.
*
* For converting a 16-byte unsigned char array to a key, use either the
* macro sip_keyof or the routine sip_tokey. The former instantiates a
* compound literal key, while the latter requires a key object as a
* parameter.
*
* unsigned char secret[16];
* arc4random_buf(secret, sizeof secret);
* struct sipkey *key = sip_keyof(secret);
*
* For hashing a message, use either the convenience macro siphash24 or the
* routines sip24_init, sip24_update, and sip24_final.
*
* struct siphash state;
* void *msg;
* size_t len;
* uint64_t hash;
*
* sip24_init(&state, key);
* sip24_update(&state, msg, len);
* hash = sip24_final(&state);
*
* or
*
* hash = siphash24(msg, len, key);
*
* To convert the 64-bit hash value to a canonical 8-byte little-endian
* binary representation, use either the macro sip_binof or the routine
* sip_tobin. The former instantiates and returns a compound literal array,
* while the latter requires an array object as a parameter.
* --------------------------------------------------------------------------
* NOTES:
*
* o Neither sip_keyof, sip_binof, nor siphash24 will work with compilers
* lacking compound literal support. Instead, you must use the lower-level
* interfaces which take as parameters the temporary state objects.
*
* o Uppercase macros may evaluate parameters more than once. Lowercase
* macros should not exhibit any such side effects.
* ==========================================================================
*/
#ifndef SIPHASH_H
#define SIPHASH_H
#include <stddef.h> /* size_t */
#include <stdint.h> /* uint64_t uint32_t uint8_t */
/*
* Workaround to not require a C++11 compiler for using ULL suffix
* if this code is included and compiled as C++; related GCC warning is:
* warning: use of C++11 long long integer constant [-Wlong-long]
*/
#define _SIP_ULL(high, low) ((((uint64_t)high) << 32) | (low))
#define SIP_ROTL(x, b) (uint64_t)(((x) << (b)) | ((x) >> (64 - (b))))
#define SIP_U32TO8_LE(p, v) \
(p)[0] = (uint8_t)((v) >> 0); \
(p)[1] = (uint8_t)((v) >> 8); \
(p)[2] = (uint8_t)((v) >> 16); \
(p)[3] = (uint8_t)((v) >> 24);
#define SIP_U64TO8_LE(p, v) \
SIP_U32TO8_LE((p) + 0, (uint32_t)((v) >> 0)); \
SIP_U32TO8_LE((p) + 4, (uint32_t)((v) >> 32));
#define SIP_U8TO64_LE(p) \
(((uint64_t)((p)[0]) << 0) | ((uint64_t)((p)[1]) << 8) \
| ((uint64_t)((p)[2]) << 16) | ((uint64_t)((p)[3]) << 24) \
| ((uint64_t)((p)[4]) << 32) | ((uint64_t)((p)[5]) << 40) \
| ((uint64_t)((p)[6]) << 48) | ((uint64_t)((p)[7]) << 56))
#define SIPHASH_INITIALIZER \
{ 0, 0, 0, 0, {0}, 0, 0 }
struct siphash {
uint64_t v0, v1, v2, v3;
unsigned char buf[8], *p;
uint64_t c;
}; /* struct siphash */
#define SIP_KEYLEN 16
struct sipkey {
uint64_t k[2];
}; /* struct sipkey */
#define sip_keyof(k) sip_tokey(&(struct sipkey){{0}}, (k))
static struct sipkey *
sip_tokey(struct sipkey *key, const void *src) {
key->k[0] = SIP_U8TO64_LE((const unsigned char *)src);
key->k[1] = SIP_U8TO64_LE((const unsigned char *)src + 8);
return key;
} /* sip_tokey() */
#ifdef SIPHASH_TOBIN
# define sip_binof(v) sip_tobin((unsigned char[8]){0}, (v))
static void *
sip_tobin(void *dst, uint64_t u64) {
SIP_U64TO8_LE((unsigned char *)dst, u64);
return dst;
} /* sip_tobin() */
#endif /* SIPHASH_TOBIN */
static void
sip_round(struct siphash *H, const int rounds) {
int i;
for (i = 0; i < rounds; i++) {
H->v0 += H->v1;
H->v1 = SIP_ROTL(H->v1, 13);
H->v1 ^= H->v0;
H->v0 = SIP_ROTL(H->v0, 32);
H->v2 += H->v3;
H->v3 = SIP_ROTL(H->v3, 16);
H->v3 ^= H->v2;
H->v0 += H->v3;
H->v3 = SIP_ROTL(H->v3, 21);
H->v3 ^= H->v0;
H->v2 += H->v1;
H->v1 = SIP_ROTL(H->v1, 17);
H->v1 ^= H->v2;
H->v2 = SIP_ROTL(H->v2, 32);
}
} /* sip_round() */
static struct siphash *
sip24_init(struct siphash *H, const struct sipkey *key) {
H->v0 = _SIP_ULL(0x736f6d65U, 0x70736575U) ^ key->k[0];
H->v1 = _SIP_ULL(0x646f7261U, 0x6e646f6dU) ^ key->k[1];
H->v2 = _SIP_ULL(0x6c796765U, 0x6e657261U) ^ key->k[0];
H->v3 = _SIP_ULL(0x74656462U, 0x79746573U) ^ key->k[1];
H->p = H->buf;
H->c = 0;
return H;
} /* sip24_init() */
#define sip_endof(a) (&(a)[sizeof(a) / sizeof *(a)])
static struct siphash *
sip24_update(struct siphash *H, const void *src, size_t len) {
const unsigned char *p = (const unsigned char *)src, *pe = p + len;
uint64_t m;
do {
while (p < pe && H->p < sip_endof(H->buf))
*H->p++ = *p++;
if (H->p < sip_endof(H->buf))
break;
m = SIP_U8TO64_LE(H->buf);
H->v3 ^= m;
sip_round(H, 2);
H->v0 ^= m;
H->p = H->buf;
H->c += 8;
} while (p < pe);
return H;
} /* sip24_update() */
static uint64_t
sip24_final(struct siphash *H) {
const char left = (char)(H->p - H->buf);
uint64_t b = (H->c + left) << 56;
switch (left) {
case 7:
b |= (uint64_t)H->buf[6] << 48;
/* fall through */
case 6:
b |= (uint64_t)H->buf[5] << 40;
/* fall through */
case 5:
b |= (uint64_t)H->buf[4] << 32;
/* fall through */
case 4:
b |= (uint64_t)H->buf[3] << 24;
/* fall through */
case 3:
b |= (uint64_t)H->buf[2] << 16;
/* fall through */
case 2:
b |= (uint64_t)H->buf[1] << 8;
/* fall through */
case 1:
b |= (uint64_t)H->buf[0] << 0;
/* fall through */
case 0:
break;
}
H->v3 ^= b;
sip_round(H, 2);
H->v0 ^= b;
H->v2 ^= 0xff;
sip_round(H, 4);
return H->v0 ^ H->v1 ^ H->v2 ^ H->v3;
} /* sip24_final() */
static uint64_t
siphash24(const void *src, size_t len, const struct sipkey *key) {
struct siphash state = SIPHASH_INITIALIZER;
return sip24_final(sip24_update(sip24_init(&state, key), src, len));
} /* siphash24() */
/*
* SipHash-2-4 output with
* k = 00 01 02 ...
* and
* in = (empty string)
* in = 00 (1 byte)
* in = 00 01 (2 bytes)
* in = 00 01 02 (3 bytes)
* ...
* in = 00 01 02 ... 3e (63 bytes)
*/
static int
sip24_valid(void) {
/* clang-format off */
static const unsigned char vectors[64][8] = {
{ 0x31, 0x0e, 0x0e, 0xdd, 0x47, 0xdb, 0x6f, 0x72, },
{ 0xfd, 0x67, 0xdc, 0x93, 0xc5, 0x39, 0xf8, 0x74, },
{ 0x5a, 0x4f, 0xa9, 0xd9, 0x09, 0x80, 0x6c, 0x0d, },
{ 0x2d, 0x7e, 0xfb, 0xd7, 0x96, 0x66, 0x67, 0x85, },
{ 0xb7, 0x87, 0x71, 0x27, 0xe0, 0x94, 0x27, 0xcf, },
{ 0x8d, 0xa6, 0x99, 0xcd, 0x64, 0x55, 0x76, 0x18, },
{ 0xce, 0xe3, 0xfe, 0x58, 0x6e, 0x46, 0xc9, 0xcb, },
{ 0x37, 0xd1, 0x01, 0x8b, 0xf5, 0x00, 0x02, 0xab, },
{ 0x62, 0x24, 0x93, 0x9a, 0x79, 0xf5, 0xf5, 0x93, },
{ 0xb0, 0xe4, 0xa9, 0x0b, 0xdf, 0x82, 0x00, 0x9e, },
{ 0xf3, 0xb9, 0xdd, 0x94, 0xc5, 0xbb, 0x5d, 0x7a, },
{ 0xa7, 0xad, 0x6b, 0x22, 0x46, 0x2f, 0xb3, 0xf4, },
{ 0xfb, 0xe5, 0x0e, 0x86, 0xbc, 0x8f, 0x1e, 0x75, },
{ 0x90, 0x3d, 0x84, 0xc0, 0x27, 0x56, 0xea, 0x14, },
{ 0xee, 0xf2, 0x7a, 0x8e, 0x90, 0xca, 0x23, 0xf7, },
{ 0xe5, 0x45, 0xbe, 0x49, 0x61, 0xca, 0x29, 0xa1, },
{ 0xdb, 0x9b, 0xc2, 0x57, 0x7f, 0xcc, 0x2a, 0x3f, },
{ 0x94, 0x47, 0xbe, 0x2c, 0xf5, 0xe9, 0x9a, 0x69, },
{ 0x9c, 0xd3, 0x8d, 0x96, 0xf0, 0xb3, 0xc1, 0x4b, },
{ 0xbd, 0x61, 0x79, 0xa7, 0x1d, 0xc9, 0x6d, 0xbb, },
{ 0x98, 0xee, 0xa2, 0x1a, 0xf2, 0x5c, 0xd6, 0xbe, },
{ 0xc7, 0x67, 0x3b, 0x2e, 0xb0, 0xcb, 0xf2, 0xd0, },
{ 0x88, 0x3e, 0xa3, 0xe3, 0x95, 0x67, 0x53, 0x93, },
{ 0xc8, 0xce, 0x5c, 0xcd, 0x8c, 0x03, 0x0c, 0xa8, },
{ 0x94, 0xaf, 0x49, 0xf6, 0xc6, 0x50, 0xad, 0xb8, },
{ 0xea, 0xb8, 0x85, 0x8a, 0xde, 0x92, 0xe1, 0xbc, },
{ 0xf3, 0x15, 0xbb, 0x5b, 0xb8, 0x35, 0xd8, 0x17, },
{ 0xad, 0xcf, 0x6b, 0x07, 0x63, 0x61, 0x2e, 0x2f, },
{ 0xa5, 0xc9, 0x1d, 0xa7, 0xac, 0xaa, 0x4d, 0xde, },
{ 0x71, 0x65, 0x95, 0x87, 0x66, 0x50, 0xa2, 0xa6, },
{ 0x28, 0xef, 0x49, 0x5c, 0x53, 0xa3, 0x87, 0xad, },
{ 0x42, 0xc3, 0x41, 0xd8, 0xfa, 0x92, 0xd8, 0x32, },
{ 0xce, 0x7c, 0xf2, 0x72, 0x2f, 0x51, 0x27, 0x71, },
{ 0xe3, 0x78, 0x59, 0xf9, 0x46, 0x23, 0xf3, 0xa7, },
{ 0x38, 0x12, 0x05, 0xbb, 0x1a, 0xb0, 0xe0, 0x12, },
{ 0xae, 0x97, 0xa1, 0x0f, 0xd4, 0x34, 0xe0, 0x15, },
{ 0xb4, 0xa3, 0x15, 0x08, 0xbe, 0xff, 0x4d, 0x31, },
{ 0x81, 0x39, 0x62, 0x29, 0xf0, 0x90, 0x79, 0x02, },
{ 0x4d, 0x0c, 0xf4, 0x9e, 0xe5, 0xd4, 0xdc, 0xca, },
{ 0x5c, 0x73, 0x33, 0x6a, 0x76, 0xd8, 0xbf, 0x9a, },
{ 0xd0, 0xa7, 0x04, 0x53, 0x6b, 0xa9, 0x3e, 0x0e, },
{ 0x92, 0x59, 0x58, 0xfc, 0xd6, 0x42, 0x0c, 0xad, },
{ 0xa9, 0x15, 0xc2, 0x9b, 0xc8, 0x06, 0x73, 0x18, },
{ 0x95, 0x2b, 0x79, 0xf3, 0xbc, 0x0a, 0xa6, 0xd4, },
{ 0xf2, 0x1d, 0xf2, 0xe4, 0x1d, 0x45, 0x35, 0xf9, },
{ 0x87, 0x57, 0x75, 0x19, 0x04, 0x8f, 0x53, 0xa9, },
{ 0x10, 0xa5, 0x6c, 0xf5, 0xdf, 0xcd, 0x9a, 0xdb, },
{ 0xeb, 0x75, 0x09, 0x5c, 0xcd, 0x98, 0x6c, 0xd0, },
{ 0x51, 0xa9, 0xcb, 0x9e, 0xcb, 0xa3, 0x12, 0xe6, },
{ 0x96, 0xaf, 0xad, 0xfc, 0x2c, 0xe6, 0x66, 0xc7, },
{ 0x72, 0xfe, 0x52, 0x97, 0x5a, 0x43, 0x64, 0xee, },
{ 0x5a, 0x16, 0x45, 0xb2, 0x76, 0xd5, 0x92, 0xa1, },
{ 0xb2, 0x74, 0xcb, 0x8e, 0xbf, 0x87, 0x87, 0x0a, },
{ 0x6f, 0x9b, 0xb4, 0x20, 0x3d, 0xe7, 0xb3, 0x81, },
{ 0xea, 0xec, 0xb2, 0xa3, 0x0b, 0x22, 0xa8, 0x7f, },
{ 0x99, 0x24, 0xa4, 0x3c, 0xc1, 0x31, 0x57, 0x24, },
{ 0xbd, 0x83, 0x8d, 0x3a, 0xaf, 0xbf, 0x8d, 0xb7, },
{ 0x0b, 0x1a, 0x2a, 0x32, 0x65, 0xd5, 0x1a, 0xea, },
{ 0x13, 0x50, 0x79, 0xa3, 0x23, 0x1c, 0xe6, 0x60, },
{ 0x93, 0x2b, 0x28, 0x46, 0xe4, 0xd7, 0x06, 0x66, },
{ 0xe1, 0x91, 0x5f, 0x5c, 0xb1, 0xec, 0xa4, 0x6c, },
{ 0xf3, 0x25, 0x96, 0x5c, 0xa1, 0x6d, 0x62, 0x9f, },
{ 0x57, 0x5f, 0xf2, 0x8e, 0x60, 0x38, 0x1b, 0xe5, },
{ 0x72, 0x45, 0x06, 0xeb, 0x4c, 0x32, 0x8a, 0x95, }
};
/* clang-format on */
unsigned char in[64];
struct sipkey k;
size_t i;
sip_tokey(&k, "\000\001\002\003\004\005\006\007\010\011"
"\012\013\014\015\016\017");
for (i = 0; i < sizeof in; ++i) {
in[i] = (unsigned char)i;
if (siphash24(in, i, &k) != SIP_U8TO64_LE(vectors[i]))
return 0;
}
return 1;
} /* sip24_valid() */
#ifdef SIPHASH_MAIN
# include <stdio.h>
int
main(void) {
const int ok = sip24_valid();
if (ok)
puts("OK");
else
puts("FAIL");
return ! ok;
} /* main() */
#endif /* SIPHASH_MAIN */
#endif /* SIPHASH_H */

View File

@@ -1,37 +1,66 @@
/* Copyright (c) 1998, 1999 Thai Open Source Software Center Ltd
See the file COPYING for copying permission.
/*
__ __ _
___\ \/ /_ __ __ _| |_
/ _ \\ /| '_ \ / _` | __|
| __// \| |_) | (_| | |_
\___/_/\_\ .__/ \__,_|\__|
|_| XML parser
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
Copyright (c) 2002 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
Copyright (c) 2017 Sebastian Pipping <sebastian@pipping.org>
Licensed under the MIT license:
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to permit
persons to whom the Software is furnished to do so, subject to the
following conditions:
The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
/* 0x80 */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
/* 0x84 */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
/* 0x88 */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
/* 0x8C */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
/* 0x90 */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
/* 0x94 */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
/* 0x98 */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
/* 0x9C */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
/* 0xA0 */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
/* 0xA4 */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
/* 0xA8 */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
/* 0xAC */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
/* 0xB0 */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
/* 0xB4 */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
/* 0xB8 */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
/* 0xBC */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
/* 0xC0 */ BT_LEAD2, BT_LEAD2, BT_LEAD2, BT_LEAD2,
/* 0xC4 */ BT_LEAD2, BT_LEAD2, BT_LEAD2, BT_LEAD2,
/* 0xC8 */ BT_LEAD2, BT_LEAD2, BT_LEAD2, BT_LEAD2,
/* 0xCC */ BT_LEAD2, BT_LEAD2, BT_LEAD2, BT_LEAD2,
/* 0xD0 */ BT_LEAD2, BT_LEAD2, BT_LEAD2, BT_LEAD2,
/* 0xD4 */ BT_LEAD2, BT_LEAD2, BT_LEAD2, BT_LEAD2,
/* 0xD8 */ BT_LEAD2, BT_LEAD2, BT_LEAD2, BT_LEAD2,
/* 0xDC */ BT_LEAD2, BT_LEAD2, BT_LEAD2, BT_LEAD2,
/* 0xE0 */ BT_LEAD3, BT_LEAD3, BT_LEAD3, BT_LEAD3,
/* 0xE4 */ BT_LEAD3, BT_LEAD3, BT_LEAD3, BT_LEAD3,
/* 0xE8 */ BT_LEAD3, BT_LEAD3, BT_LEAD3, BT_LEAD3,
/* 0xEC */ BT_LEAD3, BT_LEAD3, BT_LEAD3, BT_LEAD3,
/* 0xF0 */ BT_LEAD4, BT_LEAD4, BT_LEAD4, BT_LEAD4,
/* 0xF4 */ BT_LEAD4, BT_NONXML, BT_NONXML, BT_NONXML,
/* 0xF8 */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
/* 0xFC */ BT_NONXML, BT_NONXML, BT_MALFORM, BT_MALFORM,
/* 0x84 */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
/* 0x88 */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
/* 0x8C */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
/* 0x90 */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
/* 0x94 */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
/* 0x98 */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
/* 0x9C */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
/* 0xA0 */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
/* 0xA4 */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
/* 0xA8 */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
/* 0xAC */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
/* 0xB0 */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
/* 0xB4 */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
/* 0xB8 */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
/* 0xBC */ BT_TRAIL, BT_TRAIL, BT_TRAIL, BT_TRAIL,
/* 0xC0 */ BT_LEAD2, BT_LEAD2, BT_LEAD2, BT_LEAD2,
/* 0xC4 */ BT_LEAD2, BT_LEAD2, BT_LEAD2, BT_LEAD2,
/* 0xC8 */ BT_LEAD2, BT_LEAD2, BT_LEAD2, BT_LEAD2,
/* 0xCC */ BT_LEAD2, BT_LEAD2, BT_LEAD2, BT_LEAD2,
/* 0xD0 */ BT_LEAD2, BT_LEAD2, BT_LEAD2, BT_LEAD2,
/* 0xD4 */ BT_LEAD2, BT_LEAD2, BT_LEAD2, BT_LEAD2,
/* 0xD8 */ BT_LEAD2, BT_LEAD2, BT_LEAD2, BT_LEAD2,
/* 0xDC */ BT_LEAD2, BT_LEAD2, BT_LEAD2, BT_LEAD2,
/* 0xE0 */ BT_LEAD3, BT_LEAD3, BT_LEAD3, BT_LEAD3,
/* 0xE4 */ BT_LEAD3, BT_LEAD3, BT_LEAD3, BT_LEAD3,
/* 0xE8 */ BT_LEAD3, BT_LEAD3, BT_LEAD3, BT_LEAD3,
/* 0xEC */ BT_LEAD3, BT_LEAD3, BT_LEAD3, BT_LEAD3,
/* 0xF0 */ BT_LEAD4, BT_LEAD4, BT_LEAD4, BT_LEAD4,
/* 0xF4 */ BT_LEAD4, BT_NONXML, BT_NONXML, BT_NONXML,
/* 0xF8 */ BT_NONXML, BT_NONXML, BT_NONXML, BT_NONXML,
/* 0xFC */ BT_NONXML, BT_NONXML, BT_MALFORM, BT_MALFORM,

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,5 +1,36 @@
/* Copyright (c) 1998, 1999 Thai Open Source Software Center Ltd
See the file COPYING for copying permission.
/*
__ __ _
___\ \/ /_ __ __ _| |_
/ _ \\ /| '_ \ / _` | __|
| __// \| |_) | (_| | |_
\___/_/\_\ .__/ \__,_|\__|
|_| XML parser
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
Copyright (c) 2002 Karl Waclawek <karl@waclawek.net>
Copyright (c) 2002 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
Copyright (c) 2017 Sebastian Pipping <sebastian@pipping.org>
Licensed under the MIT license:
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to permit
persons to whom the Software is furnished to do so, subject to the
following conditions:
The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
#ifndef XmlRole_INCLUDED
@@ -8,7 +39,7 @@
#ifdef __VMS
/* 0 1 2 3 0 1 2 3
1234567890123456789012345678901 1234567890123456789012345678901 */
#define XmlPrologStateInitExternalEntity XmlPrologStateInitExternalEnt
# define XmlPrologStateInitExternalEntity XmlPrologStateInitExternalEnt
#endif
#include "xmltok.h"
@@ -85,11 +116,8 @@ enum {
};
typedef struct prolog_state {
int (PTRCALL *handler) (struct prolog_state *state,
int tok,
const char *ptr,
const char *end,
const ENCODING *enc);
int(PTRCALL *handler)(struct prolog_state *state, int tok, const char *ptr,
const char *end, const ENCODING *enc);
unsigned level;
int role_none;
#ifdef XML_DTD
@@ -104,8 +132,8 @@ void XmlPrologStateInit(PROLOG_STATE *);
void XmlPrologStateInitExternalEntity(PROLOG_STATE *);
#endif /* XML_DTD */
#define XmlTokenRole(state, tok, ptr, end, enc) \
(((state)->handler)(state, tok, ptr, end, enc))
#define XmlTokenRole(state, tok, ptr, end, enc) \
(((state)->handler)(state, tok, ptr, end, enc))
#ifdef __cplusplus
}

File diff suppressed because it is too large Load Diff

View File

@@ -1,5 +1,37 @@
/* Copyright (c) 1998, 1999 Thai Open Source Software Center Ltd
See the file COPYING for copying permission.
/*
__ __ _
___\ \/ /_ __ __ _| |_
/ _ \\ /| '_ \ / _` | __|
| __// \| |_) | (_| | |_
\___/_/\_\ .__/ \__,_|\__|
|_| XML parser
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
Copyright (c) 2002 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
Copyright (c) 2002-2005 Karl Waclawek <karl@waclawek.net>
Copyright (c) 2016-2017 Sebastian Pipping <sebastian@pipping.org>
Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk>
Licensed under the MIT license:
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to permit
persons to whom the Software is furnished to do so, subject to the
following conditions:
The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
#ifndef XmlTok_INCLUDED
@@ -10,16 +42,18 @@ extern "C" {
#endif
/* The following token may be returned by XmlContentTok */
#define XML_TOK_TRAILING_RSQB -5 /* ] or ]] at the end of the scan; might be
start of illegal ]]> sequence */
#define XML_TOK_TRAILING_RSQB \
-5 /* ] or ]] at the end of the scan; might be \
start of illegal ]]> sequence */
/* The following tokens may be returned by both XmlPrologTok and
XmlContentTok.
*/
#define XML_TOK_NONE -4 /* The string to be scanned is empty */
#define XML_TOK_TRAILING_CR -3 /* A CR at the end of the scan;
might be part of CRLF sequence */
#define XML_TOK_PARTIAL_CHAR -2 /* only part of a multibyte sequence */
#define XML_TOK_PARTIAL -1 /* only part of a token */
#define XML_TOK_NONE -4 /* The string to be scanned is empty */
#define XML_TOK_TRAILING_CR \
-3 /* A CR at the end of the scan; \
might be part of CRLF sequence */
#define XML_TOK_PARTIAL_CHAR -2 /* only part of a multibyte sequence */
#define XML_TOK_PARTIAL -1 /* only part of a token */
#define XML_TOK_INVALID 0
/* The following tokens are returned by XmlContentTok; some are also
@@ -34,24 +68,24 @@ extern "C" {
#define XML_TOK_DATA_NEWLINE 7
#define XML_TOK_CDATA_SECT_OPEN 8
#define XML_TOK_ENTITY_REF 9
#define XML_TOK_CHAR_REF 10 /* numeric character reference */
#define XML_TOK_CHAR_REF 10 /* numeric character reference */
/* The following tokens may be returned by both XmlPrologTok and
XmlContentTok.
*/
#define XML_TOK_PI 11 /* processing instruction */
#define XML_TOK_XML_DECL 12 /* XML decl or text decl */
#define XML_TOK_PI 11 /* processing instruction */
#define XML_TOK_XML_DECL 12 /* XML decl or text decl */
#define XML_TOK_COMMENT 13
#define XML_TOK_BOM 14 /* Byte order mark */
#define XML_TOK_BOM 14 /* Byte order mark */
/* The following tokens are returned only by XmlPrologTok */
#define XML_TOK_PROLOG_S 15
#define XML_TOK_DECL_OPEN 16 /* <!foo */
#define XML_TOK_DECL_CLOSE 17 /* > */
#define XML_TOK_DECL_OPEN 16 /* <!foo */
#define XML_TOK_DECL_CLOSE 17 /* > */
#define XML_TOK_NAME 18
#define XML_TOK_NMTOKEN 19
#define XML_TOK_POUND_NAME 20 /* #name */
#define XML_TOK_OR 21 /* | */
#define XML_TOK_POUND_NAME 20 /* #name */
#define XML_TOK_OR 21 /* | */
#define XML_TOK_PERCENT 22
#define XML_TOK_OPEN_PAREN 23
#define XML_TOK_CLOSE_PAREN 24
@@ -62,14 +96,14 @@ extern "C" {
#define XML_TOK_INSTANCE_START 29
/* The following occur only in element type declarations */
#define XML_TOK_NAME_QUESTION 30 /* name? */
#define XML_TOK_NAME_ASTERISK 31 /* name* */
#define XML_TOK_NAME_PLUS 32 /* name+ */
#define XML_TOK_COND_SECT_OPEN 33 /* <![ */
#define XML_TOK_COND_SECT_CLOSE 34 /* ]]> */
#define XML_TOK_CLOSE_PAREN_QUESTION 35 /* )? */
#define XML_TOK_CLOSE_PAREN_ASTERISK 36 /* )* */
#define XML_TOK_CLOSE_PAREN_PLUS 37 /* )+ */
#define XML_TOK_NAME_QUESTION 30 /* name? */
#define XML_TOK_NAME_ASTERISK 31 /* name* */
#define XML_TOK_NAME_PLUS 32 /* name+ */
#define XML_TOK_COND_SECT_OPEN 33 /* <![ */
#define XML_TOK_COND_SECT_CLOSE 34 /* ]]> */
#define XML_TOK_CLOSE_PAREN_QUESTION 35 /* )? */
#define XML_TOK_CLOSE_PAREN_ASTERISK 36 /* )* */
#define XML_TOK_CLOSE_PAREN_PLUS 37 /* )+ */
#define XML_TOK_COMMA 38
/* The following token is returned only by XmlAttributeValueTok */
@@ -84,20 +118,20 @@ extern "C" {
#define XML_TOK_PREFIXED_NAME 41
#ifdef XML_DTD
#define XML_TOK_IGNORE_SECT 42
# define XML_TOK_IGNORE_SECT 42
#endif /* XML_DTD */
#ifdef XML_DTD
#define XML_N_STATES 4
# define XML_N_STATES 4
#else /* not XML_DTD */
#define XML_N_STATES 3
# define XML_N_STATES 3
#endif /* not XML_DTD */
#define XML_PROLOG_STATE 0
#define XML_CONTENT_STATE 1
#define XML_CDATA_SECTION_STATE 2
#ifdef XML_DTD
#define XML_IGNORE_SECTION_STATE 3
# define XML_IGNORE_SECTION_STATE 3
#endif /* XML_DTD */
#define XML_N_LITERAL_TYPES 2
@@ -125,55 +159,41 @@ typedef struct {
struct encoding;
typedef struct encoding ENCODING;
typedef int (PTRCALL *SCANNER)(const ENCODING *,
const char *,
const char *,
const char **);
typedef int(PTRCALL *SCANNER)(const ENCODING *, const char *, const char *,
const char **);
enum XML_Convert_Result {
XML_CONVERT_COMPLETED = 0,
XML_CONVERT_INPUT_INCOMPLETE = 1,
XML_CONVERT_OUTPUT_EXHAUSTED = 2 /* and therefore potentially input remaining as well */
XML_CONVERT_OUTPUT_EXHAUSTED
= 2 /* and therefore potentially input remaining as well */
};
struct encoding {
SCANNER scanners[XML_N_STATES];
SCANNER literalScanners[XML_N_LITERAL_TYPES];
int (PTRCALL *sameName)(const ENCODING *,
const char *,
const char *);
int (PTRCALL *nameMatchesAscii)(const ENCODING *,
const char *,
const char *,
const char *);
int (PTRFASTCALL *nameLength)(const ENCODING *, const char *);
int(PTRCALL *nameMatchesAscii)(const ENCODING *, const char *, const char *,
const char *);
int(PTRFASTCALL *nameLength)(const ENCODING *, const char *);
const char *(PTRFASTCALL *skipS)(const ENCODING *, const char *);
int (PTRCALL *getAtts)(const ENCODING *enc,
const char *ptr,
int attsMax,
ATTRIBUTE *atts);
int (PTRFASTCALL *charRefNumber)(const ENCODING *enc, const char *ptr);
int (PTRCALL *predefinedEntityName)(const ENCODING *,
const char *,
const char *);
void (PTRCALL *updatePosition)(const ENCODING *,
const char *ptr,
const char *end,
POSITION *);
int (PTRCALL *isPublicId)(const ENCODING *enc,
const char *ptr,
const char *end,
const char **badPtr);
enum XML_Convert_Result (PTRCALL *utf8Convert)(const ENCODING *enc,
const char **fromP,
const char *fromLim,
char **toP,
const char *toLim);
enum XML_Convert_Result (PTRCALL *utf16Convert)(const ENCODING *enc,
const char **fromP,
const char *fromLim,
unsigned short **toP,
const unsigned short *toLim);
int(PTRCALL *getAtts)(const ENCODING *enc, const char *ptr, int attsMax,
ATTRIBUTE *atts);
int(PTRFASTCALL *charRefNumber)(const ENCODING *enc, const char *ptr);
int(PTRCALL *predefinedEntityName)(const ENCODING *, const char *,
const char *);
void(PTRCALL *updatePosition)(const ENCODING *, const char *ptr,
const char *end, POSITION *);
int(PTRCALL *isPublicId)(const ENCODING *enc, const char *ptr,
const char *end, const char **badPtr);
enum XML_Convert_Result(PTRCALL *utf8Convert)(const ENCODING *enc,
const char **fromP,
const char *fromLim, char **toP,
const char *toLim);
enum XML_Convert_Result(PTRCALL *utf16Convert)(const ENCODING *enc,
const char **fromP,
const char *fromLim,
unsigned short **toP,
const unsigned short *toLim);
int minBytesPerChar;
char isUtf8;
char isUtf16;
@@ -200,68 +220,62 @@ struct encoding {
the prolog outside literals, comments and processing instructions.
*/
#define XmlTok(enc, state, ptr, end, nextTokPtr) \
#define XmlTok(enc, state, ptr, end, nextTokPtr) \
(((enc)->scanners[state])(enc, ptr, end, nextTokPtr))
#define XmlPrologTok(enc, ptr, end, nextTokPtr) \
XmlTok(enc, XML_PROLOG_STATE, ptr, end, nextTokPtr)
#define XmlPrologTok(enc, ptr, end, nextTokPtr) \
XmlTok(enc, XML_PROLOG_STATE, ptr, end, nextTokPtr)
#define XmlContentTok(enc, ptr, end, nextTokPtr) \
XmlTok(enc, XML_CONTENT_STATE, ptr, end, nextTokPtr)
#define XmlContentTok(enc, ptr, end, nextTokPtr) \
XmlTok(enc, XML_CONTENT_STATE, ptr, end, nextTokPtr)
#define XmlCdataSectionTok(enc, ptr, end, nextTokPtr) \
XmlTok(enc, XML_CDATA_SECTION_STATE, ptr, end, nextTokPtr)
#define XmlCdataSectionTok(enc, ptr, end, nextTokPtr) \
XmlTok(enc, XML_CDATA_SECTION_STATE, ptr, end, nextTokPtr)
#ifdef XML_DTD
#define XmlIgnoreSectionTok(enc, ptr, end, nextTokPtr) \
XmlTok(enc, XML_IGNORE_SECTION_STATE, ptr, end, nextTokPtr)
# define XmlIgnoreSectionTok(enc, ptr, end, nextTokPtr) \
XmlTok(enc, XML_IGNORE_SECTION_STATE, ptr, end, nextTokPtr)
#endif /* XML_DTD */
/* This is used for performing a 2nd-level tokenization on the content
of a literal that has already been returned by XmlTok.
*/
#define XmlLiteralTok(enc, literalType, ptr, end, nextTokPtr) \
#define XmlLiteralTok(enc, literalType, ptr, end, nextTokPtr) \
(((enc)->literalScanners[literalType])(enc, ptr, end, nextTokPtr))
#define XmlAttributeValueTok(enc, ptr, end, nextTokPtr) \
XmlLiteralTok(enc, XML_ATTRIBUTE_VALUE_LITERAL, ptr, end, nextTokPtr)
#define XmlAttributeValueTok(enc, ptr, end, nextTokPtr) \
XmlLiteralTok(enc, XML_ATTRIBUTE_VALUE_LITERAL, ptr, end, nextTokPtr)
#define XmlEntityValueTok(enc, ptr, end, nextTokPtr) \
XmlLiteralTok(enc, XML_ENTITY_VALUE_LITERAL, ptr, end, nextTokPtr)
#define XmlEntityValueTok(enc, ptr, end, nextTokPtr) \
XmlLiteralTok(enc, XML_ENTITY_VALUE_LITERAL, ptr, end, nextTokPtr)
#define XmlSameName(enc, ptr1, ptr2) (((enc)->sameName)(enc, ptr1, ptr2))
#define XmlNameMatchesAscii(enc, ptr1, end1, ptr2) \
#define XmlNameMatchesAscii(enc, ptr1, end1, ptr2) \
(((enc)->nameMatchesAscii)(enc, ptr1, end1, ptr2))
#define XmlNameLength(enc, ptr) \
(((enc)->nameLength)(enc, ptr))
#define XmlNameLength(enc, ptr) (((enc)->nameLength)(enc, ptr))
#define XmlSkipS(enc, ptr) \
(((enc)->skipS)(enc, ptr))
#define XmlSkipS(enc, ptr) (((enc)->skipS)(enc, ptr))
#define XmlGetAttributes(enc, ptr, attsMax, atts) \
#define XmlGetAttributes(enc, ptr, attsMax, atts) \
(((enc)->getAtts)(enc, ptr, attsMax, atts))
#define XmlCharRefNumber(enc, ptr) \
(((enc)->charRefNumber)(enc, ptr))
#define XmlCharRefNumber(enc, ptr) (((enc)->charRefNumber)(enc, ptr))
#define XmlPredefinedEntityName(enc, ptr, end) \
#define XmlPredefinedEntityName(enc, ptr, end) \
(((enc)->predefinedEntityName)(enc, ptr, end))
#define XmlUpdatePosition(enc, ptr, end, pos) \
#define XmlUpdatePosition(enc, ptr, end, pos) \
(((enc)->updatePosition)(enc, ptr, end, pos))
#define XmlIsPublicId(enc, ptr, end, badPtr) \
#define XmlIsPublicId(enc, ptr, end, badPtr) \
(((enc)->isPublicId)(enc, ptr, end, badPtr))
#define XmlUtf8Convert(enc, fromP, fromLim, toP, toLim) \
#define XmlUtf8Convert(enc, fromP, fromLim, toP, toLim) \
(((enc)->utf8Convert)(enc, fromP, fromLim, toP, toLim))
#define XmlUtf16Convert(enc, fromP, fromLim, toP, toLim) \
#define XmlUtf16Convert(enc, fromP, fromLim, toP, toLim) \
(((enc)->utf16Convert)(enc, fromP, fromLim, toP, toLim))
typedef struct {
@@ -269,16 +283,11 @@ typedef struct {
const ENCODING **encPtr;
} INIT_ENCODING;
int XmlParseXmlDecl(int isGeneralTextEntity,
const ENCODING *enc,
const char *ptr,
const char *end,
const char **badPtr,
const char **versionPtr,
const char **versionEndPtr,
int XmlParseXmlDecl(int isGeneralTextEntity, const ENCODING *enc,
const char *ptr, const char *end, const char **badPtr,
const char **versionPtr, const char **versionEndPtr,
const char **encodingNamePtr,
const ENCODING **namedEncodingPtr,
int *standalonePtr);
const ENCODING **namedEncodingPtr, int *standalonePtr);
int XmlInitEncoding(INIT_ENCODING *, const ENCODING **, const char *name);
const ENCODING *XmlGetUtf8InternalEncoding(void);
@@ -287,34 +296,22 @@ int FASTCALL XmlUtf8Encode(int charNumber, char *buf);
int FASTCALL XmlUtf16Encode(int charNumber, unsigned short *buf);
int XmlSizeOfUnknownEncoding(void);
typedef int(XMLCALL *CONVERTER)(void *userData, const char *p);
typedef int (XMLCALL *CONVERTER) (void *userData, const char *p);
ENCODING *XmlInitUnknownEncoding(void *mem, int *table, CONVERTER convert,
void *userData);
ENCODING *
XmlInitUnknownEncoding(void *mem,
int *table,
CONVERTER convert,
void *userData);
int XmlParseXmlDeclNS(int isGeneralTextEntity,
const ENCODING *enc,
const char *ptr,
const char *end,
const char **badPtr,
const char **versionPtr,
const char **versionEndPtr,
int XmlParseXmlDeclNS(int isGeneralTextEntity, const ENCODING *enc,
const char *ptr, const char *end, const char **badPtr,
const char **versionPtr, const char **versionEndPtr,
const char **encodingNamePtr,
const ENCODING **namedEncodingPtr,
int *standalonePtr);
const ENCODING **namedEncodingPtr, int *standalonePtr);
int XmlInitEncodingNS(INIT_ENCODING *, const ENCODING **, const char *name);
const ENCODING *XmlGetUtf8InternalEncodingNS(void);
const ENCODING *XmlGetUtf16InternalEncodingNS(void);
ENCODING *
XmlInitUnknownEncodingNS(void *mem,
int *table,
CONVERTER convert,
void *userData);
ENCODING *XmlInitUnknownEncodingNS(void *mem, int *table, CONVERTER convert,
void *userData);
#ifdef __cplusplus
}
#endif

View File

@@ -1,46 +1,74 @@
/*
Copyright (c) 1998, 1999 Thai Open Source Software Center Ltd
See the file COPYING for copying permission.
__ __ _
___\ \/ /_ __ __ _| |_
/ _ \\ /| '_ \ / _` | __|
| __// \| |_) | (_| | |_
\___/_/\_\ .__/ \__,_|\__|
|_| XML parser
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
Copyright (c) 2017-2019 Sebastian Pipping <sebastian@pipping.org>
Licensed under the MIT license:
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to permit
persons to whom the Software is furnished to do so, subject to the
following conditions:
The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
enum {
BT_NONXML,
BT_MALFORM,
BT_LT,
BT_AMP,
BT_RSQB,
BT_LEAD2,
BT_LEAD3,
BT_LEAD4,
BT_TRAIL,
BT_CR,
BT_LF,
BT_GT,
BT_QUOT,
BT_APOS,
BT_EQUALS,
BT_QUEST,
BT_EXCL,
BT_SOL,
BT_SEMI,
BT_NUM,
BT_LSQB,
BT_S,
BT_NMSTRT,
BT_COLON,
BT_HEX,
BT_DIGIT,
BT_NAME,
BT_MINUS,
BT_OTHER, /* known not to be a name or name start character */
BT_NONXML, /* e.g. noncharacter-FFFF */
BT_MALFORM, /* illegal, with regard to encoding */
BT_LT, /* less than = "<" */
BT_AMP, /* ampersand = "&" */
BT_RSQB, /* right square bracket = "[" */
BT_LEAD2, /* lead byte of a 2-byte UTF-8 character */
BT_LEAD3, /* lead byte of a 3-byte UTF-8 character */
BT_LEAD4, /* lead byte of a 4-byte UTF-8 character */
BT_TRAIL, /* trailing unit, e.g. second 16-bit unit of a 4-byte char. */
BT_CR, /* carriage return = "\r" */
BT_LF, /* line feed = "\n" */
BT_GT, /* greater than = ">" */
BT_QUOT, /* quotation character = "\"" */
BT_APOS, /* apostrophe = "'" */
BT_EQUALS, /* equal sign = "=" */
BT_QUEST, /* question mark = "?" */
BT_EXCL, /* exclamation mark = "!" */
BT_SOL, /* solidus, slash = "/" */
BT_SEMI, /* semicolon = ";" */
BT_NUM, /* number sign = "#" */
BT_LSQB, /* left square bracket = "[" */
BT_S, /* white space, e.g. "\t", " "[, "\r"] */
BT_NMSTRT, /* non-hex name start letter = "G".."Z" + "g".."z" + "_" */
BT_COLON, /* colon = ":" */
BT_HEX, /* hex letter = "A".."F" + "a".."f" */
BT_DIGIT, /* digit = "0".."9" */
BT_NAME, /* dot and middle dot = "." + chr(0xb7) */
BT_MINUS, /* minus = "-" */
BT_OTHER, /* known not to be a name or name start character */
BT_NONASCII, /* might be a name or name start character */
BT_PERCNT,
BT_LPAR,
BT_RPAR,
BT_AST,
BT_PLUS,
BT_COMMA,
BT_VERBAR
BT_PERCNT, /* percent sign = "%" */
BT_LPAR, /* left parenthesis = "(" */
BT_RPAR, /* right parenthesis = "(" */
BT_AST, /* asterisk = "*" */
BT_PLUS, /* plus sign = "+" */
BT_COMMA, /* comma = "," */
BT_VERBAR /* vertical bar = "|" */
};
#include <stddef.h>

File diff suppressed because it is too large Load Diff

View File

@@ -1,61 +1,83 @@
/* Copyright (c) 1998, 1999 Thai Open Source Software Center Ltd
See the file COPYING for copying permission.
/* This file is included!
__ __ _
___\ \/ /_ __ __ _| |_
/ _ \\ /| '_ \ / _` | __|
| __// \| |_) | (_| | |_
\___/_/\_\ .__/ \__,_|\__|
|_| XML parser
Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
Copyright (c) 2002 Greg Stein <gstein@users.sourceforge.net>
Copyright (c) 2002 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
Copyright (c) 2002-2006 Karl Waclawek <karl@waclawek.net>
Copyright (c) 2017-2021 Sebastian Pipping <sebastian@pipping.org>
Licensed under the MIT license:
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to permit
persons to whom the Software is furnished to do so, subject to the
following conditions:
The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
/* This file is included! */
#ifdef XML_TOK_NS_C
const ENCODING *
NS(XmlGetUtf8InternalEncoding)(void)
{
NS(XmlGetUtf8InternalEncoding)(void) {
return &ns(internal_utf8_encoding).enc;
}
const ENCODING *
NS(XmlGetUtf16InternalEncoding)(void)
{
#if BYTEORDER == 1234
NS(XmlGetUtf16InternalEncoding)(void) {
# if BYTEORDER == 1234
return &ns(internal_little2_encoding).enc;
#elif BYTEORDER == 4321
# elif BYTEORDER == 4321
return &ns(internal_big2_encoding).enc;
#else
# else
const short n = 1;
return (*(const char *)&n
? &ns(internal_little2_encoding).enc
: &ns(internal_big2_encoding).enc);
#endif
return (*(const char *)&n ? &ns(internal_little2_encoding).enc
: &ns(internal_big2_encoding).enc);
# endif
}
static const ENCODING * const NS(encodings)[] = {
&ns(latin1_encoding).enc,
&ns(ascii_encoding).enc,
&ns(utf8_encoding).enc,
&ns(big2_encoding).enc,
&ns(big2_encoding).enc,
&ns(little2_encoding).enc,
&ns(utf8_encoding).enc /* NO_ENC */
static const ENCODING *const NS(encodings)[] = {
&ns(latin1_encoding).enc, &ns(ascii_encoding).enc,
&ns(utf8_encoding).enc, &ns(big2_encoding).enc,
&ns(big2_encoding).enc, &ns(little2_encoding).enc,
&ns(utf8_encoding).enc /* NO_ENC */
};
static int PTRCALL
NS(initScanProlog)(const ENCODING *enc, const char *ptr, const char *end,
const char **nextTokPtr)
{
return initScan(NS(encodings), (const INIT_ENCODING *)enc,
XML_PROLOG_STATE, ptr, end, nextTokPtr);
const char **nextTokPtr) {
return initScan(NS(encodings), (const INIT_ENCODING *)enc, XML_PROLOG_STATE,
ptr, end, nextTokPtr);
}
static int PTRCALL
NS(initScanContent)(const ENCODING *enc, const char *ptr, const char *end,
const char **nextTokPtr)
{
return initScan(NS(encodings), (const INIT_ENCODING *)enc,
XML_CONTENT_STATE, ptr, end, nextTokPtr);
const char **nextTokPtr) {
return initScan(NS(encodings), (const INIT_ENCODING *)enc, XML_CONTENT_STATE,
ptr, end, nextTokPtr);
}
int
NS(XmlInitEncoding)(INIT_ENCODING *p, const ENCODING **encPtr,
const char *name)
{
const char *name) {
int i = getEncodingIndex(name);
if (i == UNKNOWN_ENC)
return 0;
@@ -69,10 +91,9 @@ NS(XmlInitEncoding)(INIT_ENCODING *p, const ENCODING **encPtr,
}
static const ENCODING *
NS(findEncoding)(const ENCODING *enc, const char *ptr, const char *end)
{
#define ENCODING_MAX 128
char buf[ENCODING_MAX];
NS(findEncoding)(const ENCODING *enc, const char *ptr, const char *end) {
# define ENCODING_MAX 128
char buf[ENCODING_MAX] = "";
char *p = buf;
int i;
XmlUtf8Convert(enc, &ptr, end, &p, p + ENCODING_MAX - 1);
@@ -88,28 +109,14 @@ NS(findEncoding)(const ENCODING *enc, const char *ptr, const char *end)
}
int
NS(XmlParseXmlDecl)(int isGeneralTextEntity,
const ENCODING *enc,
const char *ptr,
const char *end,
const char **badPtr,
const char **versionPtr,
const char **versionEndPtr,
const char **encodingName,
const ENCODING **encoding,
int *standalone)
{
return doParseXmlDecl(NS(findEncoding),
isGeneralTextEntity,
enc,
ptr,
end,
badPtr,
versionPtr,
versionEndPtr,
encodingName,
encoding,
standalone);
NS(XmlParseXmlDecl)(int isGeneralTextEntity, const ENCODING *enc,
const char *ptr, const char *end, const char **badPtr,
const char **versionPtr, const char **versionEndPtr,
const char **encodingName, const ENCODING **encoding,
int *standalone) {
return doParseXmlDecl(NS(findEncoding), isGeneralTextEntity, enc, ptr, end,
badPtr, versionPtr, versionEndPtr, encodingName,
encoding, standalone);
}
#endif /* XML_TOK_NS_C */

2
deps/GMP/GMP.cmake vendored
View File

@@ -57,7 +57,7 @@ else ()
endif ()
ExternalProject_Add(dep_GMP
URL https://gmplib.org/download/gmp/gmp-6.2.1.tar.bz2
URL https://github.com/SoftFever/OrcaSlicer_deps/releases/download/gmp-6.2.1/gmp-6.2.1.tar.bz2
URL_HASH SHA256=eae9326beb4158c386e39a356818031bd28f3124cf915f8c5b1dc4c7a36b4d7c
DOWNLOAD_DIR ${DEP_DOWNLOAD_DIR}/GMP
BUILD_IN_SOURCE ON

View File

@@ -12,8 +12,8 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
endif()
orcaslicer_add_cmake_project(JPEG
URL https://github.com/libjpeg-turbo/libjpeg-turbo/archive/refs/tags/2.0.6.zip
URL_HASH SHA256=017bdc33ff3a72e11301c0feb4657cb27719d7f97fa67a78ed506c594218bbf1
URL https://github.com/libjpeg-turbo/libjpeg-turbo/archive/refs/tags/3.0.1.zip
URL_HASH SHA256=d6d99e693366bc03897677650e8b2dfa76b5d6c54e2c9e70c03f0af821b0a52f
DEPENDS ${ZLIB_PKG}
CMAKE_ARGS
-DENABLE_SHARED=OFF

View File

@@ -26,11 +26,12 @@ else ()
endif ()
ExternalProject_Add(dep_MPFR
URL http://ftp.vim.org/ftp/gnu/mpfr/mpfr-3.1.6.tar.bz2 https://www.mpfr.org/mpfr-3.1.6/mpfr-3.1.6.tar.bz2 # mirrors are allowed
URL_HASH SHA256=cf4f4b2d80abb79e820e78c8077b6725bbbb4e8f41896783c899087be0e94068
URL https://www.mpfr.org/mpfr-current/mpfr-4.2.1.tar.bz2
URL_HASH SHA256=b9df93635b20e4089c29623b19420c4ac848a1b29df1cfd59f26cab0d2666aa0
DOWNLOAD_DIR ${DEP_DOWNLOAD_DIR}/MPFR
BUILD_IN_SOURCE ON
CONFIGURE_COMMAND env "CFLAGS=${_gmp_ccflags}" "CXXFLAGS=${_gmp_ccflags}" ./configure ${_cross_compile_arg} --prefix=${DESTDIR}/usr/local --enable-shared=no --enable-static=yes --with-gmp=${DESTDIR}/usr/local ${_gmp_build_tgt}
CONFIGURE_COMMAND autoreconf -f -i &&
env "CFLAGS=${_gmp_ccflags}" "CXXFLAGS=${_gmp_ccflags}" ./configure ${_cross_compile_arg} --prefix=${DESTDIR}/usr/local --enable-shared=no --enable-static=yes --with-gmp=${DESTDIR}/usr/local ${_gmp_build_tgt}
BUILD_COMMAND make -j
INSTALL_COMMAND make install
DEPENDS dep_GMP

10
deps/NanoSVG/NanoSVG.cmake vendored Normal file
View File

@@ -0,0 +1,10 @@
# In PrusaSlicer 2.6.0 we switched from https://github.com/memononen/nanosvg to its fork https://github.com/fltk/nanosvg
# because this last implements the new function nsvgRasterizeXY() which we now use in GLTexture::load_from_svg()
# for rasterizing svg files from their original size to a squared power of two texture on Windows systems using
# AMD Radeon graphics cards
orcaslicer_add_cmake_project(NanoSVG
DEPENDS dep_Boost
URL https://github.com/SoftFever/nanosvg/archive/863f6aa97ef62028126fa2c19bd4350394c2e15e.zip
URL_HASH SHA256=8d9c1624ad6518dd6dfa31e4f8dc7da9ec243d88bae595c7a037450617fec851
)

View File

@@ -19,7 +19,7 @@ if(WIN32)
set(_install_cmd nmake install_sw )
else()
if(APPLE)
set(_conf_cmd ./Configure )
set(_conf_cmd export MACOSX_DEPLOYMENT_TARGET=${CMAKE_OSX_DEPLOYMENT_TARGET} && ./Configure -mmacosx-version-min=${CMAKE_OSX_DEPLOYMENT_TARGET})
else()
set(_conf_cmd "./config")
endif()
@@ -40,8 +40,10 @@ endif()
ExternalProject_Add(dep_OpenSSL
#EXCLUDE_FROM_ALL ON
URL "https://github.com/openssl/openssl/archive/OpenSSL_1_1_1k.tar.gz"
URL_HASH SHA256=b92f9d3d12043c02860e5e602e50a73ed21a69947bcc74d391f41148e9f6aa95
URL "https://github.com/openssl/openssl/archive/OpenSSL_1_1_1w.tar.gz"
URL_HASH SHA256=2130E8C2FB3B79D1086186F78E59E8BC8D1A6AEDF17AB3907F4CB9AE20918C41
# URL "https://github.com/openssl/openssl/archive/refs/tags/openssl-3.1.2.tar.gz"
# URL_HASH SHA256=8c776993154652d0bb393f506d850b811517c8bd8d24b1008aef57fbe55d3f31
DOWNLOAD_DIR ${DEP_DOWNLOAD_DIR}/OpenSSL
CONFIGURE_COMMAND ${_conf_cmd} ${_cross_arch}
"--openssldir=${DESTDIR}/usr/local"
@@ -61,4 +63,4 @@ ExternalProject_Add_Step(dep_OpenSSL install_cmake_files
COMMAND ${CMAKE_COMMAND} -E copy_directory openssl "${DESTDIR}/usr/local/${CMAKE_INSTALL_LIBDIR}/cmake/openssl"
WORKING_DIRECTORY "${CMAKE_CURRENT_LIST_DIR}"
)
)

View File

@@ -1,16 +1,16 @@
Common subdirectories: ../zlib-1.2.11/amiga and ./amiga
diff -u ../zlib-1.2.11/CMakeLists.txt ./CMakeLists.txt
--- ../zlib-1.2.11/CMakeLists.txt 2017-01-15 09:29:40.000000000 +0100
+++ ./CMakeLists.txt 2021-03-24 15:24:48.190291072 +0100
@@ -183,10 +183,12 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index b412dc7..5ca7fa8 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -147,10 +147,12 @@ if(MINGW)
set(ZLIB_DLL_SRCS ${CMAKE_CURRENT_BINARY_DIR}/zlib1rc.obj)
endif(MINGW)
-add_library(zlib SHARED ${ZLIB_SRCS} ${ZLIB_ASMS} ${ZLIB_DLL_SRCS} ${ZLIB_PUBLIC_HDRS} ${ZLIB_PRIVATE_HDRS})
-add_library(zlibstatic STATIC ${ZLIB_SRCS} ${ZLIB_ASMS} ${ZLIB_PUBLIC_HDRS} ${ZLIB_PRIVATE_HDRS})
-add_library(zlib SHARED ${ZLIB_SRCS} ${ZLIB_DLL_SRCS} ${ZLIB_PUBLIC_HDRS} ${ZLIB_PRIVATE_HDRS})
-add_library(zlibstatic STATIC ${ZLIB_SRCS} ${ZLIB_PUBLIC_HDRS} ${ZLIB_PRIVATE_HDRS})
-set_target_properties(zlib PROPERTIES DEFINE_SYMBOL ZLIB_DLL)
-set_target_properties(zlib PROPERTIES SOVERSION 1)
+add_library(zlib ${ZLIB_SRCS} ${ZLIB_ASMS} ${ZLIB_PUBLIC_HDRS} ${ZLIB_PRIVATE_HDRS})
+add_library(zlib ${ZLIB_SRCS} ${ZLIB_PUBLIC_HDRS} ${ZLIB_PRIVATE_HDRS})
+if (BUILD_SHARED_LIBS)
+ target_sources(zlib PRIVATE ${ZLIB_DLL_SRCS})
+ set_target_properties(zlib PROPERTIES DEFINE_SYMBOL ZLIB_DLL)
@@ -19,7 +19,7 @@ diff -u ../zlib-1.2.11/CMakeLists.txt ./CMakeLists.txt
if(NOT CYGWIN)
# This property causes shared libraries on Linux to have the full version
@@ -201,7 +203,7 @@
@@ -165,7 +167,7 @@ endif()
if(UNIX)
# On unix-like platforms the library is almost always called libz
@@ -28,7 +28,7 @@ diff -u ../zlib-1.2.11/CMakeLists.txt ./CMakeLists.txt
if(NOT APPLE)
set_target_properties(zlib PROPERTIES LINK_FLAGS "-Wl,--version-script,\"${CMAKE_CURRENT_SOURCE_DIR}/zlib.map\"")
endif()
@@ -211,7 +213,7 @@
@@ -175,7 +177,7 @@ elseif(BUILD_SHARED_LIBS AND WIN32)
endif()
if(NOT SKIP_INSTALL_LIBRARIES AND NOT SKIP_INSTALL_ALL )
@@ -37,15 +37,3 @@ diff -u ../zlib-1.2.11/CMakeLists.txt ./CMakeLists.txt
RUNTIME DESTINATION "${INSTALL_BIN_DIR}"
ARCHIVE DESTINATION "${INSTALL_LIB_DIR}"
LIBRARY DESTINATION "${INSTALL_LIB_DIR}" )
Common subdirectories: ../zlib-1.2.11/contrib and ./contrib
Common subdirectories: ../zlib-1.2.11/doc and ./doc
Common subdirectories: ../zlib-1.2.11/examples and ./examples
Common subdirectories: ../zlib-1.2.11/msdos and ./msdos
Common subdirectories: ../zlib-1.2.11/nintendods and ./nintendods
Common subdirectories: ../zlib-1.2.11/old and ./old
Common subdirectories: ../zlib-1.2.11/os400 and ./os400
Common subdirectories: ../zlib-1.2.11/qnx and ./qnx
Common subdirectories: ../zlib-1.2.11/test and ./test
Common subdirectories: ../zlib-1.2.11/watcom and ./watcom
Common subdirectories: ../zlib-1.2.11/win32 and ./win32
Only in ./: ZLIB.patch

10
deps/ZLIB/ZLIB.cmake vendored
View File

@@ -1,9 +1,13 @@
set(patch_command git init && ${PATCH_CMD} ${CMAKE_CURRENT_LIST_DIR}/0001-Respect-BUILD_SHARED_LIBS.patch)
orcaslicer_add_cmake_project(ZLIB
# GIT_REPOSITORY https://github.com/madler/zlib.git
# GIT_TAG v1.2.11
URL https://github.com/madler/zlib/archive/refs/tags/v1.2.11.zip
URL_HASH SHA256=f5cc4ab910db99b2bdbba39ebbdc225ffc2aa04b4057bc2817f1b94b6978cfc3
PATCH_COMMAND ${PATCH_CMD} ${CMAKE_CURRENT_LIST_DIR}/0001-Respect-BUILD_SHARED_LIBS.patch
#URL https://github.com/madler/zlib/archive/refs/tags/v1.2.11.zip
URL https://github.com/madler/zlib/archive/refs/tags/v1.2.13.zip
#URL_HASH SHA256=f5cc4ab910db99b2bdbba39ebbdc225ffc2aa04b4057bc2817f1b94b6978cfc3
URL_HASH SHA256=c2856951bbf30e30861ace3765595d86ba13f2cf01279d901f6c62258c57f4ff
PATCH_COMMAND ${patch_command}
CMAKE_ARGS
-DSKIP_INSTALL_FILES=ON # Prevent installation of man pages et al.
-DCMAKE_POSITION_INDEPENDENT_CODE=ON

View File

@@ -0,0 +1,683 @@
From f4fef135f0a58ca2916c45cd539923ab096935b6 Mon Sep 17 00:00:00 2001
From: Ocraftyone <Ocraftyone@users.noreply.github.com>
Date: Thu, 30 Nov 2023 03:25:54 -0500
Subject: [PATCH] patch v3.2.1 for OrcaSlicer
---
build/cmake/lib/webview/CMakeLists.txt | 4 +-
include/wx/fontutil.h | 15 +++++++-
include/wx/gdicmn.h | 3 ++
include/wx/generic/grid.h | 4 +-
include/wx/msw/font.h | 2 +-
include/wx/msw/tooltip.h | 4 +-
include/wx/osx/app.h | 2 +-
src/common/combocmn.cpp | 11 +++++-
src/common/datavcmn.cpp | 6 ++-
src/common/dcbufcmn.cpp | 6 +++
src/common/gdicmn.cpp | 14 +++++++
src/common/image.cpp | 6 +--
src/generic/grid.cpp | 50 ++++++++++++++++++++-----
src/msw/bmpcbox.cpp | 9 ++++-
src/msw/font.cpp | 14 +++----
src/msw/menuitem.cpp | 2 +
src/msw/window.cpp | 52 +++++++++++++++++---------
src/osx/cocoa/dataview.mm | 26 +++++++++++--
src/osx/cocoa/settings.mm | 6 +--
src/osx/cocoa/window.mm | 4 ++
20 files changed, 184 insertions(+), 56 deletions(-)
diff --git a/build/cmake/lib/webview/CMakeLists.txt b/build/cmake/lib/webview/CMakeLists.txt
index 085381d785..62146abc04 100644
--- a/build/cmake/lib/webview/CMakeLists.txt
+++ b/build/cmake/lib/webview/CMakeLists.txt
@@ -46,9 +46,9 @@ if(APPLE)
elseif(WXMSW)
if(wxUSE_WEBVIEW_EDGE)
# Update the following variables if updating WebView2 SDK
- set(WEBVIEW2_VERSION "1.0.705.50")
+ set(WEBVIEW2_VERSION "1.0.1418.22")
set(WEBVIEW2_URL "https://www.nuget.org/api/v2/package/Microsoft.Web.WebView2/${WEBVIEW2_VERSION}")
- set(WEBVIEW2_SHA256 "6a34bb553e18cfac7297b4031f3eac2558e439f8d16a45945c22945ac404105d")
+ set(WEBVIEW2_SHA256 "51d2ef56196e2a9d768a6843385bcb9c6baf9ed34b2603ddb074fb4995543a99")
set(WEBVIEW2_DEFAULT_PACKAGE_DIR "${CMAKE_BINARY_DIR}/packages/Microsoft.Web.WebView2.${WEBVIEW2_VERSION}")
diff --git a/include/wx/fontutil.h b/include/wx/fontutil.h
index 30529db8ce..e6a12366d5 100644
--- a/include/wx/fontutil.h
+++ b/include/wx/fontutil.h
@@ -294,7 +294,11 @@ public:
wxFontEncoding GetEncoding() const;
void SetPointSize(int pointsize);
- void SetFractionalPointSize(double pointsize);
+ void SetFractionalPointSize(double pointsize
+#if defined(__WXMSW__)
+ , const wxWindow *window = nullptr
+#endif
+ );
void SetPixelSize(const wxSize& pixelSize);
void SetStyle(wxFontStyle style);
void SetNumericWeight(int weight);
@@ -307,12 +311,19 @@ public:
// Helper used in many ports: use the normal font size if the input is
// negative, as we handle -1 as meaning this for compatibility.
- void SetSizeOrDefault(double size)
+ void SetSizeOrDefault(double size
+#if defined(__WXMSW__)
+ , const wxWindow *window = nullptr
+#endif
+ )
{
SetFractionalPointSize
(
size < 0 ? wxNORMAL_FONT->GetFractionalPointSize()
: size
+#if defined(__WXMSW__)
+ ,window
+#endif
);
}
diff --git a/include/wx/gdicmn.h b/include/wx/gdicmn.h
index 2f5f8ee99f..39e9317d40 100644
--- a/include/wx/gdicmn.h
+++ b/include/wx/gdicmn.h
@@ -38,6 +38,7 @@ class WXDLLIMPEXP_FWD_CORE wxRegion;
class WXDLLIMPEXP_FWD_BASE wxString;
class WXDLLIMPEXP_FWD_CORE wxIconBundle;
class WXDLLIMPEXP_FWD_CORE wxPoint;
+class WXDLLIMPEXP_FWD_CORE wxWindow;
// ---------------------------------------------------------------------------
// constants
@@ -1106,7 +1107,9 @@ extern int WXDLLIMPEXP_CORE wxDisplayDepth();
// get the display size
extern void WXDLLIMPEXP_CORE wxDisplaySize(int *width, int *height);
+extern void WXDLLIMPEXP_CORE wxDisplaySize(const wxWindow *window, int *width, int *height);
extern wxSize WXDLLIMPEXP_CORE wxGetDisplaySize();
+extern wxSize WXDLLIMPEXP_CORE wxGetDisplaySize(const wxWindow *window);
extern void WXDLLIMPEXP_CORE wxDisplaySizeMM(int *width, int *height);
extern wxSize WXDLLIMPEXP_CORE wxGetDisplaySizeMM();
extern wxSize WXDLLIMPEXP_CORE wxGetDisplayPPI();
diff --git a/include/wx/generic/grid.h b/include/wx/generic/grid.h
index 1bd58bbf04..903cb81319 100644
--- a/include/wx/generic/grid.h
+++ b/include/wx/generic/grid.h
@@ -3029,9 +3029,11 @@ private:
// Update the width/height of the column/row being drag-resized.
// Should be only called when m_dragRowOrCol != -1, i.e. dragging is
// actually in progress.
+ //BBS: add cursor mode for DoGridDragResize's paremeters
void DoGridDragResize(const wxPoint& position,
const wxGridOperations& oper,
- wxGridWindow* gridWindow);
+ wxGridWindow* gridWindow,
+ CursorMode mode);
// process different clicks on grid cells
void DoGridCellLeftDown(wxMouseEvent& event,
diff --git a/include/wx/msw/font.h b/include/wx/msw/font.h
index 0f9768b44e..094d774918 100644
--- a/include/wx/msw/font.h
+++ b/include/wx/msw/font.h
@@ -23,7 +23,7 @@ public:
// ctors and such
wxFont() { }
- wxFont(const wxFontInfo& info);
+ wxFont(const wxFontInfo& info, const wxWindow *window = nullptr);
wxFont(int size,
wxFontFamily family,
diff --git a/include/wx/msw/tooltip.h b/include/wx/msw/tooltip.h
index 4c3be08cec..96fb378d01 100644
--- a/include/wx/msw/tooltip.h
+++ b/include/wx/msw/tooltip.h
@@ -91,10 +91,10 @@ private:
// the one and only one tooltip control we use - never access it directly
// but use GetToolTipCtrl() which will create it when needed
static WXHWND ms_hwndTT;
-
+public:
// create the tooltip ctrl if it doesn't exist yet and return its HWND
static WXHWND GetToolTipCtrl();
-
+private:
// to be used in wxModule for deleting tooltip ctrl window when exiting mainloop
static void DeleteToolTipCtrl();
diff --git a/include/wx/osx/app.h b/include/wx/osx/app.h
index 317a0ca96f..58014ec1d4 100644
--- a/include/wx/osx/app.h
+++ b/include/wx/osx/app.h
@@ -161,7 +161,7 @@ private:
public:
bool OSXInitWasCalled() { return m_inited; }
- void OSXStoreOpenFiles(const wxArrayString &files ) { m_openFiles = files ; }
+ virtual void OSXStoreOpenFiles(const wxArrayString &files ) { m_openFiles = files ; }
void OSXStorePrintFiles(const wxArrayString &files ) { m_printFiles = files ; }
void OSXStoreOpenURL(const wxString &url ) { m_getURL = url ; }
#endif
diff --git a/src/common/combocmn.cpp b/src/common/combocmn.cpp
index 80408c6677..aa07caebdc 100644
--- a/src/common/combocmn.cpp
+++ b/src/common/combocmn.cpp
@@ -2061,6 +2061,9 @@ void wxComboCtrlBase::ShowPopup()
SetFocus();
+ //int displayIdx = wxDisplay::GetFromWindow(this);
+ //wxRect displayRect = wxDisplay(displayIdx != wxNOT_FOUND ? displayIdx : 0u).GetGeometry();
+
// Space above and below
int screenHeight;
wxPoint scrPos;
@@ -2183,9 +2186,13 @@ void wxComboCtrlBase::ShowPopup()
int showFlags = CanDeferShow;
- if ( spaceBelow < szp.y )
+ int anchorSideVertical = m_anchorSide & (wxUP | wxDOWN);
+ if (// Pop up as asked for by the library user.
+ (anchorSideVertical & wxUP) ||
+ // Automatic: Pop up if it does not fit down.
+ (anchorSideVertical == 0 && spaceBelow < szp.y ))
{
- popupY = scrPos.y - szp.y;
+ popupY = scrPos.y - szp.y + displayRect.GetTop();
showFlags |= ShowAbove;
}
diff --git a/src/common/datavcmn.cpp b/src/common/datavcmn.cpp
index 0a1e43ad51..6c492aedab 100644
--- a/src/common/datavcmn.cpp
+++ b/src/common/datavcmn.cpp
@@ -1334,7 +1334,11 @@ wxDataViewItem wxDataViewCtrlBase::GetSelection() const
wxDataViewItemArray selections;
GetSelections(selections);
- return selections[0];
+ // BBS
+ if (!selections.empty())
+ return selections[0];
+ else
+ return wxDataViewItem(0);
}
namespace
diff --git a/src/common/dcbufcmn.cpp b/src/common/dcbufcmn.cpp
index 9b1c1f3159..ef5865ed4b 100644
--- a/src/common/dcbufcmn.cpp
+++ b/src/common/dcbufcmn.cpp
@@ -83,9 +83,15 @@ private:
const double scale = dc ? dc->GetContentScaleFactor() : 1.0;
wxBitmap* const buffer = new wxBitmap;
+#if __WXMSW__
+ // we must always return a valid bitmap but creating a bitmap of
+ // size 0 would fail, so create a 1*1 bitmap in this case
+ buffer->Create(wxMax(w, 1), wxMax(h, 1), 24);
+#else
// we must always return a valid bitmap but creating a bitmap of
// size 0 would fail, so create a 1*1 bitmap in this case
buffer->CreateWithDIPSize(wxMax(w, 1), wxMax(h, 1), scale);
+#endif
return buffer;
}
diff --git a/src/common/gdicmn.cpp b/src/common/gdicmn.cpp
index db8a01f961..162c1ce2dc 100644
--- a/src/common/gdicmn.cpp
+++ b/src/common/gdicmn.cpp
@@ -863,11 +863,25 @@ void wxDisplaySize(int *width, int *height)
*height = size.y;
}
+void wxDisplaySize(const wxWindow *window, int *width, int *height)
+{
+ const wxSize size = wxGetDisplaySize(window);
+ if ( width )
+ *width = size.x;
+ if ( height )
+ *height = size.y;
+}
+
wxSize wxGetDisplaySize()
{
return wxDisplay().GetGeometry().GetSize();
}
+wxSize wxGetDisplaySize(const wxWindow *window)
+{
+ return window ? wxDisplay(window).GetGeometry().GetSize() : wxDisplay().GetGeometry().GetSize();
+}
+
void wxClientDisplayRect(int *x, int *y, int *width, int *height)
{
const wxRect rect = wxGetClientDisplayRect();
diff --git a/src/common/image.cpp b/src/common/image.cpp
index 19fe34ec91..a449b60930 100644
--- a/src/common/image.cpp
+++ b/src/common/image.cpp
@@ -390,11 +390,11 @@ wxImage wxImage::ShrinkBy( int xFactor , int yFactor ) const
unsigned char red = pixel[0] ;
unsigned char green = pixel[1] ;
unsigned char blue = pixel[2] ;
- unsigned char alpha = 255 ;
- if ( source_alpha )
- alpha = *(source_alpha + y_offset + x * xFactor + x1) ;
if ( !hasMask || red != maskRed || green != maskGreen || blue != maskBlue )
{
+ unsigned char alpha = 255 ;
+ if ( source_alpha )
+ alpha = *(source_alpha + y_offset + x * xFactor + x1) ;
if ( alpha > 0 )
{
avgRed += red ;
diff --git a/src/generic/grid.cpp b/src/generic/grid.cpp
index ed3d988994..d71cda122d 100644
--- a/src/generic/grid.cpp
+++ b/src/generic/grid.cpp
@@ -4068,7 +4068,8 @@ void wxGrid::ProcessRowColLabelMouseEvent( const wxGridOperations &oper, wxMouse
{
if ( m_cursorMode == oper.GetCursorModeResize() )
{
- DoGridDragResize(event.GetPosition(), oper, gridWindow);
+ //BBS: add cursor mode for DoGridDragResize's paremeters
+ DoGridDragResize(event.GetPosition(), oper, gridWindow, m_cursorMode);
}
else if ( m_cursorMode == oper.GetCursorModeSelect() && line >=0 )
{
@@ -4691,12 +4692,14 @@ bool wxGrid::DoGridDragEvent(wxMouseEvent& event,
case WXGRID_CURSOR_RESIZE_ROW:
if ( m_dragRowOrCol != -1 )
- DoGridDragResize(event.GetPosition(), wxGridRowOperations(), gridWindow);
+ //BBS: add cursor mode for DoGridDragResize's paremeters
+ DoGridDragResize(event.GetPosition(), wxGridRowOperations(), gridWindow, WXGRID_CURSOR_RESIZE_ROW);
break;
case WXGRID_CURSOR_RESIZE_COL:
if ( m_dragRowOrCol != -1 )
- DoGridDragResize(event.GetPosition(), wxGridColumnOperations(), gridWindow);
+ //BBS: add cursor mode for DoGridDragResize's paremeters
+ DoGridDragResize(event.GetPosition(), wxGridColumnOperations(), gridWindow, WXGRID_CURSOR_RESIZE_COL);
break;
default:
@@ -4791,6 +4794,8 @@ wxGrid::DoGridCellLeftDown(wxMouseEvent& event,
case wxGridSelectCells:
case wxGridSelectRowsOrColumns:
// nothing to do in these cases
+ //BBS: select this cell when first click
+ m_selection->SelectBlock(coords.GetRow(), coords.GetCol(), coords.GetRow(), coords.GetCol(), event);
break;
case wxGridSelectRows:
@@ -5049,9 +5054,11 @@ void wxGrid::ProcessGridCellMouseEvent(wxMouseEvent& event, wxGridWindow *eventG
}
}
+//BBS: add cursor mode for DoGridDragResize's paremeters
void wxGrid::DoGridDragResize(const wxPoint& position,
const wxGridOperations& oper,
- wxGridWindow* gridWindow)
+ wxGridWindow* gridWindow,
+ CursorMode mode)
{
wxCHECK_RET( m_dragRowOrCol != -1,
"shouldn't be called when not drag resizing" );
@@ -5064,10 +5071,28 @@ void wxGrid::DoGridDragResize(const wxPoint& position,
// orthogonal direction.
const int linePos = oper.Dual().Select(logicalPos);
- const int lineStart = oper.GetLineStartPos(this, m_dragRowOrCol);
- oper.SetLineSize(this, m_dragRowOrCol,
+ //BBS: add logic for resize multiplexed cols
+ if (mode == WXGRID_CURSOR_RESIZE_COL) {
+ int col_to_resize = m_dragRowOrCol;
+ int num_rows, num_cols;
+ this->GetCellSize(0, m_dragRowOrCol, &num_rows, &num_cols);
+ if (num_cols < 1)
+ col_to_resize = m_dragRowOrCol - 1;
+
+ const int lineEnd = oper.GetLineEndPos(this, m_dragRowOrCol);
+ const int lineSize = oper.GetLineSize(this, col_to_resize);
+ int size = linePos - lineEnd + lineSize;
+ oper.SetLineSize(this, col_to_resize,
+ wxMax(size,
+ oper.GetMinimalLineSize(this, col_to_resize)));
+ }
+ else {
+ const int lineStart = oper.GetLineStartPos(this, m_dragRowOrCol);
+
+ oper.SetLineSize(this, m_dragRowOrCol,
wxMax(linePos - lineStart,
oper.GetMinimalLineSize(this, m_dragRowOrCol)));
+ }
// TODO: generate RESIZING event, see #10754, if the size has changed.
}
@@ -5090,7 +5115,8 @@ wxPoint wxGrid::GetPositionForResizeEvent(int width) const
void wxGrid::DoEndDragResizeRow(const wxMouseEvent& event, wxGridWindow* gridWindow)
{
- DoGridDragResize(event.GetPosition(), wxGridRowOperations(), gridWindow);
+ //BBS: add cursor mode for DoGridDragResize's paremeters
+ DoGridDragResize(event.GetPosition(), wxGridRowOperations(), gridWindow, WXGRID_CURSOR_RESIZE_ROW);
SendGridSizeEvent(wxEVT_GRID_ROW_SIZE, m_dragRowOrCol, event);
@@ -5099,7 +5125,8 @@ void wxGrid::DoEndDragResizeRow(const wxMouseEvent& event, wxGridWindow* gridWin
void wxGrid::DoEndDragResizeCol(const wxMouseEvent& event, wxGridWindow* gridWindow)
{
- DoGridDragResize(event.GetPosition(), wxGridColumnOperations(), gridWindow);
+ //BBS: add cursor mode for DoGridDragResize's paremeters
+ DoGridDragResize(event.GetPosition(), wxGridColumnOperations(), gridWindow, WXGRID_CURSOR_RESIZE_COL);
SendGridSizeEvent(wxEVT_GRID_COL_SIZE, m_dragRowOrCol, event);
@@ -5113,9 +5140,10 @@ void wxGrid::DoHeaderStartDragResizeCol(int col)
void wxGrid::DoHeaderDragResizeCol(int width)
{
+ //BBS: add cursor mode for DoGridDragResize's paremeters
DoGridDragResize(GetPositionForResizeEvent(width),
wxGridColumnOperations(),
- m_gridWin);
+ m_gridWin, WXGRID_CURSOR_RESIZE_COL);
}
void wxGrid::DoHeaderEndDragResizeCol(int width)
@@ -6013,6 +6041,10 @@ void wxGrid::OnKeyDown( wxKeyEvent& event )
DisableCellEditControl();
MoveCursorDown( event.ShiftDown() );
+ //BBS: select this cell when first click
+ m_selection->SelectBlock(m_currentCellCoords.GetRow(), m_currentCellCoords.GetCol(),
+ m_currentCellCoords.GetRow(), m_currentCellCoords.GetCol(),
+ event);
}
break;
diff --git a/src/msw/bmpcbox.cpp b/src/msw/bmpcbox.cpp
index 011bd4f534..17e7f18740 100644
--- a/src/msw/bmpcbox.cpp
+++ b/src/msw/bmpcbox.cpp
@@ -156,13 +156,20 @@ void wxBitmapComboBox::RecreateControl()
wxComboBox::DoClear();
- HWND hwnd = GetHwnd();
+ WNDPROC wndproc_edit = nullptr;
+ WinStruct<COMBOBOXINFO> combobox_info;
+ HWND hwnd = GetHwnd();
+if (::GetComboBoxInfo(hwnd, &combobox_info))
+ wndproc_edit = (WNDPROC)wxGetWindowProc(combobox_info.hwndItem);
DissociateHandle();
::DestroyWindow(hwnd);
if ( !MSWCreateControl(wxT("COMBOBOX"), wxEmptyString, pos, size) )
return;
+if (::GetComboBoxInfo(GetHwnd(), &combobox_info))
+ wxSetWindowProc(combobox_info.hwndItem, wndproc_edit);
+
// initialize the controls contents
for ( i = 0; i < numItems; i++ )
{
diff --git a/src/msw/font.cpp b/src/msw/font.cpp
index 434876939c..91d4603018 100644
--- a/src/msw/font.cpp
+++ b/src/msw/font.cpp
@@ -54,7 +54,7 @@ static const int PITCH_MASK = FIXED_PITCH | VARIABLE_PITCH;
class WXDLLEXPORT wxFontRefData: public wxGDIRefData
{
public:
- wxFontRefData(const wxFontInfo& info = wxFontInfo());
+ wxFontRefData(const wxFontInfo& info = wxFontInfo(), const wxWindow* window = nullptr);
wxFontRefData(const wxNativeFontInfo& info, WXHFONT hFont = 0)
{
@@ -324,7 +324,7 @@ protected:
// wxFontRefData
// ----------------------------------------------------------------------------
-wxFontRefData::wxFontRefData(const wxFontInfo& info)
+wxFontRefData::wxFontRefData(const wxFontInfo& info, const wxWindow *window)
{
m_hFont = NULL;
@@ -335,7 +335,7 @@ wxFontRefData::wxFontRefData(const wxFontInfo& info)
}
else
{
- m_nativeFontInfo.SetSizeOrDefault(info.GetFractionalPointSize());
+ m_nativeFontInfo.SetSizeOrDefault(info.GetFractionalPointSize(), window);
}
SetStyle(info.GetStyle());
@@ -518,12 +518,12 @@ wxFontEncoding wxNativeFontInfo::GetEncoding() const
return wxGetFontEncFromCharSet(lf.lfCharSet);
}
-void wxNativeFontInfo::SetFractionalPointSize(double pointSizeNew)
+void wxNativeFontInfo::SetFractionalPointSize(double pointSizeNew, const wxWindow *window)
{
// We don't have the correct DPI to use here, so use that of the
// primary screen and rely on WXAdjustToPPI() changing it later if
// necessary.
- const int ppi = ::GetDeviceCaps(ScreenHDC(), LOGPIXELSY);
+ const int ppi = window ? window->GetDPI().GetY() : ::GetDeviceCaps(ScreenHDC(), LOGPIXELSY);
lf.lfHeight = GetLogFontHeightAtPPI(pointSizeNew, ppi);
pointSize = pointSizeNew;
@@ -812,9 +812,9 @@ wxFont::wxFont(const wxString& fontdesc)
(void)Create(info);
}
-wxFont::wxFont(const wxFontInfo& info)
+wxFont::wxFont(const wxFontInfo& info, const wxWindow *window)
{
- m_refData = new wxFontRefData(info);
+ m_refData = new wxFontRefData(info, window);
}
bool wxFont::Create(const wxNativeFontInfo& info, WXHFONT hFont)
diff --git a/src/msw/menuitem.cpp b/src/msw/menuitem.cpp
index 0bd017a36a..3b98bf1678 100644
--- a/src/msw/menuitem.cpp
+++ b/src/msw/menuitem.cpp
@@ -368,6 +368,8 @@ void MenuDrawData::Init(wxWindow const* window)
// native menu uses small top margin for separator
if ( SeparatorMargin.cyTopHeight >= 2 )
SeparatorMargin.cyTopHeight -= 2;
+
+ SeparatorSize.cy = 0;
}
else
#endif // wxUSE_UXTHEME
diff --git a/src/msw/window.cpp b/src/msw/window.cpp
index c529a4fa3b..7e547c64df 100644
--- a/src/msw/window.cpp
+++ b/src/msw/window.cpp
@@ -4809,33 +4809,49 @@ static wxSize GetWindowDPI(HWND hwnd)
}
/*extern*/
-int wxGetSystemMetrics(int nIndex, const wxWindow* window)
+int wxGetSystemMetrics(int nIndex, const wxWindow* win)
{
#if wxUSE_DYNLIB_CLASS
- if ( !window )
- window = wxApp::GetMainTopWindow();
+ const wxWindow* window = (!win && wxTheApp) ? wxTheApp->GetTopWindow() : win;
- if ( window )
+ if (window)
{
- typedef int (WINAPI * GetSystemMetricsForDpi_t)(int nIndex, UINT dpi);
- static GetSystemMetricsForDpi_t s_pfnGetSystemMetricsForDpi = NULL;
- static bool s_initDone = false;
-
- if ( !s_initDone )
- {
- wxLoadedDLL dllUser32("user32.dll");
- wxDL_INIT_FUNC(s_pfn, GetSystemMetricsForDpi, dllUser32);
- s_initDone = true;
+#if 1
+ if (window->GetHWND() && (nIndex == SM_CXSCREEN || nIndex == SM_CYSCREEN)) {
+ HDC hdc = GetDC(window->GetHWND());
+#if 0
+ double dim = GetDeviceCaps(hdc, nIndex == SM_CXSCREEN ? HORZRES : VERTRES);
+ ReleaseDC(window->GetHWND(), hdc);
+ wxSize dpi = window->GetDPI();
+ dim *= 96.0 / (nIndex == SM_CXSCREEN ? dpi.x : dpi.y);
+ return int(dim + 0.5);
+#else
+ return int(GetDeviceCaps(hdc, nIndex == SM_CXSCREEN ? HORZRES : VERTRES));
+#endif
}
-
- if ( s_pfnGetSystemMetricsForDpi )
+ else
+#endif
{
- const int dpi = window->GetDPI().y;
- return s_pfnGetSystemMetricsForDpi(nIndex, (UINT)dpi);
+ typedef int (WINAPI * GetSystemMetricsForDpi_t)(int nIndex, UINT dpi);
+ static GetSystemMetricsForDpi_t s_pfnGetSystemMetricsForDpi = NULL;
+ static bool s_initDone = false;
+
+ if ( !s_initDone )
+ {
+ wxLoadedDLL dllUser32("user32.dll");
+ wxDL_INIT_FUNC(s_pfn, GetSystemMetricsForDpi, dllUser32);
+ s_initDone = true;
+ }
+
+ if ( s_pfnGetSystemMetricsForDpi )
+ {
+ const int dpi = window->GetDPI().y;
+ return s_pfnGetSystemMetricsForDpi(nIndex, (UINT)dpi);
+ }
}
}
#else
- wxUnusedVar(window);
+ wxUnusedVar(win);
#endif // wxUSE_DYNLIB_CLASS
return ::GetSystemMetrics(nIndex);
diff --git a/src/osx/cocoa/dataview.mm b/src/osx/cocoa/dataview.mm
index f188e61089..7b867002d1 100644
--- a/src/osx/cocoa/dataview.mm
+++ b/src/osx/cocoa/dataview.mm
@@ -1604,6 +1604,15 @@ outlineView:(NSOutlineView*)outlineView
}
}
+//FIXME Vojtech: This is a workaround to get at least the "mouse move" events at the wxDataViewControl,
+// so we can show the tooltips. The "mouse move" events are being send only if the wxDataViewControl
+// has focus, which is a limitation of wxWidgets. We may grab focus on "mouse entry" though.
+- (void)mouseMoved:(NSEvent *)event
+{
+if (! implementation->DoHandleMouseEvent(event))
+ [super mouseMoved:event];
+}
+
//
// contextual menus
//
@@ -2006,7 +2015,8 @@ void wxCocoaDataViewControl::keyEvent(WX_NSEvent event, WXWidget slf, void *_cmd
if ( !dvc->GetEventHandler()->ProcessEvent(eventDV) )
wxWidgetCocoaImpl::keyEvent(event, slf, _cmd);
}
- else
+ //FIXME Vojtech's hack to get the accelerators assigned to the wxDataViewControl working.
+ else if (! DoHandleKeyEvent(event))
{
wxWidgetCocoaImpl::keyEvent(event, slf, _cmd); // all other keys
}
@@ -2540,12 +2550,22 @@ void wxCocoaDataViewControl::DoSetIndent(int indent)
void wxCocoaDataViewControl::HitTest(const wxPoint& point, wxDataViewItem& item, wxDataViewColumn*& columnPtr) const
{
- NSPoint const nativePoint = wxToNSPoint((NSScrollView*) GetWXWidget(),point);
+ NSTableHeaderView *headerView = [m_OutlineView headerView];
+ if (headerView && point.y < headerView.visibleRect.size.height) {
+ // The point is inside the header area.
+ columnPtr = NULL;
+ item = wxDataViewItem();
+ return;
+ }
+ // Convert from the window coordinates to the virtual scrolled view coordinates.
+ NSScrollView *scrollView = [m_OutlineView enclosingScrollView];
+ const NSRect &visibleRect = scrollView.contentView.visibleRect;
+ NSPoint const nativePoint = wxToNSPoint((NSScrollView*) GetWXWidget(),
+ wxPoint(point.x + visibleRect.origin.x, point.y + visibleRect.origin.y));
int indexColumn;
int indexRow;
-
indexColumn = [m_OutlineView columnAtPoint:nativePoint];
indexRow = [m_OutlineView rowAtPoint: nativePoint];
if ((indexColumn >= 0) && (indexRow >= 0))
diff --git a/src/osx/cocoa/settings.mm b/src/osx/cocoa/settings.mm
index c819deeb0c..dc3c3b0b53 100644
--- a/src/osx/cocoa/settings.mm
+++ b/src/osx/cocoa/settings.mm
@@ -222,7 +222,7 @@ wxFont wxSystemSettingsNative::GetFont(wxSystemFont index)
// ----------------------------------------------------------------------------
// Get a system metric, e.g. scrollbar size
-int wxSystemSettingsNative::GetMetric(wxSystemMetric index, const wxWindow* WXUNUSED(win))
+int wxSystemSettingsNative::GetMetric(wxSystemMetric index, const wxWindow* win)
{
int value;
@@ -257,11 +257,11 @@ int wxSystemSettingsNative::GetMetric(wxSystemMetric index, const wxWindow* WXUN
// TODO case wxSYS_WINDOWMIN_Y:
case wxSYS_SCREEN_X:
- wxDisplaySize(&value, NULL);
+ wxDisplaySize(win, &value, NULL);
return value;
case wxSYS_SCREEN_Y:
- wxDisplaySize(NULL, &value);
+ wxDisplaySize(win, NULL, &value);
return value;
// TODO case wxSYS_FRAMESIZE_X:
diff --git a/src/osx/cocoa/window.mm b/src/osx/cocoa/window.mm
index 635ea286d4..42ae67e27a 100644
--- a/src/osx/cocoa/window.mm
+++ b/src/osx/cocoa/window.mm
@@ -191,6 +191,9 @@ NSRect wxOSXGetFrameForControl( wxWindowMac* window , const wxPoint& pos , const
- (BOOL)isEnabled;
- (void)setEnabled:(BOOL)flag;
+- (BOOL)clipsToBounds;
+- (void)setClipsToBounds:(BOOL)clipsToBounds;
+
- (void)setImage:(NSImage *)image;
- (void)setControlSize:(NSControlSize)size;
@@ -2559,6 +2562,7 @@ wxWidgetImpl( peer, flags )
if ( m_osxView )
CFRetain(m_osxView);
[m_osxView release];
+ m_osxView.clipsToBounds = YES;
}
--
2.42.0.windows.2

View File

@@ -1,3 +1,33 @@
From 5e82980ed1762338794d06b3f9f22fa10e050622 Mon Sep 17 00:00:00 2001
From: SoftFever <softfeverever@gmail.com>
Date: Sat, 23 Dec 2023 20:08:41 +0800
Subject: [PATCH] wx 3.1.5 patch for Orca
---
build/cmake/init.cmake | 4 ++
build/cmake/lib/webview/CMakeLists.txt | 4 +-
include/wx/fontutil.h | 15 +++++++-
include/wx/gdicmn.h | 3 ++
include/wx/generic/grid.h | 4 +-
include/wx/msw/font.h | 2 +-
include/wx/msw/tooltip.h | 4 +-
include/wx/osx/app.h | 2 +-
src/common/combocmn.cpp | 13 +++++--
src/common/datavcmn.cpp | 6 ++-
src/common/dcbufcmn.cpp | 8 +++-
src/common/gdicmn.cpp | 14 +++++++
src/common/image.cpp | 6 +--
src/common/intl.cpp | 7 ++++
src/generic/grid.cpp | 53 +++++++++++++++++++++-----
src/msw/bmpcbox.cpp | 9 ++++-
src/msw/font.cpp | 14 +++----
src/msw/menuitem.cpp | 2 +
src/msw/window.cpp | 52 ++++++++++++++++---------
src/osx/cocoa/dataview.mm | 26 +++++++++++--
src/osx/cocoa/settings.mm | 6 +--
src/osx/cocoa/window.mm | 4 ++
22 files changed, 199 insertions(+), 59 deletions(-)
diff --git a/build/cmake/init.cmake b/build/cmake/init.cmake
index 0bc4f934b9..479431a69c 100644
--- a/build/cmake/init.cmake
@@ -15,10 +45,10 @@ index 0bc4f934b9..479431a69c 100644
if(WAYLANDEGL_FOUND AND wxHAVE_GDK_WAYLAND)
list(APPEND OPENGL_LIBRARIES ${WAYLANDEGL_LIBRARIES})
diff --git a/build/cmake/lib/webview/CMakeLists.txt b/build/cmake/lib/webview/CMakeLists.txt
index cc3298ff33..8adbeaea4f 100644
index cc3298ff33..aa103ae474 100644
--- a/build/cmake/lib/webview/CMakeLists.txt
+++ b/build/cmake/lib/webview/CMakeLists.txt
@@ -56,7 +56,7 @@ if(APPLE)
@@ -56,9 +56,9 @@ if(APPLE)
elseif(WXMSW)
if(wxUSE_WEBVIEW_EDGE)
# Update the following variables if updating WebView2 SDK
@@ -31,7 +61,7 @@ index cc3298ff33..8adbeaea4f 100644
set(WEBVIEW2_DEFAULT_PACKAGE_DIR "${CMAKE_BINARY_DIR}/packages/Microsoft.Web.WebView2.${WEBVIEW2_VERSION}")
diff --git a/include/wx/fontutil.h b/include/wx/fontutil.h
index 09ad8c8ef3..3c0c2d8f7e 100644
index 09ad8c8ef3..c228e167d7 100644
--- a/include/wx/fontutil.h
+++ b/include/wx/fontutil.h
@@ -294,7 +294,11 @@ public:
@@ -41,9 +71,9 @@ index 09ad8c8ef3..3c0c2d8f7e 100644
- void SetFractionalPointSize(double pointsize);
+ void SetFractionalPointSize(double pointsize
+#if defined(__WXMSW__)
+ , const wxWindow *window = nullptr
+ , const wxWindow *window = nullptr
+#endif
+ );
+ );
void SetPixelSize(const wxSize& pixelSize);
void SetStyle(wxFontStyle style);
void SetNumericWeight(int weight);
@@ -54,9 +84,9 @@ index 09ad8c8ef3..3c0c2d8f7e 100644
- void SetSizeOrDefault(double size)
+ void SetSizeOrDefault(double size
+#if defined(__WXMSW__)
+ , const wxWindow *window = nullptr
+ , const wxWindow *window = nullptr
+#endif
+ )
+ )
{
SetFractionalPointSize
(
@@ -151,7 +181,7 @@ index 317a0ca96f..58014ec1d4 100644
void OSXStoreOpenURL(const wxString &url ) { m_getURL = url ; }
#endif
diff --git a/src/common/combocmn.cpp b/src/common/combocmn.cpp
index b61aac35bf..d12b745e8c 100644
index b61aac35bf..7cfc97d2f8 100644
--- a/src/common/combocmn.cpp
+++ b/src/common/combocmn.cpp
@@ -2141,7 +2141,7 @@ void wxComboCtrlBase::CreatePopup()
@@ -180,7 +210,7 @@ index b61aac35bf..d12b745e8c 100644
- if ( spaceBelow < szp.y )
+ int anchorSideVertical = m_anchorSide & (wxUP | wxDOWN);
+ if (// Pop up as asked for by the library user.
+ (anchorSideVertical & wxUP) ||
+ (anchorSideVertical & wxUP) ||
+ // Automatic: Pop up if it does not fit down.
+ (anchorSideVertical == 0 && spaceBelow < szp.y ))
{
@@ -228,7 +258,7 @@ index 74958fce10..59844f4526 100644
return buffer;
}
diff --git a/src/common/gdicmn.cpp b/src/common/gdicmn.cpp
index 20442bbc73..9a24951ec7 100644
index 20442bbc73..bc2c35bee6 100644
--- a/src/common/gdicmn.cpp
+++ b/src/common/gdicmn.cpp
@@ -863,11 +863,25 @@ void wxDisplaySize(int *width, int *height)
@@ -241,7 +271,7 @@ index 20442bbc73..9a24951ec7 100644
+ if ( width )
+ *width = size.x;
+ if ( height )
+ *height = size.y;
+ *height = size.y;
+}
+
wxSize wxGetDisplaySize()
@@ -257,8 +287,27 @@ index 20442bbc73..9a24951ec7 100644
void wxClientDisplayRect(int *x, int *y, int *width, int *height)
{
const wxRect rect = wxGetClientDisplayRect();
diff --git a/src/common/image.cpp b/src/common/image.cpp
index 78fe5b82a3..46db8722ce 100644
--- a/src/common/image.cpp
+++ b/src/common/image.cpp
@@ -383,11 +383,11 @@ wxImage wxImage::ShrinkBy( int xFactor , int yFactor ) const
unsigned char red = pixel[0] ;
unsigned char green = pixel[1] ;
unsigned char blue = pixel[2] ;
- unsigned char alpha = 255 ;
- if ( source_alpha )
- alpha = *(source_alpha + y_offset + x * xFactor + x1) ;
if ( !hasMask || red != maskRed || green != maskGreen || blue != maskBlue )
{
+ unsigned char alpha = 255 ;
+ if ( source_alpha )
+ alpha = *(source_alpha + y_offset + x * xFactor + x1) ;
if ( alpha > 0 )
{
avgRed += red ;
diff --git a/src/common/intl.cpp b/src/common/intl.cpp
index 0b0d8798f4..7072fab18a 100644
index 0b0d8798f4..294f542b1f 100644
--- a/src/common/intl.cpp
+++ b/src/common/intl.cpp
@@ -1628,6 +1628,12 @@ GetInfoFromLCID(LCID lcid,
@@ -266,7 +315,7 @@ index 0b0d8798f4..7072fab18a 100644
str = buf;
+//FIXME Vojtech: We forcefully set the locales for a decimal point to "C", but this
+// is not possible for the Win32 locales, therefore there is a discrepancy.
+// is not possible for the Win32 locales, therefore there is a discrepancy.
+// It looks like we live with the discrepancy for at least half a year, so we will
+// suppress the assert until we fix Slic3r to properly switch to "C" locales just
+// for file import / export.
@@ -667,3 +716,28 @@ index de5f52860c..a9581174a4 100644
return value;
// TODO case wxSYS_FRAMESIZE_X:
diff --git a/src/osx/cocoa/window.mm b/src/osx/cocoa/window.mm
index b322e582c5..79de567333 100644
--- a/src/osx/cocoa/window.mm
+++ b/src/osx/cocoa/window.mm
@@ -190,6 +190,9 @@ NSRect wxOSXGetFrameForControl( wxWindowMac* window , const wxPoint& pos , const
- (BOOL)isEnabled;
- (void)setEnabled:(BOOL)flag;
+- (BOOL)clipsToBounds;
+- (void)setClipsToBounds:(BOOL)clipsToBounds;
+
- (void)setImage:(NSImage *)image;
- (void)setControlSize:(NSControlSize)size;
@@ -2505,6 +2508,7 @@ wxWidgetImpl( peer, flags )
if ( m_osxView )
CFRetain(m_osxView);
[m_osxView release];
+ m_osxView.clipsToBounds = YES;
}
--
2.41.0.windows.2

View File

@@ -17,13 +17,13 @@ else ()
endif ()
if (MSVC)
set(_patch_cmd if not exist WXWIDGETS_PATCHED ( "${GIT_EXECUTABLE}" apply --verbose --ignore-space-change --whitespace=fix ${CMAKE_CURRENT_LIST_DIR}/0001-wxWidget-fix.patch && type nul > WXWIDGETS_PATCHED ) )
set(_patch_cmd if not exist WXWIDGETS_PATCHED ( "${GIT_EXECUTABLE}" apply --verbose --ignore-space-change --whitespace=fix ${CMAKE_CURRENT_LIST_DIR}/0001-wx-3.1.5-patch-for-Orca.patch && type nul > WXWIDGETS_PATCHED ) )
else ()
set(_patch_cmd test -f WXWIDGETS_PATCHED || ${PATCH_CMD} ${CMAKE_CURRENT_LIST_DIR}/0001-wxWidget-fix.patch && touch WXWIDGETS_PATCHED)
set(_patch_cmd test -f WXWIDGETS_PATCHED || ${PATCH_CMD} ${CMAKE_CURRENT_LIST_DIR}/0001-wx-3.1.5-patch-for-Orca.patch && touch WXWIDGETS_PATCHED)
endif ()
if (CMAKE_SYSTEM_NAME STREQUAL "Linux")
set(_patch_cmd ${PATCH_CMD} ${CMAKE_CURRENT_LIST_DIR}/0001-wxWidget-fix.patch)
set(_patch_cmd ${PATCH_CMD} ${CMAKE_CURRENT_LIST_DIR}/0001-wx-3.1.5-patch-for-Orca.patch)
endif ()
orcaslicer_add_cmake_project(

35
doc/Auxiliary-fan.md Normal file
View File

@@ -0,0 +1,35 @@
OrcaSlicer use `M106 P2` command to control auxiliary cooling fan.
If you are using Klipper, you can define a `M106` macro to control the both normal part cooling fan and auxiliary fan and exhuast fan.
Below is a reference configuration for Klipper.
*Note: Don't forget to change the pin name to the actual pin name you are using in the configuration*
```
# instead of using [fan], we define the default part cooling fan with [fan_generic] here
# this is the default part cooling fan
[fan_generic fan0]
pin: PA7
cycle_time: 0.01
hardware_pwm: false
# this is the auxiliary fan
# comment out it if you don't have auxiliary fan
[fan_generic fan2]
pin: PA8
cycle_time: 0.01
hardware_pwm: false
# this is the exhaust fan
# comment out it if you don't have exhaust fan
[fan_generic fan3]
pin: PA9
cycle_time: 0.01
hardware_pwm: false
[gcode_macro M106]
gcode:
{% set fan = 'fan' + (params.P|int if params.P is defined else 0)|string %}
{% set speed = (params.S|float / 255 if params.S is defined else 1.0) %}
SET_FAN_SPEED FAN={fan} SPEED={speed}
```

View File

@@ -0,0 +1,52 @@
OrcaSlicer use `M141/M191` command to control active chamber heater.
If `Activate temperature control` is checked, OrcaSlicer will insert `M191` command at the beginning of the gcode(before `Machine G-code`).
![image](./images/activate_chamber_heater.jpg)
*Note: If the machine is equipped with an auxiliary fan, OrcaSlicer will automatically activate the fan during the heating period to help circulate air in the chamber.*
There are two chamber temperature variables available that we can use in `Machine G-code` to control the chamber temperature, if you prefer:
To access the chamber temperature set in the first filament, use:
`M191 S{chamber_temperature[0]}`
To use the overall chamber temperature, which is the highest chamber temperature set across all filaments, use:
`M191 S{overall_chamber_temperature}`
--------------------------Klipper--------------------------
If you are using Klipper, you can define these macros to control the active chamber heater.
Bellow is a reference configuration for Klipper.
*Note: Don't forget to change the pin name/values to the actual values you are using in the configuration*
```
[heater_generic chamber_heater]
heater_pin:PB10
max_power:1.0
# Orca note: here the temperature sensor should be the sensor you are using for chamber temperature, not the PTC sensor
sensor_type:NTC 100K MGB18-104F39050L32
sensor_pin:PA1
control = pid
pid_Kp = 63.418
pid_ki = 0.960
pid_kd = 1244.716
min_temp:0
max_temp:70
[gcode_macro M141]
gcode:
SET_HEATER_TEMPERATURE HEATER=chamber_heater TARGET={params.S|default(0)}
[gcode_macro M191]
gcode:
{% set s = params.S|float %}
{% if s == 0 %}
# If target temperature is 0, do nothing
M117 Chamber heating cancelled
{% else %}
SET_HEATER_TEMPERATURE HEATER=chamber_heater TARGET={s}
# Orca: uncomment the following line if you want to use heat bed to assist chamber heating
# M140 S100
TEMPERATURE_WAIT SENSOR="heater_generic chamber_heater" MINIMUM={s-1} MAXIMUM={s+1}
M117 Chamber at target temperature
{% endif %}
```

View File

@@ -3,5 +3,5 @@ Welcome to the OrcaSlicer WIKI!
We have divided it roughly into the following pages:
* [Calibration](wiki/Calibration)
* [Seam](wiki/Seam)
* [Print settings](wiki/Print-settings)
* [How to build Orca Slicer](wiki/How-to-build)

13
doc/Precise-wall.md Normal file
View File

@@ -0,0 +1,13 @@
The 'Precise Wall' is a distinctive feature introduced by OrcaSlicer, aimed at improving the dimensional accuracy of prints and minimizing layer inconsistencies by slightly increasing the spacing between the outer wall and the inner wall.
Below is a technical explanation of how this feature works.
First, it's important to understand some basic concepts like flow, extrusion width, and space. Slic3r has an excellent document that covers these topics in detail. You can refer to this article: [link to article](https://manual.slic3r.org/advanced/flow-math).
Now, let's dive into the specifics. Slic3r and its forks, such as PrusaSlicer, SuperSlicer, and OrcaSlicer, assume that the extrusion path has an oval shape, which accounts for the overlaps. For example, if we set the wall width to 0.4mm and the layer height to 0.2mm, the combined thickness of two walls laid side by side is 0.714mm instead of 0.8mm due to the overlapping.
![image](./images/precise_wall.png)
This approach enhances the strength of 3D-printed parts. However, it does have some side effects. For instance, when the inner-outer wall order is used, the outer wall can be pushed outside, leading to potential size inaccuracy and more layer inconsistency.
It's important to keep in mind that this approach to handling flow is specific to Slic3r and it's forks. Other slicing software, such as Cura, assumes that the extrusion path is rectangular and, therefore, does not include overlapping. Two 0.4 mm walls will result in a 0.8 mm shell thickness in Cura
OrcaSlicer adheres to Slic3r's approach to handling flow. To address the downsides mentioned earlier, OrcaSlicer introduced the 'Precise Wall' feature. When this feature is enabled in OrcaSlicer, the overlap between the outer wall and its adjacent inner wall is set to zero. This ensures that the overall strength of the printed part is unaffected, while the size accuracy and layer consistency are improved.

8
doc/Print-settings.md Normal file
View File

@@ -0,0 +1,8 @@
Print settings:
* [Seam](seam)
* [Axiliary fan](auxiliary-fan)
* [Chamber temperature](chamber-temperature)
* [Air filtration/Exhaust fan](air-filtration)
* [Single Extruder Multimaterial](semm)
* [Precise wall](Precise-wall)

View File

@@ -1,17 +1,17 @@
WIP...
### Seam gap
![image](https://user-images.githubusercontent.com/103989404/215331359-236874c9-ca91-4dd4-b969-3cefc70ebe1b.png)
### Role-based wipe speed(auto)
### Wipe speed
### Wipe on loop(inward movement)
![image](https://user-images.githubusercontent.com/103989404/215334479-2687c518-1931-46a9-a363-7ae57a0aecf6.png)
Use outer wall speed and acceleration instead of travel speed and acceleration.
Added an option to disable this feature
### Support Cura style outer wall wipe(100% retract before wipe)
![image](https://user-images.githubusercontent.com/103989404/215334900-97c75010-4752-45f1-a57c-f0b723a8cb3f.png)
![image](https://user-images.githubusercontent.com/103989404/215335212-3253061d-bb7b-4853-a86c-10ff54cc8df5.png)
WIP...
### Seam gap
![image](https://user-images.githubusercontent.com/103989404/215331359-236874c9-ca91-4dd4-b969-3cefc70ebe1b.png)
### Role-based wipe speed(auto)
### Wipe speed
### Wipe on loop(inward movement)
![image](https://user-images.githubusercontent.com/103989404/215334479-2687c518-1931-46a9-a363-7ae57a0aecf6.png)
Use outer wall speed and acceleration instead of travel speed and acceleration.
Added an option to disable this feature
### Support Cura style outer wall wipe(100% retract before wipe)
![image](https://user-images.githubusercontent.com/103989404/215334900-97c75010-4752-45f1-a57c-f0b723a8cb3f.png)
![image](https://user-images.githubusercontent.com/103989404/215335212-3253061d-bb7b-4853-a86c-10ff54cc8df5.png)
Extra length on restart

35
doc/air-filtration.md Normal file
View File

@@ -0,0 +1,35 @@
OrcaSlicer use `M106 P3` command to control air-filtration/exhuast fan.
If you are using Klipper, you can define a `M106` macro to control the both normal part cooling fan and auxiliary fan and exhuast fan.
Below is a reference configuration for Klipper.
*Note: Don't forget to change the pin name to the actual pin name you are using in the configuration*
```
# instead of using [fan], we define the default part cooling fan with [fan_generic] here
# this is the default part cooling fan
[fan_generic fan0]
pin: PA7
cycle_time: 0.01
hardware_pwm: false
# this is the auxiliary fan
# comment out it if you don't have auxiliary fan
[fan_generic fan2]
pin: PA8
cycle_time: 0.01
hardware_pwm: false
# this is the exhaust fan
# comment out it if you don't have exhaust fan
[fan_generic fan3]
pin: PA9
cycle_time: 0.01
hardware_pwm: false
[gcode_macro M106]
gcode:
{% set fan = 'fan' + (params.P|int if params.P is defined else 0)|string %}
{% set speed = (params.S|float / 255 if params.S is defined else 1.0) %}
SET_FAN_SPEED FAN={fan} SPEED={speed}
```

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

BIN
doc/images/precise_wall.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

11
doc/semm.md Normal file
View File

@@ -0,0 +1,11 @@
# Single Extruder Multimaterial Printing in OrcaSlicer
## Introduction
In this guide, we will explain the parameters for single extruder multimaterial printing in OrcaSlicer. The whole process and parameters are same as PrusaSlicer as OrcaSlicer is based on PrusaSlicer.
OrcaSlicer has some additional features and minor differences though. We will explain them in this guide.
## Prime tower
WIP...
## Ramming
WIP...
## Manual filament change
WIP...

View File

@@ -39,6 +39,11 @@
"pattern": "localization/i18n/hu/OrcaSlicer_hu.po",
"lang": "hu"
},
{
"type": "po",
"pattern": "localization/i18n/ja/OrcaSlicer_hu.po",
"lang": "it"
},
{
"type": "po",
"pattern": "localization/i18n/ja/OrcaSlicer_ja.po",

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -7,13 +7,16 @@ src/slic3r/GUI/Gizmos/GLGizmoScale.cpp
src/slic3r/GUI/Gizmos/GLGizmosManager.cpp
src/slic3r/GUI/Gizmos/GLGizmoPainterBase.cpp
src/slic3r/GUI/Gizmos/GizmoObjectManipulation.cpp
src/slic3r/GUI/Gizmos/GLGizmoAdvancedCut.cpp
src/slic3r/GUI/Gizmos/GLGizmoCut.cpp
src/slic3r/GUI/Gizmos/GLGizmoSimplify.cpp
src/slic3r/GUI/Gizmos/GLGizmoFaceDetector.cpp
src/slic3r/GUI/Gizmos/GLGizmoSeam.cpp
src/slic3r/GUI/Gizmos/GLGizmoSeam.hpp
src/slic3r/GUI/Gizmos/GLGizmoText.cpp
src/slic3r/GUI/Gizmos/GLGizmoText.hpp
src/slic3r/GUI/Gizmos/GLGizmoEmboss.cpp
src/slic3r/GUI/Gizmos/GLGizmoSVG.cpp
src/slic3r/GUI/Gizmos/GLGizmoMeasure.cpp
src/slic3r/GUI/GUI.cpp
src/slic3r/GUI/GUI_App.cpp
src/slic3r/GUI/GUI_AuxiliaryList.cpp
@@ -35,8 +38,6 @@ src/slic3r/GUI/ImGuiWrapper.cpp
src/slic3r/GUI/Jobs/ArrangeJob.cpp
src/slic3r/GUI/Jobs/OrientJob.cpp
src/slic3r/GUI/Jobs/FillBedJob.cpp
src/slic3r/GUI/Jobs/Job.cpp
src/slic3r/GUI/Jobs/PlaterJob.cpp
src/slic3r/GUI/Jobs/RotoptimizeJob.cpp
src/slic3r/GUI/Jobs/BindJob.cpp
src/slic3r/GUI/Jobs/PrintJob.cpp
@@ -95,12 +96,14 @@ src/slic3r/GUI/Selection.cpp
src/slic3r/GUI/SelectMachine.cpp
src/slic3r/GUI/SendSystemInfoDialog.cpp
src/slic3r/GUI/SendToPrinter.cpp
src/slic3r/GUI/SlicingProgressNotification.cpp
src/slic3r/GUI/BindDialog.cpp
src/slic3r/GUI/Tab.cpp
src/slic3r/GUI/Tab.hpp
src/slic3r/GUI/UnsavedChangesDialog.cpp
src/slic3r/GUI/Auxiliary.cpp
src/slic3r/GUI/UpdateDialogs.cpp
src/slic3r/GUI/UnsavedChangesDialog.cpp
src/slic3r/GUI/WipeTowerDialog.cpp
src/slic3r/GUI/wxExtensions.cpp
src/slic3r/GUI/WebUserLoginDialog.cpp
@@ -141,7 +144,17 @@ src/slic3r/GUI/CalibrationWizardPresetPage.cpp
src/slic3r/GUI/CalibrationWizardCaliPage.cpp
src/slic3r/GUI/CaliHistoryDialog.cpp
src/slic3r/GUI/BonjourDialog.cpp
src/slic3r/GUI/Gizmos/GLGizmoMeshBoolean.cpp
src/slic3r/GUI/PrintHostDialogs.cpp
src/slic3r/GUI/calib_dlg.cpp
src/slic3r/GUI/PhysicalPrinterDialog.cpp
src/slic3r/GUI/PrintHostDialogs.cpp
src/slic3r/GUI/Gizmos/GLGizmoMeshBoolean.cpp
src/slic3r/GUI/NetworkTestDialog.cpp
src/slic3r/GUI/CreatePresetsDialog.cpp
src/slic3r/GUI/DailyTips.cpp
src/slic3r/Utils/CalibUtils.cpp
src/slic3r/GUI/PhysicalPrinterDialog.cpp
src/slic3r/Utils/AstroBox.cpp
src/slic3r/Utils/Duet.cpp
src/slic3r/Utils/FlashAir.cpp
src/slic3r/Utils/MKS.cpp
src/slic3r/Utils/OctoPrint.cpp
src/slic3r/Utils/Repetier.cpp

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@@ -1,83 +0,0 @@
{
"printers": [
{
"display_name": "Bambu Lab P1P",
"func": {
"FUNC_CHAMBER_TEMP": false,
"FUNC_FIRSTLAYER_INSPECT": false,
"FUNC_AI_MONITORING": true,
"FUNC_LIDAR_CALIBRATION": false,
"FUNC_BUILDPLATE_MARKER_DETECT": false,
"FUNC_FLOW_CALIBRATION": false,
"FUNC_MONITORING": false,
"FUNC_MEDIA_FILE": false,
"FUNC_VIRTUAL_CAMERA": false,
"FUNC_PRINT_WITHOUT_SD": false,
"FUNC_ALTER_RESOLUTION": false,
"FUNC_PRINT_ALL": false,
"FUNC_EXTRUSION_CALI": true
},
"camera_resolution": [ "720p" ],
"bed_temperature_limit": 100,
"model_id": "C11",
"printer_type": "C11",
"compatible_machine": [ "BL-P001", "BL-P002", "C12"],
"ftp_folder": "sdcard/",
"printer_thumbnail_image": "printer_thumbnail_p1p"
},
{
"display_name": "Bambu Lab P1S",
"func": {
"FUNC_CHAMBER_TEMP": false,
"FUNC_FIRSTLAYER_INSPECT": false,
"FUNC_AI_MONITORING": true,
"FUNC_LIDAR_CALIBRATION": false,
"FUNC_BUILDPLATE_MARKER_DETECT": false,
"FUNC_FLOW_CALIBRATION": false,
"FUNC_MONITORING": false,
"FUNC_MEDIA_FILE": false,
"FUNC_VIRTUAL_CAMERA": false,
"FUNC_PRINT_WITHOUT_SD": false,
"FUNC_ALTER_RESOLUTION": false,
"FUNC_PRINT_ALL": false,
"FUNC_VIRTUAL_TYAY": true,
"FUNC_EXTRUSION_CALI": true
},
"camera_resolution": [ "720p" ],
"bed_temperature_limit": 100,
"model_id": "C12",
"compatible_machine":["BL-P001", "BL-P002", "C11"],
"printer_type": "C12",
"ftp_folder" : "sdcard/",
"printer_thumbnail_image": "printer_thumbnail_p1p"
},
{
"display_name": "Bambu Lab X1",
"func": {
"FUNC_VIRTUAL_TYAY": true,
"FUNC_EXTRUSION_CALI": false,
"FUNC_LOCAL_TUNNEL": false
},
"model_id": "BL-P002",
"compatible_machine": [ "BL-P001", "C11", "C12"],
"camera_resolution": [ "720p", "1080p" ],
"printer_type": "3DPrinter-X1",
"printer_thumbnail_image": "printer_thumbnail"
},
{
"display_name": "Bambu Lab X1 Carbon",
"func": {
"FUNC_VIRTUAL_TYAY": true,
"FUNC_EXTRUSION_CALI": false,
"FUNC_LOCAL_TUNNEL": false
},
"model_id": "BL-P001",
"compatible_machine": [ "BL-P002", "C11", "C12"],
"camera_resolution": [ "720p", "1080p" ],
"printer_type": "3DPrinter-X1-Carbon",
"printer_thumbnail_image": "printer_thumbnail"
}
]
}

View File

@@ -62,108 +62,122 @@
# Weight must be larger or equal to 1. Default weight is 1.
# Weight defines probability as weight : sum_of_all_weights.
[hint:3D Scene Operations]
text = 3D Scene Operations\nDid you know how to control view and object/part selection with mouse and touchpanel in the 3D scene?
documentation_link = https://wiki.bambulab.com/en/software/bambu-studio/3d-scene-operations
[hint:Precise wall]
text = Precise wall\nDid you know that turning on precise wall can improve precision and layer consistency?
documentation_link = https://github.com/SoftFever/OrcaSlicer/wiki/Precise-wall
[hint:Sandwich mode]
text = Sandwich mode\nDid you know that you can use sandwich mode (inner-outer-inner) to improve precision and layer consistency if your model doesn't have very steep overhangs?
[hint:Chamber temperature]
text = Chamber temperature\nDid you know that OrcaSlicer supports chamber temperature?
documentation_link = https://github.com/SoftFever/OrcaSlicer/wiki/Chamber-temperature
[hint:Calibration]
text = Calibration\nDid you know that calibrating your printer can do wonders? Check out our beloved calibration solution in OrcaSlicer.
documentation_link = https://github.com/SoftFever/OrcaSlicer/wiki/Calibration
[hint:Auxiliary fan]
text = Auxiliary fan\nDid you know that OrcaSlicer supports Auxiliary part cooling fan?
documentation_link = https://github.com/SoftFever/OrcaSlicer/wiki/Auxiliary-fan
[hint:Air filtration]
text = Air filtration/Exhuast Fan\nDid you know that OrcaSlicer can support Air filtration/Exhuast Fan?
documentation_link = https://github.com/SoftFever/OrcaSlicer/wiki/air-filtration
[hint:G-code window]
text = G-code window\nYou can turn on/off the G-code window by pressing the <b>C</b> key.
[hint:Switch workspaces]
text = Switch workspaces\nYou can switch between <b>Prepare</b> and <b>Preview</b> workspaces by pressing the <b>Tab</b> key.
[hint:How to use keyboard shortcuts]
text = How to use keyboard shortcuts\nDid you know that Orca Slicer offers a wide range of keyboard shortcuts and 3D scene operations.
[hint:Reverse on odd]
text = Reverse on odd\nDid you know that <b>Reverse on odd</b> feature can significantly improve the surface quality of your overhangs?
[hint:Cut Tool]
text = Cut Tool\nDid you know that you can cut a model at any angle and position with the cutting tool?
documentation_link = https://wiki.bambulab.com/en/software/bambu-studio/cut-tool
[hint:Fix Model]
text = Fix Model\nDid you know that you can fix a corrupted 3D model to avoid a lot of slicing problems?
documentation_link = https://wiki.bambulab.com/en/software/bambu-studio/fix-model
text = Fix Model\nDid you know that you can fix a corrupted 3D model to avoid a lot of slicing problems on the Windows system?
[hint:Timelapse]
text = Timelapse\nDid you know that you can generate a timelapse video during each print?
documentation_link = https://wiki.bambulab.com/en/software/bambu-studio/Timelapse
[hint:Auto-Arrange]
text = Auto-Arrange\nDid you know that you can auto-arrange all objects in your project?
documentation_link = https://wiki.bambulab.com/en/software/bambu-studio/auto-arranging
[hint:Auto-Orient]
text = Auto-Orient\nDid you know that you can rotate objects to an optimal orientation for printing by a simple click?
documentation_link = https://wiki.bambulab.com/en/software/bambu-studio/auto-orientation
[hint:Lay on Face]
text = Lay on Face\nDid you know that you can quickly orient a model so that one of its faces sits on the print bed? Select the \"Place on face\" function or press the <b>F</b> key.
documentation_link = https://wiki.bambulab.com/en/software/bambu-studio/lay-on-face
[hint:Object List]
text = Object List\nDid you know that you can view all objects/parts in a list and change settings for each object/part?
documentation_link = https://wiki.bambulab.com/en/software/bambu-studio/object-list
#[hint:Search Functionality]
#text = Search Functionality\nDid you know that you use the Search tool to quickly find a specific Orca Slicer setting? Or use the familiar shortcut <b>Ctrl+F</b>.
[hint:Search Functionality]
text = Search Functionality\nDid you know that you use the Search tool to quickly find a specific Orca Slicer setting?
[hint:Simplify Model]
text = Simplify Model\nDid you know that you can reduce the number of triangles in a mesh using the Simplify mesh feature? Right-click the model and select Simplify model. Read more in the documentation.
documentation_link = https://wiki.bambulab.com/en/software/bambu-studio/simplify-model
text = Simplify Model\nDid you know that you can reduce the number of triangles in a mesh using the Simplify mesh feature? Right-click the model and select Simplify model.
[hint:Slicing Parameter Table]
text = Slicing Parameter Table\nDid you know that you can view all objects/parts on a table and change settings for each object/part?
documentation_link = https://wiki.bambulab.com/en/software/bambu-studio/parameter-table
[hint:Split to Objects/Parts]
text = Split to Objects/Parts\nDid you know that you can split a big object into small ones for easy colorizing or printing?
documentation_link = https://wiki.bambulab.com/en/software/bambu-studio/split-to-objects-parts
[hint:Subtract a Part]
text = Subtract a Part\nDid you know that you can subtract one mesh from another using the Negative part modifier? That way you can, for example, create easily resizable holes directly in Orca Slicer. Read more in the documentation.
documentation_link = https://wiki.bambulab.com/en/software/bambu-studio/subtract-a-part
text = Subtract a Part\nDid you know that you can subtract one mesh from another using the Negative part modifier? That way you can, for example, create easily resizable holes directly in Orca Slicer.
[hint:STEP]
text = STEP\nDid you know that you can improve your print quality by slicing a STEP file instead of an STL?\nOrca Slicer supports slicing STEP files, providing smoother results than a lower resolution STL. Give it a try!
documentation_link= https://wiki.bambulab.com/en/software/bambu-studio/step
[hint:Z seam location]
text = Z seam location\nDid you know that you can customize the location of the Z seam, and even paint it on your print, to have it in a less visible location? This improves the overall look of your model. Check it out!
documentation_link= https://wiki.bambulab.com/en/software/bambu-studio/Seam
[hint:Fine-tuning for flow rate]
text = Fine-tuning for flow rate\nDid you know that flow rate can be fine-tuned for even better-looking prints? Depending on the material, you can improve the overall finish of the printed model by doing some fine-tuning.
documentation_link= https://wiki.bambulab.com/en/x1/manual/manual-flow-rate-tuning
[hint:Split your prints into plates]
text = Split your prints into plates\nDid you know that you can split a model that has a lot of parts into individual plates ready to print? This will simplify the process of keeping track of all the parts.
documentation_link= https://wiki.bambulab.com/en/software/bambu-studio/plates_management
[hint:Speed up your print with Adaptive Layer Height]
text = Speed up your print with Adaptive Layer Height\nDid you know that you can print a model even faster, by using the Adaptive Layer Height option? Check it out!
documentation_link= https://wiki.bambulab.com/en/software/bambu-studio/adaptive-layer-height
[hint:Support painting]
text = Support painting\nDid you know that you can paint the location of your supports? This feature makes it easy to place the support material only on the sections of the model that actually need it.
documentation_link= https://wiki.bambulab.com/en/software/bambu-studio/support-painting
[hint:Different types of supports]
text = Different types of supports\nDid you know that you can choose from multiple types of supports? Tree supports work great for organic models, while saving filament and improving print speed. Check them out!
documentation_link= https://wiki.bambulab.com/en/software/bambu-studio/support
[hint:Printing Silk Filament]
text = Printing Silk Filament\nDid you know that Silk filament needs special consideration to print it successfully? Higher temperature and lower speed are always recommended for the best results.
documentation_link= https://wiki.bambulab.com/en/x1/manual/printing-with-silk-filaments
[hint:Brim for better adhesion]
text = Brim for better adhesion\nDid you know that when printing models have a small contact interface with the printing surface, it's recommended to use a brim?
documentation_link= https://wiki.bambulab.com/en/software/bambu-studio/auto-brim
[hint:Set parameters for multiple objects]
text = Set parameters for multiple objects\nDid you know that you can set slicing parameters for all selected objects at one time?
documentation_link= https://wiki.bambulab.com/en/software/bambu-studio/set-parameters-for-selected-objects
[hint:Stack objects]
text = Stack objects\nDid you know that you can stack objects as a whole one?
documentation_link= https://wiki.bambulab.com/en/software/bambu-studio/stacking-objects
[hint:Flush into support/objects/infill]
text = Flush into support/objects/infill\nDid you know that you can save the wasted filament by flushing them into support/objects/infill during filament change?
documentation_link= https://wiki.bambulab.com/en/software/bambu-studio/reduce-wasting-during-filament-change
[hint:Improve strength]
text = Improve strength\nDid you know that you can use more wall loops and higher sparse infill density to improve the strength of the model?
[hint:When need to print with the printer door opened]
text = When need to print with the printer door opened\nDid you know that opening the printer door can reduce the probability of extruder/hotend clogging when printing lower temperature filament with a higher enclosure temperature. More info about this in the Wiki.
[hint:Avoid warping]
text = Avoid warping\nDid you know that when printing materials that are prone to warping such as ABS, appropriately increasing the heatbed temperature can reduce the probability of warping.
#[hint:]
#text =
#hypertext =

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -8,11 +8,11 @@
S11.87,1,8,1L8,1z"/>
</g>
<g>
<path fill="#ED6B21" d="M12,8.75H4C3.59,8.75,3.25,8.41,3.25,8S3.59,7.25,4,7.25h8c0.41,0,0.75,0.34,0.75,0.75S12.41,8.75,12,8.75
<path fill="#009688" d="M12,8.75H4C3.59,8.75,3.25,8.41,3.25,8S3.59,7.25,4,7.25h8c0.41,0,0.75,0.34,0.75,0.75S12.41,8.75,12,8.75
z"/>
</g>
<g>
<path fill="#ED6B21" d="M8,12.75c-0.41,0-0.75-0.34-0.75-0.75V4c0-0.41,0.34-0.75,0.75-0.75S8.75,3.59,8.75,4v8
<path fill="#009688" d="M8,12.75c-0.41,0-0.75-0.34-0.75-0.75V4c0-0.41,0.34-0.75,0.75-0.75S8.75,3.59,8.75,4v8
C8.75,12.41,8.41,12.75,8,12.75z"/>
</g>
</g>

Before

Width:  |  Height:  |  Size: 846 B

After

Width:  |  Height:  |  Size: 846 B

View File

@@ -0,0 +1,4 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" width="16px" height="16px">
<path fill="#808080" d="m 4,0 v 4 h 4 v 10 h 4 V 4 h 4 V 0 Z m 1.121094,1 h 1.414062 l 2,2 H 7.115235 Z M 7.242188,1 H 8.65625 L 11,3.34375 v 1.4140625 z m 2.121093,0 h 1.408205 l 1.998045,1.998 H 11.35547 Z m 2.121094,0 h 1.414063 l 1.992186,2 h -1.414061 z m 2.121094,0 H 15 V 2.3964375 Z M 5,1.59175 6.408203,3 H 5 Z m 4,1.8789062 2,1.9941407 V 6.8788594 L 9,4.8847188 Z M 9,5.59175 11,7.5858906 V 9 L 9,7 Z m 0,2.1210938 2,2.0000002 v 1.414063 L 9,9.126906 Z m 0,2.1210942 2,2 V 13 H 10.761152 L 9,11.248 Z M 9,12 10,13 H 9 Z" />
<path fill="#009688" d="M 3.5 9 C 1.5741139 9 0 10.574114 0 12.5 C 0 14.425886 1.5741139 16 3.5 16 C 5.4258861 16 7 14.425886 7 12.5 C 7 10.574114 5.4258861 9 3.5 9 z M 3.5 10.199219 C 4.7773592 10.199219 5.8007813 11.222641 5.8007812 12.5 C 5.8007812 12.667974 5.7816922 12.830839 5.7480469 12.988281 L 3.0117188 10.251953 C 3.1691607 10.218308 3.3320257 10.199219 3.5 10.199219 z M 2.4863281 10.433594 L 5.5664062 13.513672 C 5.3371871 13.983352 4.9544913 14.362231 4.4804688 14.583984 L 1.4160156 11.521484 C 1.6376653 11.046724 2.0161177 10.663072 2.4863281 10.433594 z M 1.2421875 12.054688 L 3.9472656 14.757812 C 3.8024888 14.786013 3.6534389 14.800781 3.5 14.800781 C 2.2226408 14.800781 1.1992188 13.777359 1.1992188 12.5 C 1.1992188 12.347226 1.2142247 12.198881 1.2421875 12.054688 z " />
</svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@@ -0,0 +1,4 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" width="16px" height="16px">
<path fill="#808080" d="m 5,14 v 2 H 10.293 11 V 15.293 6 h 5 V 0 H 0 v 6 h 5 v 5 l 1,0 V 5 L 4,3 H 1.5 V 4 H 3.583984 L 4.587891,5 H 1 V 1 h 14 v 3.293 l -1,-1 V 1.5 H 13 V 3 H 8 V 13 H 7 v 1 h 1.293 l 1,1 H 6 V 14 Z M 9.707,4 h 3.586 l 1,1 H 10.707 Z M 9,4.707 l 1,1 v 8.586 l -1,-1 z" />
<path fill="#009688" d="M 1,12 C 0.5,12 0,12 0,12.5 0,13 0.5,13 1,13 H 6 C 6.5,13 7,13 7,12.5 7,12 6.5,12 6,12 Z" />
</svg>

After

Width:  |  Height:  |  Size: 503 B

View File

@@ -0,0 +1,4 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" width="16px" height="16px">
<path fill="#808080" d="M 6,11 V 7.5 H 5 V 11 Z M 5,13.5 7.53125,16 H 12 V 7 h 4 V 2.5 L 13.625,0 H 1 V 4.7128906 L 3.419922,7 H 7 v 7.257812 l -1,-1 z M 2.695312,1 h 10.580079 l 1,1 H 3.695312 Z M 2,1.703125 l 1,1 V 5.40625 l -1,-1 z M 4,3 h 11 v 3 h -4 v 9 H 8 V 6 H 4 Z" />
<path fill="#009688" d="M 3.5,9 C 3,9 3,9.5 3,10 v 2 H 1 C 0.5,12 0,12 0,12.5 0,13 0.5,13 1,13 h 2 v 2 c 0,0.5 0,1 0.5,1 C 4,16 4,15.5 4,15 V 13 H 6 C 6.5,13 7,13 7,12.5 7,12 6.5,12 6,12 H 4 V 10 C 4,9.5 4,9 3.5,9 Z" />
</svg>

After

Width:  |  Height:  |  Size: 592 B

Some files were not shown because too many files have changed in this diff Show More