Commit Graph

1436 Commits

Author SHA1 Message Date
d83b2e0d3d ObjectList: Fixes
* Fixed update of a warning icon for multi-part object, when some part with errors was deleted
 * Fixed a crash when selecting non-Object and non-Volume item (in get_mesh_errors_info() was missed check of the obj_idx)

+ Follow-up 1cc7b4ba97 - some code refactoring:
  * fixed RepairedMeshErrors.merge()
  * get_mesh_errors_count() renamed to get_repaired_errors_count()
2021-10-06 17:24:40 +02:00
46bff60e16 RichToolTips: Don't set a Timer for Tooltip but dismiss the tooltip when a mouse leave the button 2021-10-06 13:15:21 +02:00
cb570079ef Follow-up e2f2ed4172 and 80844ca337 - Allow RichToolTips just under MSW 2021-10-05 16:45:54 +02:00
033f498b1f actualize warnings on empty background process 2021-10-05 15:52:44 +02:00
86f2dcff00 RichTooltips for the buttons on a sidebar: Fixed wrong positioning of the tooltip when PrusaSlicer is on secondary display
Show a right triangle tip in the bottom right corner of the tooltip.
2021-10-05 13:36:32 +02:00
46f7d946c9 Changed conditions for the warning icon.
If mesh isn't manifold then always show the red "exclamation" icon
It mesh is manifold but was repaired then show the gray/white "exclamation" icon
2021-10-05 13:21:38 +02:00
a1ee03b86f Fix for #6218 - Button tooltip in the way
Use wxRichTooltip instead of wxTooltip for buttons on the bottom of a sidebar
2021-10-05 11:05:20 +02:00
b35a04b99a Fix for #7040 - Missing auto slice after Undo / Redo of deletion of height range modifier 2021-10-04 15:33:32 +02:00
6b6bc67064 Fixed inconsistent modifier context menu in the right panel and in the 3d scene 2021-10-04 14:13:42 +02:00
f573fe8ad5 Manifold mesh may contain self-intersections, so we want to always allow fixing the mesh.
This is a fix of a regression wrt. https://github.com/prusa3d/PrusaSlicer/releases/tag/version_2.4.0-alpha2
2021-10-04 10:39:58 +02:00
ca4345aa30 Close validate warnings on empty plater. 2021-10-04 09:56:23 +02:00
0fcbc006cb PrintInfoNotificationLevel with icon 2021-10-01 15:03:40 +02:00
8e80327528 Revert of 117df134f6 2021-10-01 14:14:47 +02:00
0ae569c97c Close updated item info notification at new item loading 2021-10-01 10:08:19 +02:00
830b7ce5eb Revert Object warning notification to SimplifySuggestion
followup of commit 0d0c092880.
2021-10-01 10:08:19 +02:00
d52026f992 After gizmo snapshots are compacted, rename the last one to something generic 2021-09-30 12:17:52 +02:00
de000ed50b New preferences key "clear_undo_redo_stack_on_new_project", set to "1"
by default: Clear Undo / Redo stack on new project or load project.
Fixes Clear undo chain #2812
2021-09-30 12:17:52 +02:00
fab8cfc468 Redo of the project state, implementation of Undo/Redo stack compression 2021-09-30 12:17:39 +02:00
71ce4ae979 Follow-up of 67e519d3ab - Use a platform-indipendent fix 2021-09-29 13:34:30 +02:00
f3961f38c4 Merge remote-tracking branch 'remotes/origin/vb_project_state' 2021-09-27 14:36:22 +02:00
52e9574d1b WIP Undo / Redo and project state: Marking Undo / Redo snapshots
with their purpose.
2021-09-27 14:10:53 +02:00
b1ec476fac #7010 - Fixed import from 3mf containing modifiers crossing the printbed 2021-09-27 09:45:54 +02:00
8f9512198d Progress bar notifications and Export finished notification changes.
Export Finished notification ejecting state.
Slicing began state in progress notification.
Timing of progress bar notifications. Progress indicator disappears instantly at 100%. While slicing goes into Slicing Finished without fade out. 
Preventing of negative growth of slicing progress bar.
Slicing progress bar - Negative percent value means now No info rather than Canceled.
Hiding slicing progress at printer technology change.
2021-09-23 16:15:39 +02:00
4b42bda5f2 Fix for #6941 - Search Settings: Put focus into input field when navigating to the setting 2021-09-23 12:32:59 +02:00
831c640a03 Fix for #6958 - GUI Setting non modal window: Search broken when main window hidden (minimized) 2021-09-22 15:53:59 +02:00
4e17e61be4 Check unsaved changes (#6991)
* Check Unsaved changes (partially related to #5903)
 + Allow create new project when Plater is empty, but some of presets are modified (related to #5903)
 + When creating new project allow Keep or Discard modification from previous project
 + Added check of changes:
    * before any load project (including DnD and "Load From Recent Projects")
    * before preset updater
    * when configuration is changing from the ConfigWizard
 + Dialog caption is added for each check

 + Create/Destroy ConfigWizard every time when it's called

* Check Unsaved changes: Next Improvements
 + For dialog "Save project changes" added a reason of saving and name of the current project (or "Untitled")
 + UnsavedChangesDialog: Headers are extended to better explain the reason
 + Preferences: Fixed tooltiops for "Always ask for unsaved changes when..."
 + Suppress "Remember my choice" checkbox for actions which are not frequently used

* Fixed behavior of the application when try to save changed project but "Cancel" button is selected in "Save file as..." dialog

* Check unsaved changes: Improvements for Config Wizard - Check all cases when presets should be updated
 + Fixed info line for Materials pages. Text of the info relates to the printer technology now

* Improved suggested name for a project when Application is closing

* Fixed Linux/OSX build warnings
2021-09-22 12:44:13 +02:00
0d5a4c2b53 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer 2021-09-22 11:38:15 +02:00
962f15a778 #6983 - Fixed preview when switching to it after automatic background processing is completed 2021-09-22 11:38:08 +02:00
f5359c281e Fix of #6898 (finishing slicing interfered with dragging gizmos) 2021-09-22 11:02:52 +02:00
37b45d048c Improvements for statistics information:
+ Show 2 groups of errors: "Auto-repared" and "Remaning".
 + Use different icons for volumes with/without remaining errors
 + Fixed update of the ObjectList warnings icons after switch the color mode of a PrusaSlicer
 + Some code refactoring: Use same code for tooltips for "exclamation"-icon from an ObjectList and from a Sidebar->ObjectInfo
2021-09-21 17:20:12 +02:00
d6640faed0 Add dedicated subclass NotificationProgressIndicator
to replace ProgressStatusBar and revert changes from b9dab754, keep UI jobs untouched
2021-09-21 12:34:40 +02:00
53a5c23d0f Eradicated admesh from TriangleMesh:
TriangleMesh newly only holds indexed_triangle_set and
TriangleMeshStats. TriangleMeshStats contains an excerpt of stl_stats.
TriangleMeshStats are updated when initializing with indexed_triangle_set.

Admesh triangle mesh fixing is newly only used when loading an STL.
AMF / 3MF / OBJ file formats are already indexed triangle sets, thus
they are no more converted to admesh stl_file format, nor fixed
through admesh repair machinery. When importing AMF / 3MF / OBJ files,
volume is calculated and if negative, all faces are flipped. Also
a bounding box and number of open edges is calculated.

Implemented its_number_of_patches(), its_num_open_edges()
Optimized its_split(), its_is_splittable() using a visitor pattern.

Reworked QHull integration into TriangleMesh:
    1) Face normals were not right.
    2) Indexed triangle set is newly emitted instead of duplicating
       vertices for each face.

Fixed cut_mesh(): Orient the triangulated faces correctly.
2021-09-20 17:12:22 +02:00
d76c15dc70 Slicing progress notification cancel button hides notification if process is idle. 2021-09-20 11:22:00 +02:00
a243421a87 Implemented possibility to fix several objects at once 2021-09-16 10:07:00 +02:00
8b9facd399 Fixed build on Win and one more warning 2021-09-15 18:39:55 +02:00
e03bcc7c4e Fix several warnings 2021-09-15 16:36:59 +02:00
762e7f9474 Tech ENABLE_FIX_IMPORTING_COLOR_PRINT_VIEW_INTO_GCODEVIEWER set as default 2021-09-14 15:05:33 +02:00
3034093082 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_reload_from_disk_changes 2021-09-14 10:05:18 +02:00
817c151550 Removes bottom status bar.
StatusBar class calls are commented out and replaced with notifications.
SlicicingProgress notification shows progress of slicing, ProgressIndicator notification handles other progress information, like arrange objects etc.
2021-09-10 14:35:13 +02:00
4157706143 Object warning notification
Opens when loading object, closes at deletion.
Replaces SimplifySuggesion.
2021-09-10 10:47:07 +02:00
78cf2a2dcc ENABLE_RELOAD_FROM_DISK_REPLACE_FILE - Search missing files in the same folder of the current project 2021-09-10 10:22:44 +02:00
aac9b87687 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_reload_from_disk_changes 2021-09-10 09:07:55 +02:00
f17a5837b7 Removed duplicated method GLVolumeCollection::check_outside_state() 2021-09-10 08:27:03 +02:00
1722765d67 Fixed conflicts after merge with master 2021-09-09 11:01:49 +02:00
ca9d1ff6e1 Follow-up to b5a007a683
WIP to G-code export parallelization through pipelining:
GCodeProcessor is called during the G-code export,
the G-code is no more reopened and re-read, but it is pipelined
from the G-code generator.
2021-09-08 15:06:12 +02:00
1c60fa2704 GCodeProcessor collects positions of line ends for GCodeViewer,
GCodeViewer no more parses G-code just to extract line end positions.
Removed start_mapping_gcode_window(), void stop_mapping_gcode_window(),
they are no more needed.
2021-09-07 15:42:56 +02:00
5cbf9c18ff Do not allow 'replace by stl' when a gizmo is active,
some of the gizmos might not cope well. ALso avoided
code duplication in all such cases (currently fix by
Netfabb, simplify, replace by stl).
2021-09-03 13:53:07 +02:00
357c46b297 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer 2021-09-02 09:49:13 +02:00
01842aaf6f Follow-up of 2bb14849f4 - Similar fix for Open Project command 2021-09-02 09:49:04 +02:00
458e880aa4 Calling destructor of notifications manager and hint database
Ensures to translate hints after change of language
2021-09-02 09:48:06 +02:00