Commit graph

175 commits

Author SHA1 Message Date
Lukas Matena
dca6db8635 Added a missing locale switch needed for custom gcode validation when switching tabs 2021-07-12 09:38:32 +02:00
Vojtech Bubnik
0f3cabb5d9 Support for forward compatibility of configurations, user and system
config bundles, project files (3MFs, AMFs). When loading these files,
the caller may decide whether to substitute some of the configuration
values the current PrusaSlicer version does not understand with
some reasonable default value, and whether to report it. If substitution
is disabled, an exception is being thrown as before this commit.
If substitution is enabled, list of substitutions is returned by the
API to be presented to the user. This allows us to introduce for example
new firmware flavor key in PrusaSlicer 2.4 while letting PrusaSlicer
2.3.2 to fall back to some default and to report it to the user.

When slicing from command line, substutions are performed by default
and reported into the console, however substitutions may be either
disabled or made silent with the new "config-compatibility" command
line option.

Substitute enums and bools only.  Allow booleans to be parsed as
    true: "1", "enabled", "on" case insensitive
    false: "0", "disabled", "off" case insensitive
This will allow us in the future for example to switch the draft_shield
boolean to an enum with the following values: "disabled" / "enabled" / "limited".

Added "enum_bitmask.hpp" - support for type safe sets of options.
See for example PresetBundle::load_configbundle(...
LoadConfigBundleAttributes flags) for an example of intended usage.

