Commit Graph

34 Commits

Author SHA1 Message Date
2c197570b2 Add a notification when custom support enforcers are not used due to supports being off
It is now emitted from Print::validate and has a hyperlink to enable supports
2021-03-04 09:35:22 +01:00
c25d3bdbf4 Fix of a crash when using active_step_add_warning on PrintObjects
PrintObjectBase::status_update_warnings called PrintBase::status_update_warnings, which in turn set
SlicingStatus flag to UPDATE_PRINT_STEP_WARNINGS (instead of UPDATE_PRINT_OBEJCT_STEP_WARNINGS) and
saved its own ObjectID. This led to spurious and hard to read thread-unsafe crashes.
2021-02-26 10:07:11 +01:00
3f2b57b1d4 Squash merge of lh_brim_rework,
brim separated to Brim.cpp,hpp
Refactored accessors to PrintObjectPtrs, PrintRegionPtrs, LayerPtrs,
SupportLayerPtrs for const correctness.
2021-02-03 15:12:53 +01:00
f702dafac9 Polishing of NotificationManager:
Fixed pairing of PrintObjects with slicing warning notifications.
Removed or commented out dead code.
Added documentation.
2020-10-14 16:49:06 +02:00
1fb9e1f70c wxEVT_CREATE and wxEVT_ACTIVATE is not being called on the main frame
on application start-up, at least not on Windows.
wxEVT_CREATE was called for some control deep in the Plater, however
the event was delivered to the main frame and only for slicer, not
for G-code viewer. Thus the callbacks for 3D Mouse were not registered
for and the 3D mouse did not work on Windows.

Fixed by calling the callback registration from the first execution
of the Idle function.
2020-10-14 12:55:07 +02:00
6f50117ed4 Fixed several indentation-related warnings 2020-08-19 17:15:01 +02:00
16fdfdc6cb Fixed back-end warning infrastructure: The Print / PrintObject
should have been derived from ObjectBase, not from ObjectID.
2020-07-21 15:33:36 +02:00
1aa1a4b756 Fix of previous commit. 2020-07-15 18:13:11 +02:00
e7c6570bc1 Update of back-end warnings:
Back-end warnings contain two new members: "current" and "message_id".
A warning is set to "not current" if its milestone is invalidated.
2020-07-15 18:03:39 +02:00
92d27f157c Support for collecting warnings from the background processing.
Multiple warnigns may be collected per Print / PrintObject milestone
and a status update is sent to the UI immediately after a warning
is issued.
2020-07-14 11:52:34 +02:00
2fa1094b4e Fixed erroneous use of logical OR where bitwise OR was meant
Also, PrintBase::SlicingStatus enum had two entries assigned to 0 - removed the one that was never used
2019-09-25 12:18:30 +02:00
108926abec Fixed the Perl bindings, made Print::m_placeholder_parser protected,
removed the non-const accessor method to m_placeholder_parser.
2019-07-25 17:08:31 +02:00
f5e17835d6 Reworked the FFF Print::update() to process the filament retract
override values and to store them into the output G-code.
2019-07-25 14:39:19 +02:00
7a614088ae WIP Undo / Redo: ModelID / ModelBase renamed to ObjectID / ObjectBase 2019-06-27 11:02:45 +02:00
b8fe1fabf3 Fixed unit tests when run with range checks on std::vector
There was a bug in unit tests that led to generating the wipe tower with non-normalized preset.
This caused out-of-bounds access into max_layer_height vector in fill_wipe_tower_partitions.
The problem surfaced in https://github.com/prusa3d/PrusaSlicer/issues/2288.
I quickly patched additional normalization of the preset to prevent this from happening.

Also, an assert in the same function turned out to trip on one of the tests.
This one was commented out for now and will (hopefully) be looked into later.

Function Print::apply_config was renamed to apply_config_perl_tests_only so everyone
sees its current purpose and does not mistake it for the more important Print::apply.
2019-05-22 16:48:20 +02:00
4b6383a512 Changed the G-code export and send to OctoPrint GUI code
to store the G-code next to the project file if it exists,
and to process the project name with the PlaceholderParser.
2019-05-17 16:27:00 +02:00
383a5127d3 Update the SLA slices at the print preview once the index is calculated. 2019-03-14 15:11:27 +01:00
b44155244c Fixed an issue with background processing cancelation & SLA supports
for a single object only.
Fixed a spelling issue in "call_cancell_xxx"
2019-02-21 12:39:38 +01:00
8e18ea489c WIP: SLA support "Generate points" and "Apply Changes" will reslice
just the selected object.
Added "Host upload active" check on background processing state.
Documented requirements on "update_background_process" to
control the upcoming single "Slice Now" / "Export" button.
2019-02-21 11:40:56 +01:00
f95393fc03 Fix of "Change of object type support blocker to enforcer does nothing (and vice versa) (#1818)"
WIP: Limited background processing for SLA supports.
2019-02-21 08:44:07 +01:00
71d995d7aa Send EVT_SLICING_UPDATE with RELOAD_SLA_SUPPORT_POINTS
once object's support points are calculated by the backend.
2019-02-06 14:18:04 +01:00
cc06b9f06b Fixed an issue, where the output G-code file name was not always updated
from the current Model/ModelObjects.
Fixed a possible race condition in updating Print::m_placeholder_parser
with the proposed filename / filename base.
Improved documentation (source code comments).
2019-02-03 10:41:14 +01:00
3cbd0b7867 WIP: Time estimate in file names. 2018-12-12 12:00:45 +01:00
92e6427511 Trigger background processing update when switching to a preview tab.
Implements "Go Direct to the preview screen after slicing #152"
2018-12-11 17:49:31 +01:00
e99fa7d104 Implemented naming of the SLA export file based on the output file name
template.

Reworked naming of the plater exports to not use the output file name
template, but to derive the file name from the first printable object's name.

Fixed error handling: Reimpemented the Perl's "eval" blocks
as try / catch blocks.
2018-12-03 13:14:28 +01:00
48b2a45bb2 Using the new status update interface to refresh scene right after the supports are ready. 2018-11-21 12:10:10 +01:00
8b307bb320 Renamed PrintBase::Status to SlicingStatusEvent
Hopefully it will fix compilation on Linux (some forgotten Status macro?)
2018-11-20 16:27:30 +01:00
48db8e6478 Hopefully a fix of OSX compilation issue. 2018-11-20 15:18:46 +01:00
897f8b450e The slicing progress message can now trigger refresh of the 3D scene. 2018-11-20 13:22:26 +01:00
63ee3dc63c Partial update of 3D scene (GLVolumes derived from Model and from
the SLAPrintObject).
Updated PrintBase to generate a unique timestamp at each step invalidation.
2018-11-16 18:28:50 +01:00
d0bd0e9834 WIP: SLAPrintObjectConfig, SLAPrint / SLAPrintObject initialization. 2018-11-09 12:02:42 +01:00
96eba71a21 Integrated SLAPrint into background processing.
Fixed couple of compiler warnings.
2018-11-08 20:18:40 +01:00
f7dc3b758c Fix of friend declaration on a template parameter, according to C++11 2018-11-08 14:57:42 +01:00
d79e2d8fa6 Separated Print / PrintObject into PrintBase.cpp/h to support SLAPrint 2018-11-08 14:23:17 +01:00