Commit Graph

16920 Commits

Author SHA1 Message Date
f7f0da15a8 Added various has_duplicate_points() checks, to be used by asserts.
Removed some "extern" function modifiers, they have no meaning in C++.
2021-09-24 14:07:46 +02:00
0f83a5f520 Set the project state to 'dirty' only if a project has a name (was saved or loaded).
Do not mark the project as dirty if it is a new project which hasn't been saved yet.
2021-09-24 13:01:29 +02:00
9311ce0d45 Moved a commented out test for DynamicPrintConfig serialization
/ deserialization into a living unit test.
2021-09-24 11:32:15 +02:00
421229f544 MSW specific: Follow up 683cb42454 - Set Selection for the content of focused controls (TextCtrls a SpinCtrls) 2021-09-24 10:55:34 +02:00
61d1aba4fc Fix stl export on Linux 2021-09-24 10:15:46 +02:00
8913e6eac5 Follow-up to b6d7601ead
Fixing the FDM raft generator.
2021-09-24 10:13:26 +02:00
8fba5eba5a Fix of [2.4.0a] version placeholder doesn't work for output filename format #7002 2021-09-24 09:36:14 +02:00
d6943ddd03 Merge branch 'master' of https://github.com/Prusa3D/PrusaSlicer 2021-09-23 18:46:15 +02:00
049bb96271 Fixed endless loop in support raft generator. 2021-09-23 18:46:11 +02:00
2ce7586bcd Fix of #7000 - Compilation error: ambiguous overload for ‘operator+ 2021-09-23 16:54:40 +02:00
3ae553fbba DoubleSlider: Fixed a bug related to the unexpected mouse capture end
Steps to repro:
 1.Use left mouse button to move thumb of the DoubleSlider
 2.Click by right mouse button
 3.Thumb is moving even if you move the mouse out of the DoubleSlider
2021-09-23 16:54:40 +02:00
b552cdf7fe Merge branch 'dk_notifications' 2021-09-23 16:15: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
f48e41dc3a MSW specific: Fix for #6938 - Cycling through tabs using Ctrl+PageUp/Down doesn't work
OnNavigationKey() function is copied from wxNotebook to Notebook
2021-09-23 16:02:44 +02:00
85b8797b21 Fix for #6993 - Small hieght combobox in "Settings tab as menu items" 2021-09-23 15:39:54 +02:00
78da34f69e Fix of hidden progress bar in progress indicator notification 2021-09-23 15:01:19 +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
03b8bead44 Follow-up of f71cf324b9 - Fixed shown tool position 2021-09-23 11:51:30 +02:00
9e100bd292 Blacklisted AMHook.dll 2021-09-23 11:15:08 +02:00
2d516f5288 Merge branch 'dk_tips' 2021-09-23 09:56:49 +02:00
35d6dbdf25 Fixed rendering undo/redo toolbar arrow. 2021-09-23 09:56:28 +02:00
90263b5130 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer 2021-09-23 09:25:31 +02:00
ba60d2b254 Tech ENABLE_FIX_SEAMS_SYNCH - Fix the synchronization of seams with the horizontal slider in preview 2021-09-23 09:25:13 +02:00
dfe6f8f42f Fix of #4666 (selection rectangle in SLA gizmo incorrectly handles transformations) 2021-09-22 21:31:33 +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
83433eaa28 MSW specific: Fixed settings layout after switching from New to Old layout
(Notebook: Added check of a visibility of just selected tab in notebook)
2021-09-22 15:53:59 +02:00
4d9b243dcb Merge branch 'dk_instances' 2021-09-22 15:00:44 +02:00
58acb81c41 Instance check: Error output with lock file location 2021-09-22 14:50:28 +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
377bde4391 Follow up ff82c82f - Fixed ModeButtons refreshing 2021-09-22 12:39:19 +02:00
fcbfe98830 Fix of #3969 (crash if $USER is not set) 2021-09-22 11:58:38 +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
b6d3083ce7 Fixed crash with zero support base spacing.
Zero support base spacing is newly allowed, switching from
the "support base" infill pattern to rectilinar infill pattern.
Why someone would want to use a solid infill for support base eludes me,
but it is simpler to support it instead of working out some rules on
minimum support base density.

Fixes Support patern spacing set to zero causing crash #6989
2021-09-22 10:50:12 +02:00
5940451471 Added a missing include (GCC 11.1). 2021-09-21 22:41:55 +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
86d7b8f960 Mesh statistics for imported STLs: Added backwards_edges to open_edges,
so that a mesh with incorrectly oriented faces will not be considered
a manifold.

Added assert for 3D convex hulls constructed by QHull. They shall be
manifold (however sometimes they are not).
2021-09-21 16:04:04 +02:00
fd41a72f51 Fix float accuracy issue when thick_bridges is off (#6957) 2021-09-21 15:50:04 +02:00
978e42f57c Fixed visualization of G-code lines in G-code viewer (3D view).
Improved speed of parsing external G-code.
2021-09-21 15:30:37 +02:00
7e1af61b73 Enabling PrusaLink in physcal printers dialog for MINI. 2021-09-21 12:49:25 +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
a78fc4926e Fixed triangulation of meshes split by the cut tool. 2021-09-21 11:07:40 +02:00
2f0d1428fc Added a missing include (GCC 11.1). 2021-09-21 10:45:57 +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
1a54236361 Fix of Print setting changes not applied to all copies if one copy rotated #6971 2021-09-20 14:41:19 +02:00
d76c15dc70 Slicing progress notification cancel button hides notification if process is idle. 2021-09-20 11:22:00 +02:00
3a91bef6ba Use std::optional to replace dirty flags for bounding boxes in Selection 2021-09-17 13:24:37 +02:00
4e6388f8a0 Place on face improvement: respect different z-rotation of instances 2021-09-17 09:38:53 +02:00
1cf2eeb391 Tech ENABLE_RETRACT_ACCELERATION set as default 2021-09-17 08:21:25 +02:00