WIP: GUI for reporting the list of config substitutions needs to be
implemented by @YuSanka.
2021-06-27 16:57:05 +02:00
enricoturri1966
a2788f3a73 GCode Viewer -> Fixed used filament for gcode files produced by other slicers 2021-06-15 09:39:33 +02:00
Lukas Matena
d2874f2e34 Fixed a memory leak during locales switching on macOS and
removed frequent locales switching during gcode processing
2021-06-05 07:09:23 +02:00
enricoturri1966
b3ca8cb0af Fixed calculation of used filament for gcode viewer (take data from gcode file) 2021-05-27 12:25:59 +02:00
Lukas Matena
fef385cd6b Fixed second batch of locale-dependent calls 2021-05-24 12:20:29 +02:00
Lukas Matena
9ee2fc8275 Fixed first batch of locale-dependent calls 2021-05-24 12:20:29 +02:00
YuSanka
b9910669e8 Fix of - Add the length of each filament used 2021-05-07 12:48:34 +02:00
enricoturri1966
cb294e0b3e Follow-up of 15c32d636d -> Small refactoring 2021-05-04 13:31:07 +02:00
enricoturri1966
15c32d636d Seams detection for gcode saved with other slicers 2021-05-04 12:45:51 +02:00
enricoturri1966
395164c7a1 Fixed conflicts after merge with master 2021-04-30 14:54:58 +02:00
enricoturri1966
7ae77c06d0 Tech ENABLE_SEAMS_VISUALIZATION -> Added threshold to place seams 2021-04-27 15:12:45 +02:00
enricoturri1966
15f376e468 Tech ENABLE_SEAMS_VISUALIZATION -> Fixed build on Mac 2021-04-27 11:11:21 +02:00
enricoturri1966
076fdc90c0 Tech ENABLE_SEAMS_VISUALIZATION -> 1st installment of seams visualization in preview 2021-04-27 09:45:15 +02:00
enricoturri1966
52583bbe30 Extrusions in custom start g-code forced to be at first layer height level 2021-04-22 15:15:19 +02:00
enricoturri1966
fbde7de98a Do not convert custom gcode extrusion to travel 2021-04-09 12:52:11 +02:00
Lukas Matena
9660d35f8c An attempt to fix time estimates for 'Marlin (legacy)' flavor
Old M204 S sets both printing and travel accelerations, which must be
accounted for now when the latter was separated.
2021-04-06 15:45:49 +02:00
enricoturri1966
9b2d9fb01a GCodeProcessor added travel acceleration 2021-04-06 15:45:49 +02:00
enricoturri1966
52af90ed8f GCodeProcessor use new flavor gcfMarlinFirmware 2021-04-06 15:45:49 +02:00
Lukas Matena
f0e9ad46ec Renamed the gcfMarlin enum value to gcfMarlinLegacy so we never mistake it for the new one
There should be no functional change.
2021-04-06 15:45:49 +02:00
enricoturri1966
ab3890dab5 Follow-up of 3fce8398f0 - Fixed build warnings 2021-03-31 08:54:58 +02:00
enricoturri1966
3fce8398f0 Follow-up of 6ffa51da58 - Modified export of final M73 lines for remaining time to next printer stop accordingly to firmware specifications 2021-03-30 09:59:10 +02:00
enricoturri1966
68303059a6 Extract bed size from gcode produced with Simplify3d 2021-03-25 09:23:14 +01:00
enricoturri1966
645e5b6862 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_extended_m73 2021-03-24 12:05:36 +01:00
enricoturri1966
9c951b3108 Fixed parsing of g-code files generated by newer versions of Simplify3D 2021-03-24 11:36:16 +01:00
enricoturri1966
a0feb0f652 Preview and G-code viewer - Fixed synchronization between markers for pause print, color changes, custom g-code, retractions, deretractions and current line shown in g-code window 2021-03-23 12:46:04 +01:00
enricoturri1966
6ffa51da58 1st installment of export to gcode of M73 lines for remaining time to next printer stop 2021-03-23 09:05:52 +01:00
enricoturri1966
252aa9b229 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_gcode_window 2021-03-04 13:24:08 +01:00
enricoturri1966
d99895805c Follow-up of 6a46b71dc1 - Fix build on non-Windows platforms 2021-03-03 15:17:45 +01:00
enricoturri1966
6a46b71dc1 - GCodeProcessor: added processing of lines G28 2021-03-03 13:53:37 +01:00
enricoturri1966
da7d7ae11b Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_gcode_window 2021-03-03 09:07:28 +01:00
enricoturri1966
2c8f385c7f 1st installment of g-code window in preview 2021-03-02 10:01:06 +01:00
enricoturri1966
9a31580bde GCodeProcessor -> use boost::starts_with() 2021-02-26 16:00:32 +01:00
enricoturri1966
c9666ea257 - Review and merge of Temperature visualization in preview and G-code Viewer by combolek 2021-02-26 14:17:53 +01:00
enricoturri1966
48481c10b4 Tech ENABLE_VOLUMETRIC_EXTRUSION_PROCESSING set as default 2021-02-25 16:29:18 +01:00
enricoturri1966
e44c1006d5 - Allow import of gcode files processed by ArcWelder 2021-02-24 09:46:42 +01:00
enricoturri1966
bbf5c62af5 Follow-up of 9afaebac75 -> Fixed wrong gcode line numbers shown on preview horizontal slider when time estimation for silent mode is active 2021-02-19 14:12:49 +01:00
enricoturri1966
86d7e1fb90 - Validation of custom g-code against gcode processor reserved keywords 2021-02-18 14:34:40 +01:00
enricoturri1966
50c6fc1719 Tech ENABLE_TOOLPATHS_WIDTH_HEIGHT_FROM_GCODE set as default 2021-02-17 11:23:17 +01:00
enricoturri1966
9afaebac75 - Added option to show gcode line number on horizontal slider in preview 2021-02-16 10:07:05 +01:00
enricoturri1966
cf260f6e44 - Gcode processor: fixed error prompt for gcode lines Tc, Tx, T? 2021-02-11 11:48:46 +01:00
Lukas Matena
b5280fbed9 Fixing GCC warnings 1 2021-01-29 10:46:33 +01:00
enricoturri1966
4d3cb19423 5677 - GCodeProcessor accepts gcode line T-1 as valid for RepRapFirmware and RepRapSprinter 2021-01-04 14:21:24 +01:00
enricoturri1966
b8fc1d3173 GCodeViewer - Fixed visualization of time estimates for silent mode 2020-12-17 11:41:41 +01:00
enricoturri1966
dcd69b4ef8 - Fixed preview when volumetric extrusion is turned on 2020-12-15 15:57:22 +01:00
enricoturri1966
cdb05d103a Tweaked clamping of max toolpaths width 2020-12-14 15:11:38 +01:00
enricoturri1966
9605e235b8 - Do not apply machine limits for non-Marlin firmwares 2020-12-14 14:02:50 +01:00
enricoturri1966
5bd443cd1f - Take toolpaths width and height from gcode decorations, if available 2020-12-08 15:55:53 +01:00
enricoturri1966
f77475e501 Tech ENABLE_SHOW_WIPE_MOVES set as default 2020-12-07 10:29:50 +01:00
enricoturri1966
00a67ba004 GCode Viewer -> Parse gcode produced by KISSSlicer 2020-11-26 16:07:07 +01:00