diff --git a/resources/icons/notification_eject_sd.svg b/resources/icons/notification_eject_sd.svg
new file mode 100644
index 000000000..bea6c0977
--- /dev/null
+++ b/resources/icons/notification_eject_sd.svg
@@ -0,0 +1,75 @@
+
+
diff --git a/resources/icons/notification_eject_sd_hover.svg b/resources/icons/notification_eject_sd_hover.svg
new file mode 100644
index 000000000..23d2480c6
--- /dev/null
+++ b/resources/icons/notification_eject_sd_hover.svg
@@ -0,0 +1,76 @@
+
+
diff --git a/resources/localization/PrusaSlicer.pot b/resources/localization/PrusaSlicer.pot
index a111c8fa0..0b9ebff88 100644
--- a/resources/localization/PrusaSlicer.pot
+++ b/resources/localization/PrusaSlicer.pot
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2020-10-19 13:45+0200\n"
+"POT-Creation-Date: 2020-11-05 22:12+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME \n"
"Language-Team: LANGUAGE \n"
@@ -66,7 +66,7 @@ msgid ""
"numerous others."
msgstr ""
-#: src/slic3r/GUI/BackgroundSlicingProcess.cpp:62
+#: src/slic3r/GUI/BackgroundSlicingProcess.cpp:80
#, possible-c-format
msgid ""
"%s has encountered an error. It was likely caused by running out of memory. "
@@ -74,66 +74,71 @@ msgid ""
"and we would be glad if you reported it."
msgstr ""
-#: src/slic3r/GUI/BackgroundSlicingProcess.cpp:144
+#: src/slic3r/GUI/BackgroundSlicingProcess.cpp:163
msgid ""
"Copying of the temporary G-code to the output G-code failed. Maybe the SD "
-"card is write locked?"
+"card is write locked?\n"
+"Error message: %1%"
msgstr ""
-#: src/slic3r/GUI/BackgroundSlicingProcess.cpp:147
+#: src/slic3r/GUI/BackgroundSlicingProcess.cpp:166
msgid ""
"Copying of the temporary G-code to the output G-code failed. There might be "
"problem with target device, please try exporting again or using different "
"device. The corrupted output G-code is at %1%.tmp."
msgstr ""
-#: src/slic3r/GUI/BackgroundSlicingProcess.cpp:150
+#: src/slic3r/GUI/BackgroundSlicingProcess.cpp:169
msgid ""
"Renaming of the G-code after copying to the selected destination folder has "
"failed. Current path is %1%.tmp. Please try exporting again."
msgstr ""
-#: src/slic3r/GUI/BackgroundSlicingProcess.cpp:153
+#: src/slic3r/GUI/BackgroundSlicingProcess.cpp:172
msgid ""
"Copying of the temporary G-code has finished but the original code at %1% "
"couldn't be opened during copy check. The output G-code is at %2%.tmp."
msgstr ""
-#: src/slic3r/GUI/BackgroundSlicingProcess.cpp:156
+#: src/slic3r/GUI/BackgroundSlicingProcess.cpp:175
msgid ""
"Copying of the temporary G-code has finished but the exported code couldn't "
"be opened during copy check. The output G-code is at %1%.tmp."
msgstr ""
-#: src/slic3r/GUI/BackgroundSlicingProcess.cpp:163
-#: src/slic3r/GUI/BackgroundSlicingProcess.cpp:520
+#: src/slic3r/GUI/BackgroundSlicingProcess.cpp:178
+msgid "Unknown error occured during exporting G-code."
+msgstr ""
+
+#: src/slic3r/GUI/BackgroundSlicingProcess.cpp:183
+#: src/slic3r/GUI/BackgroundSlicingProcess.cpp:543
msgid "Running post-processing scripts"
msgstr ""
-#: src/slic3r/GUI/BackgroundSlicingProcess.cpp:165
+#: src/slic3r/GUI/BackgroundSlicingProcess.cpp:185
msgid "G-code file exported to %1%"
msgstr ""
-#: src/slic3r/GUI/BackgroundSlicingProcess.cpp:170
-#: src/slic3r/GUI/BackgroundSlicingProcess.cpp:219
+#: src/slic3r/GUI/BackgroundSlicingProcess.cpp:190
+#: src/slic3r/GUI/BackgroundSlicingProcess.cpp:239
msgid "Slicing complete"
msgstr ""
-#: src/slic3r/GUI/BackgroundSlicingProcess.cpp:214
+#: src/slic3r/GUI/BackgroundSlicingProcess.cpp:234
msgid "Masked SLA file exported to %1%"
msgstr ""
-#: src/slic3r/GUI/BackgroundSlicingProcess.cpp:522
+#: src/slic3r/GUI/BackgroundSlicingProcess.cpp:546
msgid "Copying of the temporary G-code to the output G-code failed"
msgstr ""
-#: src/slic3r/GUI/BackgroundSlicingProcess.cpp:545
+#: src/slic3r/GUI/BackgroundSlicingProcess.cpp:569
msgid "Scheduling upload to `%1%`. See Window -> Print Host Upload Queue"
msgstr ""
#: src/slic3r/GUI/BedShapeDialog.cpp:93
#: src/slic3r/GUI/GUI_ObjectManipulation.cpp:240 src/slic3r/GUI/Plater.cpp:166
-#: src/slic3r/GUI/Tab.cpp:2493
+#: src/slic3r/GUI/Tab.cpp:2506
msgid "Size"
msgstr ""
@@ -141,7 +146,7 @@ msgstr ""
msgid "Origin"
msgstr ""
-#: src/slic3r/GUI/BedShapeDialog.cpp:95 src/libslic3r/PrintConfig.cpp:745
+#: src/slic3r/GUI/BedShapeDialog.cpp:95 src/libslic3r/PrintConfig.cpp:752
msgid "Diameter"
msgstr ""
@@ -155,11 +160,11 @@ msgid ""
"rectangle."
msgstr ""
-#: src/slic3r/GUI/BedShapeDialog.cpp:129 src/slic3r/GUI/ConfigWizard.cpp:236
-#: src/slic3r/GUI/ConfigWizard.cpp:1336 src/slic3r/GUI/ConfigWizard.cpp:1350
+#: src/slic3r/GUI/BedShapeDialog.cpp:129 src/slic3r/GUI/ConfigWizard.cpp:239
+#: src/slic3r/GUI/ConfigWizard.cpp:1345 src/slic3r/GUI/ConfigWizard.cpp:1359
#: src/slic3r/GUI/ExtruderSequenceDialog.cpp:87
-#: src/slic3r/GUI/GCodeViewer.cpp:2183 src/slic3r/GUI/GCodeViewer.cpp:2189
-#: src/slic3r/GUI/GCodeViewer.cpp:2197 src/slic3r/GUI/GUI_ObjectLayers.cpp:145
+#: src/slic3r/GUI/GCodeViewer.cpp:2222 src/slic3r/GUI/GCodeViewer.cpp:2228
+#: src/slic3r/GUI/GCodeViewer.cpp:2236 src/slic3r/GUI/GUI_ObjectLayers.cpp:145
#: src/slic3r/GUI/GUI_ObjectManipulation.cpp:341
#: src/slic3r/GUI/GUI_ObjectManipulation.cpp:418
#: src/slic3r/GUI/GUI_ObjectManipulation.cpp:486
@@ -167,35 +172,35 @@ msgstr ""
#: src/slic3r/GUI/ObjectDataViewModel.cpp:96
#: src/slic3r/GUI/WipeTowerDialog.cpp:85 src/libslic3r/PrintConfig.cpp:75
#: src/libslic3r/PrintConfig.cpp:82 src/libslic3r/PrintConfig.cpp:93
-#: src/libslic3r/PrintConfig.cpp:124 src/libslic3r/PrintConfig.cpp:222
-#: src/libslic3r/PrintConfig.cpp:280 src/libslic3r/PrintConfig.cpp:355
-#: src/libslic3r/PrintConfig.cpp:363 src/libslic3r/PrintConfig.cpp:413
-#: src/libslic3r/PrintConfig.cpp:541 src/libslic3r/PrintConfig.cpp:552
-#: src/libslic3r/PrintConfig.cpp:570 src/libslic3r/PrintConfig.cpp:748
-#: src/libslic3r/PrintConfig.cpp:1158 src/libslic3r/PrintConfig.cpp:1339
-#: src/libslic3r/PrintConfig.cpp:1400 src/libslic3r/PrintConfig.cpp:1418
-#: src/libslic3r/PrintConfig.cpp:1436 src/libslic3r/PrintConfig.cpp:1492
-#: src/libslic3r/PrintConfig.cpp:1502 src/libslic3r/PrintConfig.cpp:1624
-#: src/libslic3r/PrintConfig.cpp:1632 src/libslic3r/PrintConfig.cpp:1673
-#: src/libslic3r/PrintConfig.cpp:1681 src/libslic3r/PrintConfig.cpp:1691
-#: src/libslic3r/PrintConfig.cpp:1699 src/libslic3r/PrintConfig.cpp:1707
-#: src/libslic3r/PrintConfig.cpp:1790 src/libslic3r/PrintConfig.cpp:2056
-#: src/libslic3r/PrintConfig.cpp:2127 src/libslic3r/PrintConfig.cpp:2161
-#: src/libslic3r/PrintConfig.cpp:2290 src/libslic3r/PrintConfig.cpp:2369
-#: src/libslic3r/PrintConfig.cpp:2376 src/libslic3r/PrintConfig.cpp:2383
-#: src/libslic3r/PrintConfig.cpp:2413 src/libslic3r/PrintConfig.cpp:2423
-#: src/libslic3r/PrintConfig.cpp:2433 src/libslic3r/PrintConfig.cpp:2593
-#: src/libslic3r/PrintConfig.cpp:2627 src/libslic3r/PrintConfig.cpp:2766
-#: src/libslic3r/PrintConfig.cpp:2775 src/libslic3r/PrintConfig.cpp:2784
-#: src/libslic3r/PrintConfig.cpp:2794 src/libslic3r/PrintConfig.cpp:2859
-#: src/libslic3r/PrintConfig.cpp:2869 src/libslic3r/PrintConfig.cpp:2881
-#: src/libslic3r/PrintConfig.cpp:2901 src/libslic3r/PrintConfig.cpp:2911
-#: src/libslic3r/PrintConfig.cpp:2921 src/libslic3r/PrintConfig.cpp:2939
-#: src/libslic3r/PrintConfig.cpp:2954 src/libslic3r/PrintConfig.cpp:2968
-#: src/libslic3r/PrintConfig.cpp:2979 src/libslic3r/PrintConfig.cpp:2992
-#: src/libslic3r/PrintConfig.cpp:3037 src/libslic3r/PrintConfig.cpp:3047
-#: src/libslic3r/PrintConfig.cpp:3056 src/libslic3r/PrintConfig.cpp:3066
-#: src/libslic3r/PrintConfig.cpp:3082 src/libslic3r/PrintConfig.cpp:3106
+#: src/libslic3r/PrintConfig.cpp:131 src/libslic3r/PrintConfig.cpp:229
+#: src/libslic3r/PrintConfig.cpp:287 src/libslic3r/PrintConfig.cpp:362
+#: src/libslic3r/PrintConfig.cpp:370 src/libslic3r/PrintConfig.cpp:420
+#: src/libslic3r/PrintConfig.cpp:548 src/libslic3r/PrintConfig.cpp:559
+#: src/libslic3r/PrintConfig.cpp:577 src/libslic3r/PrintConfig.cpp:755
+#: src/libslic3r/PrintConfig.cpp:1167 src/libslic3r/PrintConfig.cpp:1348
+#: src/libslic3r/PrintConfig.cpp:1409 src/libslic3r/PrintConfig.cpp:1427
+#: src/libslic3r/PrintConfig.cpp:1445 src/libslic3r/PrintConfig.cpp:1503
+#: src/libslic3r/PrintConfig.cpp:1513 src/libslic3r/PrintConfig.cpp:1635
+#: src/libslic3r/PrintConfig.cpp:1643 src/libslic3r/PrintConfig.cpp:1684
+#: src/libslic3r/PrintConfig.cpp:1692 src/libslic3r/PrintConfig.cpp:1702
+#: src/libslic3r/PrintConfig.cpp:1710 src/libslic3r/PrintConfig.cpp:1718
+#: src/libslic3r/PrintConfig.cpp:1781 src/libslic3r/PrintConfig.cpp:2047
+#: src/libslic3r/PrintConfig.cpp:2118 src/libslic3r/PrintConfig.cpp:2152
+#: src/libslic3r/PrintConfig.cpp:2281 src/libslic3r/PrintConfig.cpp:2360
+#: src/libslic3r/PrintConfig.cpp:2367 src/libslic3r/PrintConfig.cpp:2374
+#: src/libslic3r/PrintConfig.cpp:2404 src/libslic3r/PrintConfig.cpp:2414
+#: src/libslic3r/PrintConfig.cpp:2424 src/libslic3r/PrintConfig.cpp:2584
+#: src/libslic3r/PrintConfig.cpp:2618 src/libslic3r/PrintConfig.cpp:2757
+#: src/libslic3r/PrintConfig.cpp:2766 src/libslic3r/PrintConfig.cpp:2775
+#: src/libslic3r/PrintConfig.cpp:2785 src/libslic3r/PrintConfig.cpp:2850
+#: src/libslic3r/PrintConfig.cpp:2860 src/libslic3r/PrintConfig.cpp:2872
+#: src/libslic3r/PrintConfig.cpp:2892 src/libslic3r/PrintConfig.cpp:2902
+#: src/libslic3r/PrintConfig.cpp:2912 src/libslic3r/PrintConfig.cpp:2930
+#: src/libslic3r/PrintConfig.cpp:2945 src/libslic3r/PrintConfig.cpp:2959
+#: src/libslic3r/PrintConfig.cpp:2970 src/libslic3r/PrintConfig.cpp:2983
+#: src/libslic3r/PrintConfig.cpp:3028 src/libslic3r/PrintConfig.cpp:3038
+#: src/libslic3r/PrintConfig.cpp:3047 src/libslic3r/PrintConfig.cpp:3057
+#: src/libslic3r/PrintConfig.cpp:3073 src/libslic3r/PrintConfig.cpp:3097
msgid "mm"
msgstr ""
@@ -213,7 +218,7 @@ msgstr ""
msgid "Circular"
msgstr ""
-#: src/slic3r/GUI/BedShapeDialog.cpp:143 src/slic3r/GUI/GUI_Preview.cpp:314
+#: src/slic3r/GUI/BedShapeDialog.cpp:143 src/slic3r/GUI/GUI_Preview.cpp:312
#: src/libslic3r/ExtrusionEntity.cpp:327 src/libslic3r/ExtrusionEntity.cpp:362
msgid "Custom"
msgstr ""
@@ -231,7 +236,7 @@ msgstr ""
msgid "Load shape from STL..."
msgstr ""
-#: src/slic3r/GUI/BedShapeDialog.cpp:292 src/slic3r/GUI/MainFrame.cpp:1969
+#: src/slic3r/GUI/BedShapeDialog.cpp:292 src/slic3r/GUI/MainFrame.cpp:1977
msgid "Settings"
msgstr ""
@@ -244,7 +249,7 @@ msgid "Load..."
msgstr ""
#: src/slic3r/GUI/BedShapeDialog.cpp:333 src/slic3r/GUI/BedShapeDialog.cpp:413
-#: src/slic3r/GUI/Tab.cpp:3423
+#: src/slic3r/GUI/Tab.cpp:3449
msgid "Remove"
msgstr ""
@@ -286,7 +291,7 @@ msgstr ""
msgid "Choose an STL file to import bed model from:"
msgstr ""
-#: src/slic3r/GUI/BedShapeDialog.hpp:98 src/slic3r/GUI/ConfigWizard.cpp:1295
+#: src/slic3r/GUI/BedShapeDialog.hpp:98 src/slic3r/GUI/ConfigWizard.cpp:1304
msgid "Bed Shape"
msgstr ""
@@ -340,7 +345,7 @@ msgid ""
msgstr ""
#: src/slic3r/GUI/ConfigManipulation.cpp:48
-#: src/slic3r/GUI/GUI_ObjectLayers.cpp:29 src/slic3r/GUI/Tab.cpp:1371
+#: src/slic3r/GUI/GUI_ObjectLayers.cpp:29 src/slic3r/GUI/Tab.cpp:1376
#: src/libslic3r/PrintConfig.cpp:71
msgid "Layer height"
msgstr ""
@@ -352,7 +357,7 @@ msgid ""
"The first layer height will be reset to 0.01."
msgstr ""
-#: src/slic3r/GUI/ConfigManipulation.cpp:60 src/libslic3r/PrintConfig.cpp:931
+#: src/slic3r/GUI/ConfigManipulation.cpp:60 src/libslic3r/PrintConfig.cpp:938
msgid "First layer height"
msgstr ""
@@ -429,14 +434,14 @@ msgstr ""
#: src/slic3r/GUI/ConfigManipulation.cpp:210
#: src/slic3r/GUI/GUI_ObjectList.cpp:35 src/slic3r/GUI/GUI_ObjectList.cpp:93
#: src/slic3r/GUI/GUI_ObjectList.cpp:652 src/slic3r/GUI/Plater.cpp:393
-#: src/slic3r/GUI/Tab.cpp:1413 src/slic3r/GUI/Tab.cpp:1414
-#: src/libslic3r/PrintConfig.cpp:237 src/libslic3r/PrintConfig.cpp:450
-#: src/libslic3r/PrintConfig.cpp:472 src/libslic3r/PrintConfig.cpp:812
-#: src/libslic3r/PrintConfig.cpp:826 src/libslic3r/PrintConfig.cpp:863
-#: src/libslic3r/PrintConfig.cpp:1025 src/libslic3r/PrintConfig.cpp:1035
-#: src/libslic3r/PrintConfig.cpp:1053 src/libslic3r/PrintConfig.cpp:1072
-#: src/libslic3r/PrintConfig.cpp:1091 src/libslic3r/PrintConfig.cpp:1843
-#: src/libslic3r/PrintConfig.cpp:1860
+#: src/slic3r/GUI/Tab.cpp:1420 src/slic3r/GUI/Tab.cpp:1422
+#: src/libslic3r/PrintConfig.cpp:244 src/libslic3r/PrintConfig.cpp:457
+#: src/libslic3r/PrintConfig.cpp:479 src/libslic3r/PrintConfig.cpp:819
+#: src/libslic3r/PrintConfig.cpp:833 src/libslic3r/PrintConfig.cpp:870
+#: src/libslic3r/PrintConfig.cpp:1034 src/libslic3r/PrintConfig.cpp:1044
+#: src/libslic3r/PrintConfig.cpp:1062 src/libslic3r/PrintConfig.cpp:1081
+#: src/libslic3r/PrintConfig.cpp:1100 src/libslic3r/PrintConfig.cpp:1834
+#: src/libslic3r/PrintConfig.cpp:1851
msgid "Infill"
msgstr ""
@@ -468,12 +473,12 @@ msgstr ""
msgid "Before roll back"
msgstr ""
-#: src/slic3r/GUI/ConfigSnapshotDialog.cpp:24 src/libslic3r/PrintConfig.cpp:132
+#: src/slic3r/GUI/ConfigSnapshotDialog.cpp:24 src/libslic3r/PrintConfig.cpp:139
msgid "User"
msgstr ""
#: src/slic3r/GUI/ConfigSnapshotDialog.cpp:27
-#: src/slic3r/GUI/GUI_Preview.cpp:299 src/libslic3r/ExtrusionEntity.cpp:310
+#: src/slic3r/GUI/GUI_Preview.cpp:297 src/libslic3r/ExtrusionEntity.cpp:310
msgid "Unknown"
msgstr ""
@@ -485,60 +490,69 @@ msgstr ""
msgid "PrusaSlicer version"
msgstr ""
-#: src/slic3r/GUI/ConfigSnapshotDialog.cpp:51 src/libslic3r/Preset.cpp:1300
+#: src/slic3r/GUI/ConfigSnapshotDialog.cpp:54 src/libslic3r/Preset.cpp:1257
msgid "print"
msgstr ""
-#: src/slic3r/GUI/ConfigSnapshotDialog.cpp:52
+#: src/slic3r/GUI/ConfigSnapshotDialog.cpp:55
msgid "filaments"
msgstr ""
-#: src/slic3r/GUI/ConfigSnapshotDialog.cpp:53 src/libslic3r/Preset.cpp:1304
+#: src/slic3r/GUI/ConfigSnapshotDialog.cpp:58 src/libslic3r/Preset.cpp:1259
+msgid "SLA print"
+msgstr ""
+
+#: src/slic3r/GUI/ConfigSnapshotDialog.cpp:59 src/slic3r/GUI/Plater.cpp:693
+#: src/libslic3r/Preset.cpp:1260
+msgid "SLA material"
+msgstr ""
+
+#: src/slic3r/GUI/ConfigSnapshotDialog.cpp:61 src/libslic3r/Preset.cpp:1261
msgid "printer"
msgstr ""
-#: src/slic3r/GUI/ConfigSnapshotDialog.cpp:57 src/slic3r/GUI/Tab.cpp:1289
+#: src/slic3r/GUI/ConfigSnapshotDialog.cpp:65 src/slic3r/GUI/Tab.cpp:1293
msgid "vendor"
msgstr ""
-#: src/slic3r/GUI/ConfigSnapshotDialog.cpp:57
+#: src/slic3r/GUI/ConfigSnapshotDialog.cpp:65
msgid "version"
msgstr ""
-#: src/slic3r/GUI/ConfigSnapshotDialog.cpp:58
+#: src/slic3r/GUI/ConfigSnapshotDialog.cpp:66
msgid "min PrusaSlicer version"
msgstr ""
-#: src/slic3r/GUI/ConfigSnapshotDialog.cpp:60
+#: src/slic3r/GUI/ConfigSnapshotDialog.cpp:68
msgid "max PrusaSlicer version"
msgstr ""
-#: src/slic3r/GUI/ConfigSnapshotDialog.cpp:63
+#: src/slic3r/GUI/ConfigSnapshotDialog.cpp:71
msgid "model"
msgstr ""
-#: src/slic3r/GUI/ConfigSnapshotDialog.cpp:63
+#: src/slic3r/GUI/ConfigSnapshotDialog.cpp:71
msgid "variants"
msgstr ""
-#: src/slic3r/GUI/ConfigSnapshotDialog.cpp:75
+#: src/slic3r/GUI/ConfigSnapshotDialog.cpp:83
#, possible-c-format
msgid "Incompatible with this %s"
msgstr ""
-#: src/slic3r/GUI/ConfigSnapshotDialog.cpp:78
+#: src/slic3r/GUI/ConfigSnapshotDialog.cpp:86
msgid "Activate"
msgstr ""
-#: src/slic3r/GUI/ConfigSnapshotDialog.cpp:104
+#: src/slic3r/GUI/ConfigSnapshotDialog.cpp:112
msgid "Configuration Snapshots"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:236
+#: src/slic3r/GUI/ConfigWizard.cpp:239
msgid "nozzle"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:240
+#: src/slic3r/GUI/ConfigWizard.cpp:243
msgid "Alternate nozzles:"
msgstr ""
@@ -551,7 +565,7 @@ msgid "Standard"
msgstr ""
#: src/slic3r/GUI/ConfigWizard.cpp:308 src/slic3r/GUI/ConfigWizard.cpp:598
-#: src/slic3r/GUI/Tab.cpp:3507 src/slic3r/GUI/UnsavedChangesDialog.cpp:921
+#: src/slic3r/GUI/Tab.cpp:3530 src/slic3r/GUI/UnsavedChangesDialog.cpp:921
msgid "All"
msgstr ""
@@ -604,7 +618,7 @@ msgid "Profile:"
msgstr ""
#: src/slic3r/GUI/ConfigWizard.cpp:662 src/slic3r/GUI/ConfigWizard.cpp:812
-#: src/slic3r/GUI/ConfigWizard.cpp:873 src/slic3r/GUI/ConfigWizard.cpp:1007
+#: src/slic3r/GUI/ConfigWizard.cpp:873 src/slic3r/GUI/ConfigWizard.cpp:1010
msgid "(All)"
msgstr ""
@@ -624,35 +638,35 @@ msgid ""
"filament:"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1091
+#: src/slic3r/GUI/ConfigWizard.cpp:1100
msgid "Custom Printer Setup"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1091
+#: src/slic3r/GUI/ConfigWizard.cpp:1100
msgid "Custom Printer"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1093
+#: src/slic3r/GUI/ConfigWizard.cpp:1102
msgid "Define a custom printer profile"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1095
+#: src/slic3r/GUI/ConfigWizard.cpp:1104
msgid "Custom profile name:"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1120
+#: src/slic3r/GUI/ConfigWizard.cpp:1129
msgid "Automatic updates"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1120
+#: src/slic3r/GUI/ConfigWizard.cpp:1129
msgid "Updates"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1128 src/slic3r/GUI/Preferences.cpp:81
+#: src/slic3r/GUI/ConfigWizard.cpp:1137 src/slic3r/GUI/Preferences.cpp:81
msgid "Check for application updates"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1132
+#: src/slic3r/GUI/ConfigWizard.cpp:1141
#, possible-c-format
msgid ""
"If enabled, %s checks for new application versions online. When a new "
@@ -661,11 +675,11 @@ msgid ""
"notification mechanisms, no automatic installation is done."
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1138 src/slic3r/GUI/Preferences.cpp:97
+#: src/slic3r/GUI/ConfigWizard.cpp:1147 src/slic3r/GUI/Preferences.cpp:97
msgid "Update built-in Presets automatically"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1142
+#: src/slic3r/GUI/ConfigWizard.cpp:1151
#, possible-c-format
msgid ""
"If enabled, %s downloads updates of built-in system presets in the "
@@ -674,30 +688,30 @@ msgid ""
"startup."
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1145
+#: src/slic3r/GUI/ConfigWizard.cpp:1154
msgid ""
"Updates are never applied without user's consent and never overwrite user's "
"customized settings."
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1150
+#: src/slic3r/GUI/ConfigWizard.cpp:1159
msgid ""
"Additionally a backup snapshot of the whole configuration is created before "
"an update is applied."
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1157 src/slic3r/GUI/GUI_ObjectList.cpp:1793
-#: src/slic3r/GUI/GUI_ObjectList.cpp:4439 src/slic3r/GUI/Plater.cpp:3028
-#: src/slic3r/GUI/Plater.cpp:3852 src/slic3r/GUI/Plater.cpp:3881
+#: src/slic3r/GUI/ConfigWizard.cpp:1166 src/slic3r/GUI/GUI_ObjectList.cpp:1793
+#: src/slic3r/GUI/GUI_ObjectList.cpp:4439 src/slic3r/GUI/Plater.cpp:3044
+#: src/slic3r/GUI/Plater.cpp:3877 src/slic3r/GUI/Plater.cpp:3906
msgid "Reload from disk"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1160
+#: src/slic3r/GUI/ConfigWizard.cpp:1169
msgid ""
"Export full pathnames of models and parts sources into 3mf and amf files"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1164
+#: src/slic3r/GUI/ConfigWizard.cpp:1173
msgid ""
"If enabled, allows the Reload from disk command to automatically find and "
"load the files when invoked.\n"
@@ -705,11 +719,11 @@ msgid ""
"using an open file dialog."
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1172
+#: src/slic3r/GUI/ConfigWizard.cpp:1181
msgid "View mode"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1174
+#: src/slic3r/GUI/ConfigWizard.cpp:1183
msgid ""
"PrusaSlicer's user interfaces comes in three variants:\n"
"Simple, Advanced, and Expert.\n"
@@ -718,285 +732,285 @@ msgid ""
"fine-tuning, they are suitable for advanced and expert users, respectively."
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1179
+#: src/slic3r/GUI/ConfigWizard.cpp:1188
msgid "Simple mode"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1180
+#: src/slic3r/GUI/ConfigWizard.cpp:1189
msgid "Advanced mode"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1181
+#: src/slic3r/GUI/ConfigWizard.cpp:1190
msgid "Expert mode"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1187
+#: src/slic3r/GUI/ConfigWizard.cpp:1196
msgid "The size of the object can be specified in inches"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1188
+#: src/slic3r/GUI/ConfigWizard.cpp:1197
msgid "Use inches"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1222
+#: src/slic3r/GUI/ConfigWizard.cpp:1231
msgid "Other Vendors"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1226
+#: src/slic3r/GUI/ConfigWizard.cpp:1235
#, possible-c-format
msgid "Pick another vendor supported by %s"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1257
+#: src/slic3r/GUI/ConfigWizard.cpp:1266
msgid "Firmware Type"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1257 src/slic3r/GUI/Tab.cpp:2132
+#: src/slic3r/GUI/ConfigWizard.cpp:1266 src/slic3r/GUI/Tab.cpp:2145
msgid "Firmware"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1261
+#: src/slic3r/GUI/ConfigWizard.cpp:1270
msgid "Choose the type of firmware used by your printer."
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1295
+#: src/slic3r/GUI/ConfigWizard.cpp:1304
msgid "Bed Shape and Size"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1298
+#: src/slic3r/GUI/ConfigWizard.cpp:1307
msgid "Set the shape of your printer's bed."
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1318
+#: src/slic3r/GUI/ConfigWizard.cpp:1327
msgid "Filament and Nozzle Diameters"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1318
+#: src/slic3r/GUI/ConfigWizard.cpp:1327
msgid "Print Diameters"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1332
+#: src/slic3r/GUI/ConfigWizard.cpp:1341
msgid "Enter the diameter of your printer's hot end nozzle."
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1335
+#: src/slic3r/GUI/ConfigWizard.cpp:1344
msgid "Nozzle Diameter:"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1345
+#: src/slic3r/GUI/ConfigWizard.cpp:1354
msgid "Enter the diameter of your filament."
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1346
+#: src/slic3r/GUI/ConfigWizard.cpp:1355
msgid ""
"Good precision is required, so use a caliper and do multiple measurements "
"along the filament, then compute the average."
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1349
+#: src/slic3r/GUI/ConfigWizard.cpp:1358
msgid "Filament Diameter:"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1383
-msgid "Extruder and Bed Temperatures"
+#: src/slic3r/GUI/ConfigWizard.cpp:1392
+msgid "Nozzle and Bed Temperatures"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1383
+#: src/slic3r/GUI/ConfigWizard.cpp:1392
msgid "Temperatures"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1399
+#: src/slic3r/GUI/ConfigWizard.cpp:1408
msgid "Enter the temperature needed for extruding your filament."
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1400
+#: src/slic3r/GUI/ConfigWizard.cpp:1409
msgid "A rule of thumb is 160 to 230 °C for PLA, and 215 to 250 °C for ABS."
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1403
+#: src/slic3r/GUI/ConfigWizard.cpp:1412
msgid "Extrusion Temperature:"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1404 src/slic3r/GUI/ConfigWizard.cpp:1418
-#: src/libslic3r/PrintConfig.cpp:180 src/libslic3r/PrintConfig.cpp:912
-#: src/libslic3r/PrintConfig.cpp:956 src/libslic3r/PrintConfig.cpp:2209
+#: src/slic3r/GUI/ConfigWizard.cpp:1413 src/slic3r/GUI/ConfigWizard.cpp:1427
+#: src/libslic3r/PrintConfig.cpp:187 src/libslic3r/PrintConfig.cpp:919
+#: src/libslic3r/PrintConfig.cpp:963 src/libslic3r/PrintConfig.cpp:2200
msgid "°C"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1413
+#: src/slic3r/GUI/ConfigWizard.cpp:1422
msgid ""
"Enter the bed temperature needed for getting your filament to stick to your "
"heated bed."
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1414
+#: src/slic3r/GUI/ConfigWizard.cpp:1423
msgid ""
"A rule of thumb is 60 °C for PLA and 110 °C for ABS. Leave zero if you have "
"no heated bed."
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1417
+#: src/slic3r/GUI/ConfigWizard.cpp:1426
msgid "Bed Temperature:"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1872 src/slic3r/GUI/ConfigWizard.cpp:2524
+#: src/slic3r/GUI/ConfigWizard.cpp:1881 src/slic3r/GUI/ConfigWizard.cpp:2533
msgid "Filaments"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1872 src/slic3r/GUI/ConfigWizard.cpp:2526
+#: src/slic3r/GUI/ConfigWizard.cpp:1881 src/slic3r/GUI/ConfigWizard.cpp:2535
msgid "SLA Materials"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1926
+#: src/slic3r/GUI/ConfigWizard.cpp:1935
msgid "FFF Technology Printers"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:1931
+#: src/slic3r/GUI/ConfigWizard.cpp:1940
msgid "SLA Technology Printers"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:2237 src/slic3r/GUI/DoubleSlider.cpp:2124
-#: src/slic3r/GUI/DoubleSlider.cpp:2144 src/slic3r/GUI/GUI.cpp:244
+#: src/slic3r/GUI/ConfigWizard.cpp:2246 src/slic3r/GUI/DoubleSlider.cpp:2134
+#: src/slic3r/GUI/DoubleSlider.cpp:2154 src/slic3r/GUI/GUI.cpp:244
msgid "Notice"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:2257
+#: src/slic3r/GUI/ConfigWizard.cpp:2266
msgid "The following FFF printer models have no filament selected:"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:2261
+#: src/slic3r/GUI/ConfigWizard.cpp:2270
msgid "Do you want to select default filaments for these FFF printer models?"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:2275
+#: src/slic3r/GUI/ConfigWizard.cpp:2284
msgid "The following SLA printer models have no materials selected:"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:2279
+#: src/slic3r/GUI/ConfigWizard.cpp:2288
msgid "Do you want to select default SLA materials for these printer models?"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:2487
+#: src/slic3r/GUI/ConfigWizard.cpp:2496
msgid "Select all standard printers"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:2490
+#: src/slic3r/GUI/ConfigWizard.cpp:2499
msgid "< &Back"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:2491
+#: src/slic3r/GUI/ConfigWizard.cpp:2500
msgid "&Next >"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:2492
+#: src/slic3r/GUI/ConfigWizard.cpp:2501
msgid "&Finish"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:2493 src/slic3r/GUI/FirmwareDialog.cpp:151
-#: src/slic3r/GUI/Gizmos/GLGizmoFdmSupports.cpp:245
+#: src/slic3r/GUI/ConfigWizard.cpp:2502 src/slic3r/GUI/FirmwareDialog.cpp:151
+#: src/slic3r/GUI/Gizmos/GLGizmoFdmSupports.cpp:248
#: src/slic3r/GUI/ProgressStatusBar.cpp:26
#: src/slic3r/GUI/UnsavedChangesDialog.cpp:644
msgid "Cancel"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:2506
+#: src/slic3r/GUI/ConfigWizard.cpp:2515
msgid "Prusa FFF Technology Printers"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:2509
+#: src/slic3r/GUI/ConfigWizard.cpp:2518
msgid "Prusa MSLA Technology Printers"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:2524
+#: src/slic3r/GUI/ConfigWizard.cpp:2533
msgid "Filament Profiles Selection"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:2524 src/slic3r/GUI/ConfigWizard.cpp:2526
+#: src/slic3r/GUI/ConfigWizard.cpp:2533 src/slic3r/GUI/ConfigWizard.cpp:2535
#: src/slic3r/GUI/GUI_ObjectList.cpp:4016
msgid "Type:"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:2526
+#: src/slic3r/GUI/ConfigWizard.cpp:2535
msgid "SLA Material Profiles Selection"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:2624
+#: src/slic3r/GUI/ConfigWizard.cpp:2633
msgid "Configuration Assistant"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:2625
+#: src/slic3r/GUI/ConfigWizard.cpp:2634
msgid "Configuration &Assistant"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:2627
+#: src/slic3r/GUI/ConfigWizard.cpp:2636
msgid "Configuration Wizard"
msgstr ""
-#: src/slic3r/GUI/ConfigWizard.cpp:2628
+#: src/slic3r/GUI/ConfigWizard.cpp:2637
msgid "Configuration &Wizard"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:110
+#: src/slic3r/GUI/DoubleSlider.cpp:107
msgid "Place bearings in slots and resume printing"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1064
+#: src/slic3r/GUI/DoubleSlider.cpp:1076
msgid "One layer mode"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1066
+#: src/slic3r/GUI/DoubleSlider.cpp:1078
msgid "Discard all custom changes"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1071 src/slic3r/GUI/DoubleSlider.cpp:1852
+#: src/slic3r/GUI/DoubleSlider.cpp:1083 src/slic3r/GUI/DoubleSlider.cpp:1864
msgid "Jump to move"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1075
+#: src/slic3r/GUI/DoubleSlider.cpp:1087
#, possible-c-format
msgid "Jump to height %s or Set extruder sequence for the entire print"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1077 src/slic3r/GUI/DoubleSlider.cpp:1721
-#: src/slic3r/GUI/DoubleSlider.cpp:1852 src/slic3r/GUI/DoubleSlider.cpp:1856
+#: src/slic3r/GUI/DoubleSlider.cpp:1089 src/slic3r/GUI/DoubleSlider.cpp:1733
+#: src/slic3r/GUI/DoubleSlider.cpp:1864 src/slic3r/GUI/DoubleSlider.cpp:1868
msgid "Jump to height"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1083
+#: src/slic3r/GUI/DoubleSlider.cpp:1095
msgid "Edit current color - Right click the colored slider segment"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1093
+#: src/slic3r/GUI/DoubleSlider.cpp:1105
msgid "Print mode"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1107
+#: src/slic3r/GUI/DoubleSlider.cpp:1119
msgid "Add extruder change - Left click"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1109
+#: src/slic3r/GUI/DoubleSlider.cpp:1121
msgid ""
"Add color change - Left click for predefined color or Shift + Left click for "
"custom color selection"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1111
+#: src/slic3r/GUI/DoubleSlider.cpp:1123
msgid "Add color change - Left click"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1112
+#: src/slic3r/GUI/DoubleSlider.cpp:1124
msgid "or press \"+\" key"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1114
+#: src/slic3r/GUI/DoubleSlider.cpp:1126
msgid "Add another code - Ctrl + Left click"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1115
+#: src/slic3r/GUI/DoubleSlider.cpp:1127
msgid "Add another code - Right click"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1121
+#: src/slic3r/GUI/DoubleSlider.cpp:1133
msgid ""
"The sequential print is on.\n"
"It's impossible to apply any custom G-code for objects printing "
@@ -1004,212 +1018,212 @@ msgid ""
"This code won't be processed during G-code generation."
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1130
+#: src/slic3r/GUI/DoubleSlider.cpp:1142
msgid "Color change (\"%1%\")"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1131
+#: src/slic3r/GUI/DoubleSlider.cpp:1143
msgid "Color change (\"%1%\") for Extruder %2%"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1133
+#: src/slic3r/GUI/DoubleSlider.cpp:1145
msgid "Pause print (\"%1%\")"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1135
+#: src/slic3r/GUI/DoubleSlider.cpp:1147
msgid "Custom template (\"%1%\")"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1137
+#: src/slic3r/GUI/DoubleSlider.cpp:1149
msgid "Extruder (tool) is changed to Extruder \"%1%\""
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1144
+#: src/slic3r/GUI/DoubleSlider.cpp:1156
msgid "Note"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1146
+#: src/slic3r/GUI/DoubleSlider.cpp:1158
msgid ""
"G-code associated to this tick mark is in a conflict with print mode.\n"
"Editing it will cause changes of Slider data."
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1149
+#: src/slic3r/GUI/DoubleSlider.cpp:1161
msgid ""
"There is a color change for extruder that won't be used till the end of "
"print job.\n"
"This code won't be processed during G-code generation."
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1152
+#: src/slic3r/GUI/DoubleSlider.cpp:1164
msgid ""
"There is an extruder change set to the same extruder.\n"
"This code won't be processed during G-code generation."
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1155
+#: src/slic3r/GUI/DoubleSlider.cpp:1167
msgid ""
"There is a color change for extruder that has not been used before.\n"
"Check your settings to avoid redundant color changes."
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1160
+#: src/slic3r/GUI/DoubleSlider.cpp:1172
msgid "Delete tick mark - Left click or press \"-\" key"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1162
+#: src/slic3r/GUI/DoubleSlider.cpp:1174
msgid "Edit tick mark - Ctrl + Left click"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1163
+#: src/slic3r/GUI/DoubleSlider.cpp:1175
msgid "Edit tick mark - Right click"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1263 src/slic3r/GUI/DoubleSlider.cpp:1297
+#: src/slic3r/GUI/DoubleSlider.cpp:1275 src/slic3r/GUI/DoubleSlider.cpp:1309
#: src/slic3r/GUI/GLCanvas3D.cpp:983 src/slic3r/GUI/GUI_ObjectList.cpp:1832
-#: src/slic3r/GUI/Tab.cpp:2489 src/libslic3r/GCode/PreviewData.cpp:450
+#: src/slic3r/GUI/Tab.cpp:2502 src/libslic3r/GCode/PreviewData.cpp:449
#, possible-c-format
msgid "Extruder %d"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1264 src/slic3r/GUI/GUI_ObjectList.cpp:1833
+#: src/slic3r/GUI/DoubleSlider.cpp:1276 src/slic3r/GUI/GUI_ObjectList.cpp:1833
msgid "active"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1273
+#: src/slic3r/GUI/DoubleSlider.cpp:1285
msgid "Switch code to Change extruder"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1273 src/slic3r/GUI/GUI_ObjectList.cpp:1800
+#: src/slic3r/GUI/DoubleSlider.cpp:1285 src/slic3r/GUI/GUI_ObjectList.cpp:1800
msgid "Change extruder"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1274
+#: src/slic3r/GUI/DoubleSlider.cpp:1286
msgid "Change extruder (N/A)"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1276
+#: src/slic3r/GUI/DoubleSlider.cpp:1288
msgid "Use another extruder"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1298
+#: src/slic3r/GUI/DoubleSlider.cpp:1310
msgid "used"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1306
+#: src/slic3r/GUI/DoubleSlider.cpp:1318
msgid "Switch code to Color change (%1%) for:"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1307
+#: src/slic3r/GUI/DoubleSlider.cpp:1319
msgid "Add color change (%1%) for:"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1665
+#: src/slic3r/GUI/DoubleSlider.cpp:1677
msgid "Add color change"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1675
+#: src/slic3r/GUI/DoubleSlider.cpp:1687
msgid "Add pause print"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1679
+#: src/slic3r/GUI/DoubleSlider.cpp:1691
msgid "Add custom template"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1682
+#: src/slic3r/GUI/DoubleSlider.cpp:1694
msgid "Add custom G-code"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1700
+#: src/slic3r/GUI/DoubleSlider.cpp:1712
msgid "Edit color"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1701
+#: src/slic3r/GUI/DoubleSlider.cpp:1713
msgid "Edit pause print message"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1702
+#: src/slic3r/GUI/DoubleSlider.cpp:1714
msgid "Edit custom G-code"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1708
+#: src/slic3r/GUI/DoubleSlider.cpp:1720
msgid "Delete color change"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1709
+#: src/slic3r/GUI/DoubleSlider.cpp:1721
msgid "Delete tool change"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1710
+#: src/slic3r/GUI/DoubleSlider.cpp:1722
msgid "Delete pause print"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1711
+#: src/slic3r/GUI/DoubleSlider.cpp:1723
msgid "Delete custom G-code"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1728
+#: src/slic3r/GUI/DoubleSlider.cpp:1740
msgid "Set extruder sequence for the entire print"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1814
+#: src/slic3r/GUI/DoubleSlider.cpp:1826
msgid "Enter custom G-code used on current layer"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1815
+#: src/slic3r/GUI/DoubleSlider.cpp:1827
msgid "Custom G-code on current layer (%1% mm)."
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1830
+#: src/slic3r/GUI/DoubleSlider.cpp:1842
msgid "Enter short message shown on Printer display when a print is paused"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1831
+#: src/slic3r/GUI/DoubleSlider.cpp:1843
msgid "Message for pause print on current layer (%1% mm)."
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1851
+#: src/slic3r/GUI/DoubleSlider.cpp:1863
msgid "Enter the move you want to jump to"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:1851 src/slic3r/GUI/DoubleSlider.cpp:1855
+#: src/slic3r/GUI/DoubleSlider.cpp:1863 src/slic3r/GUI/DoubleSlider.cpp:1867
msgid "Enter the height you want to jump to"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:2118
+#: src/slic3r/GUI/DoubleSlider.cpp:2128
msgid "The last color change data was saved for a single extruder printing."
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:2119 src/slic3r/GUI/DoubleSlider.cpp:2134
+#: src/slic3r/GUI/DoubleSlider.cpp:2129 src/slic3r/GUI/DoubleSlider.cpp:2144
msgid "The last color change data was saved for a multi extruder printing."
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:2121
+#: src/slic3r/GUI/DoubleSlider.cpp:2131
msgid "Your current changes will delete all saved color changes."
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:2122 src/slic3r/GUI/DoubleSlider.cpp:2142
+#: src/slic3r/GUI/DoubleSlider.cpp:2132 src/slic3r/GUI/DoubleSlider.cpp:2152
msgid "Are you sure you want to continue?"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:2135
+#: src/slic3r/GUI/DoubleSlider.cpp:2145
msgid ""
"Select YES if you want to delete all saved tool changes, \n"
"NO if you want all tool changes switch to color changes, \n"
"or CANCEL to leave it unchanged."
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:2138
+#: src/slic3r/GUI/DoubleSlider.cpp:2148
msgid "Do you want to delete all saved tool changes?"
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:2140
+#: src/slic3r/GUI/DoubleSlider.cpp:2150
msgid ""
"The last color change data was saved for a multi extruder printing with tool "
"changes for whole print."
msgstr ""
-#: src/slic3r/GUI/DoubleSlider.cpp:2141
+#: src/slic3r/GUI/DoubleSlider.cpp:2151
msgid "Your current changes will delete all saved extruder (tool) changes."
msgstr ""
@@ -1234,10 +1248,10 @@ msgid "Set extruder change for every"
msgstr ""
#: src/slic3r/GUI/ExtruderSequenceDialog.cpp:52
-#: src/libslic3r/PrintConfig.cpp:396 src/libslic3r/PrintConfig.cpp:1038
-#: src/libslic3r/PrintConfig.cpp:1613 src/libslic3r/PrintConfig.cpp:1798
-#: src/libslic3r/PrintConfig.cpp:1865 src/libslic3r/PrintConfig.cpp:2072
-#: src/libslic3r/PrintConfig.cpp:2118
+#: src/libslic3r/PrintConfig.cpp:403 src/libslic3r/PrintConfig.cpp:1047
+#: src/libslic3r/PrintConfig.cpp:1624 src/libslic3r/PrintConfig.cpp:1789
+#: src/libslic3r/PrintConfig.cpp:1856 src/libslic3r/PrintConfig.cpp:2063
+#: src/libslic3r/PrintConfig.cpp:2109
msgid "layers"
msgstr ""
@@ -1261,26 +1275,26 @@ msgstr ""
msgid "parameter name"
msgstr ""
-#: src/slic3r/GUI/Field.cpp:198 src/slic3r/GUI/OptionsGroup.cpp:715
+#: src/slic3r/GUI/Field.cpp:198 src/slic3r/GUI/OptionsGroup.cpp:765
#: src/slic3r/GUI/UnsavedChangesDialog.cpp:874
msgid "N/A"
msgstr ""
-#: src/slic3r/GUI/Field.cpp:223
+#: src/slic3r/GUI/Field.cpp:220
#, possible-c-format
msgid "%s doesn't support percentage"
msgstr ""
-#: src/slic3r/GUI/Field.cpp:243 src/slic3r/GUI/Field.cpp:274
-#: src/slic3r/GUI/Field.cpp:1358 src/slic3r/GUI/GUI_ObjectLayers.cpp:413
+#: src/slic3r/GUI/Field.cpp:240 src/slic3r/GUI/Field.cpp:271
+#: src/slic3r/GUI/Field.cpp:1412 src/slic3r/GUI/GUI_ObjectLayers.cpp:413
msgid "Invalid numeric input."
msgstr ""
-#: src/slic3r/GUI/Field.cpp:252 src/slic3r/GUI/Field.cpp:1370
+#: src/slic3r/GUI/Field.cpp:249 src/slic3r/GUI/Field.cpp:1424
msgid "Input value is out of range"
msgstr ""
-#: src/slic3r/GUI/Field.cpp:288
+#: src/slic3r/GUI/Field.cpp:285
#, possible-c-format
msgid ""
"Do you mean %s%% instead of %s %s?\n"
@@ -1288,7 +1302,7 @@ msgid ""
"or NO if you are sure that %s %s is a correct value."
msgstr ""
-#: src/slic3r/GUI/Field.cpp:291
+#: src/slic3r/GUI/Field.cpp:288
msgid "Parameter validation"
msgstr ""
@@ -1365,8 +1379,8 @@ msgid "Firmware image:"
msgstr ""
#: src/slic3r/GUI/FirmwareDialog.cpp:805
-#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:271
-#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:327
+#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:287
+#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:362
msgid "Browse"
msgstr ""
@@ -1399,8 +1413,8 @@ msgid "Advanced: Output log"
msgstr ""
#: src/slic3r/GUI/FirmwareDialog.cpp:852
-#: src/slic3r/GUI/Mouse3DController.cpp:353
-#: src/slic3r/GUI/PrintHostDialogs.cpp:159
+#: src/slic3r/GUI/Mouse3DController.cpp:363
+#: src/slic3r/GUI/PrintHostDialogs.cpp:187
msgid "Close"
msgstr ""
@@ -1418,205 +1432,205 @@ msgstr ""
msgid "Cancelling..."
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:223
+#: src/slic3r/GUI/GCodeViewer.cpp:221
msgid "Tool position"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:933
+#: src/slic3r/GUI/GCodeViewer.cpp:965
msgid "Generating toolpaths"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:1318
+#: src/slic3r/GUI/GCodeViewer.cpp:1350
msgid "Generating vertex buffer"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:1392
+#: src/slic3r/GUI/GCodeViewer.cpp:1424
msgid "Generating index buffers"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2071
+#: src/slic3r/GUI/GCodeViewer.cpp:2110
msgid "Click to hide"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2071
+#: src/slic3r/GUI/GCodeViewer.cpp:2110
msgid "Click to show"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2183
+#: src/slic3r/GUI/GCodeViewer.cpp:2222
msgid "up to"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2189
+#: src/slic3r/GUI/GCodeViewer.cpp:2228
msgid "above"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2197
+#: src/slic3r/GUI/GCodeViewer.cpp:2236
msgid "from"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2197
+#: src/slic3r/GUI/GCodeViewer.cpp:2236
msgid "to"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2225 src/slic3r/GUI/GCodeViewer.cpp:2233
-#: src/slic3r/GUI/GUI_Preview.cpp:275 src/slic3r/GUI/GUI_Preview.cpp:787
-#: src/libslic3r/GCode/PreviewData.cpp:350
+#: src/slic3r/GUI/GCodeViewer.cpp:2264 src/slic3r/GUI/GCodeViewer.cpp:2272
+#: src/slic3r/GUI/GUI_Preview.cpp:273 src/slic3r/GUI/GUI_Preview.cpp:791
+#: src/libslic3r/GCode/PreviewData.cpp:349
msgid "Feature type"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2225 src/slic3r/GUI/GCodeViewer.cpp:2233
+#: src/slic3r/GUI/GCodeViewer.cpp:2264 src/slic3r/GUI/GCodeViewer.cpp:2272
#: src/slic3r/GUI/RammingChart.cpp:76
msgid "Time"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2233
+#: src/slic3r/GUI/GCodeViewer.cpp:2272
msgid "Percentage"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2236 src/libslic3r/GCode/PreviewData.cpp:352
+#: src/slic3r/GUI/GCodeViewer.cpp:2275 src/libslic3r/GCode/PreviewData.cpp:351
msgid "Height (mm)"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2237 src/libslic3r/GCode/PreviewData.cpp:354
+#: src/slic3r/GUI/GCodeViewer.cpp:2276 src/libslic3r/GCode/PreviewData.cpp:353
msgid "Width (mm)"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2238 src/libslic3r/GCode/PreviewData.cpp:356
+#: src/slic3r/GUI/GCodeViewer.cpp:2277 src/libslic3r/GCode/PreviewData.cpp:355
msgid "Speed (mm/s)"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2239 src/libslic3r/GCode/PreviewData.cpp:358
+#: src/slic3r/GUI/GCodeViewer.cpp:2278 src/libslic3r/GCode/PreviewData.cpp:357
msgid "Fan Speed (%)"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2240 src/libslic3r/GCode/PreviewData.cpp:360
+#: src/slic3r/GUI/GCodeViewer.cpp:2279 src/libslic3r/GCode/PreviewData.cpp:359
msgid "Volumetric flow rate (mm³/s)"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2241 src/slic3r/GUI/GUI_Preview.cpp:281
-#: src/slic3r/GUI/GUI_Preview.cpp:453 src/slic3r/GUI/GUI_Preview.cpp:693
-#: src/slic3r/GUI/GUI_Preview.cpp:786 src/slic3r/GUI/GUI_Preview.cpp:1270
-#: src/libslic3r/GCode/PreviewData.cpp:362
+#: src/slic3r/GUI/GCodeViewer.cpp:2280 src/slic3r/GUI/GUI_Preview.cpp:279
+#: src/slic3r/GUI/GUI_Preview.cpp:450 src/slic3r/GUI/GUI_Preview.cpp:697
+#: src/slic3r/GUI/GUI_Preview.cpp:790 src/slic3r/GUI/GUI_Preview.cpp:1269
+#: src/libslic3r/GCode/PreviewData.cpp:361
msgid "Tool"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2242 src/slic3r/GUI/GUI_Preview.cpp:282
-#: src/slic3r/GUI/GUI_Preview.cpp:784 src/libslic3r/GCode/PreviewData.cpp:364
+#: src/slic3r/GUI/GCodeViewer.cpp:2281 src/slic3r/GUI/GUI_Preview.cpp:280
+#: src/slic3r/GUI/GUI_Preview.cpp:788 src/libslic3r/GCode/PreviewData.cpp:363
msgid "Color Print"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2277 src/slic3r/GUI/GCodeViewer.cpp:2313
-#: src/slic3r/GUI/GCodeViewer.cpp:2318 src/slic3r/GUI/GUI_ObjectList.cpp:296
-#: src/slic3r/GUI/Tab.cpp:1780 src/slic3r/GUI/wxExtensions.cpp:515
-#: src/libslic3r/PrintConfig.cpp:523
+#: src/slic3r/GUI/GCodeViewer.cpp:2317 src/slic3r/GUI/GCodeViewer.cpp:2353
+#: src/slic3r/GUI/GCodeViewer.cpp:2358 src/slic3r/GUI/GUI_ObjectList.cpp:296
+#: src/slic3r/GUI/Tab.cpp:1790 src/slic3r/GUI/wxExtensions.cpp:515
+#: src/libslic3r/PrintConfig.cpp:530
msgid "Extruder"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2289
+#: src/slic3r/GUI/GCodeViewer.cpp:2329
msgid "Default color"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2313
+#: src/slic3r/GUI/GCodeViewer.cpp:2353
msgid "default color"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2410 src/slic3r/GUI/GCodeViewer.cpp:2438
+#: src/slic3r/GUI/GCodeViewer.cpp:2448 src/slic3r/GUI/GCodeViewer.cpp:2494
msgid "Color change"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2436 src/slic3r/GUI/GCodeViewer.cpp:2451
+#: src/slic3r/GUI/GCodeViewer.cpp:2467 src/slic3r/GUI/GCodeViewer.cpp:2492
msgid "Print"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2437 src/slic3r/GUI/GCodeViewer.cpp:2460
-#: src/slic3r/GUI/Plater.cpp:1199
+#: src/slic3r/GUI/GCodeViewer.cpp:2493 src/slic3r/GUI/GCodeViewer.cpp:2510
+#: src/slic3r/GUI/Plater.cpp:1200
msgid "Pause"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2442 src/slic3r/GUI/GCodeViewer.cpp:2445
+#: src/slic3r/GUI/GCodeViewer.cpp:2498 src/slic3r/GUI/GCodeViewer.cpp:2501
msgid "Event"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2442 src/slic3r/GUI/GCodeViewer.cpp:2445
+#: src/slic3r/GUI/GCodeViewer.cpp:2498 src/slic3r/GUI/GCodeViewer.cpp:2501
msgid "Remaining time"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2445
+#: src/slic3r/GUI/GCodeViewer.cpp:2501
msgid "Duration"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2489 src/slic3r/GUI/GUI_Preview.cpp:335
-#: src/slic3r/GUI/GUI_Preview.cpp:1471 src/libslic3r/PrintConfig.cpp:2295
+#: src/slic3r/GUI/GCodeViewer.cpp:2536 src/slic3r/GUI/GUI_Preview.cpp:333
+#: src/slic3r/GUI/GUI_Preview.cpp:1471 src/libslic3r/PrintConfig.cpp:2286
msgid "Travel"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2492
+#: src/slic3r/GUI/GCodeViewer.cpp:2539
msgid "Movement"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2493
+#: src/slic3r/GUI/GCodeViewer.cpp:2540
msgid "Extrusion"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2494 src/slic3r/GUI/Tab.cpp:1670
-#: src/slic3r/GUI/Tab.cpp:2539
+#: src/slic3r/GUI/GCodeViewer.cpp:2541 src/slic3r/GUI/Tab.cpp:1680
+#: src/slic3r/GUI/Tab.cpp:2552
msgid "Retraction"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2525 src/slic3r/GUI/GUI_Preview.cpp:320
-#: src/slic3r/GUI/GUI_Preview.cpp:333
+#: src/slic3r/GUI/GCodeViewer.cpp:2572 src/slic3r/GUI/GUI_Preview.cpp:318
+#: src/slic3r/GUI/GUI_Preview.cpp:331
msgid "Options"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2528 src/slic3r/GUI/GUI_Preview.cpp:336
+#: src/slic3r/GUI/GCodeViewer.cpp:2575 src/slic3r/GUI/GUI_Preview.cpp:334
#: src/slic3r/GUI/GUI_Preview.cpp:1472
msgid "Retractions"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2529 src/slic3r/GUI/GUI_Preview.cpp:337
+#: src/slic3r/GUI/GCodeViewer.cpp:2576 src/slic3r/GUI/GUI_Preview.cpp:335
#: src/slic3r/GUI/GUI_Preview.cpp:1473
msgid "Deretractions"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2530 src/slic3r/GUI/GUI_Preview.cpp:1474
+#: src/slic3r/GUI/GCodeViewer.cpp:2577 src/slic3r/GUI/GUI_Preview.cpp:1474
msgid "Tool changes"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2531 src/slic3r/GUI/GUI_Preview.cpp:1475
+#: src/slic3r/GUI/GCodeViewer.cpp:2578 src/slic3r/GUI/GUI_Preview.cpp:1475
msgid "Color changes"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2532 src/slic3r/GUI/GUI_Preview.cpp:1476
-msgid "Pause prints"
+#: src/slic3r/GUI/GCodeViewer.cpp:2579 src/slic3r/GUI/GUI_Preview.cpp:1476
+msgid "Print pauses"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2533 src/slic3r/GUI/GUI_Preview.cpp:1477
-msgid "Custom GCodes"
+#: src/slic3r/GUI/GCodeViewer.cpp:2580 src/slic3r/GUI/GUI_Preview.cpp:1477
+msgid "Custom G-codes"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2552 src/slic3r/GUI/GCodeViewer.cpp:2557
-#: src/slic3r/GUI/Plater.cpp:246 src/slic3r/GUI/Plater.cpp:1125
-#: src/slic3r/GUI/Plater.cpp:1175 src/slic3r/GUI/Plater.cpp:1196
+#: src/slic3r/GUI/GCodeViewer.cpp:2599 src/slic3r/GUI/GCodeViewer.cpp:2604
+#: src/slic3r/GUI/Plater.cpp:246 src/slic3r/GUI/Plater.cpp:1126
+#: src/slic3r/GUI/Plater.cpp:1176 src/slic3r/GUI/Plater.cpp:1197
msgid "Estimated printing time"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2552
+#: src/slic3r/GUI/GCodeViewer.cpp:2599
msgid "Normal mode"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2557
+#: src/slic3r/GUI/GCodeViewer.cpp:2604
msgid "Stealth mode"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2586
+#: src/slic3r/GUI/GCodeViewer.cpp:2633
msgid "Show stealth mode"
msgstr ""
-#: src/slic3r/GUI/GCodeViewer.cpp:2591
+#: src/slic3r/GUI/GCodeViewer.cpp:2638
msgid "Show normal mode"
msgstr ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:231 src/slic3r/GUI/GLCanvas3D.cpp:4978
+#: src/slic3r/GUI/GLCanvas3D.cpp:231 src/slic3r/GUI/GLCanvas3D.cpp:4964
msgid "Variable layer height"
msgstr ""
@@ -1676,7 +1690,7 @@ msgstr ""
msgid "Smooth"
msgstr ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:280 src/libslic3r/PrintConfig.cpp:547
+#: src/slic3r/GUI/GLCanvas3D.cpp:280 src/libslic3r/PrintConfig.cpp:554
msgid "Radius"
msgstr ""
@@ -1747,173 +1761,169 @@ msgstr ""
msgid "Seq."
msgstr ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:1418
-msgid "canvas_tooltip"
-msgstr ""
-
-#: src/slic3r/GUI/GLCanvas3D.cpp:1778
+#: src/slic3r/GUI/GLCanvas3D.cpp:1779
msgid "Variable layer height - Reset"
msgstr ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:1786
+#: src/slic3r/GUI/GLCanvas3D.cpp:1787
msgid "Variable layer height - Adaptive"
msgstr ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:1794
+#: src/slic3r/GUI/GLCanvas3D.cpp:1795
msgid "Variable layer height - Smooth all"
msgstr ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:2226
+#: src/slic3r/GUI/GLCanvas3D.cpp:2227
msgid "Mirror Object"
msgstr ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:3165
+#: src/slic3r/GUI/GLCanvas3D.cpp:3190
#: src/slic3r/GUI/Gizmos/GLGizmosManager.cpp:520
msgid "Gizmo-Move"
msgstr ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:3249
+#: src/slic3r/GUI/GLCanvas3D.cpp:3274
#: src/slic3r/GUI/Gizmos/GLGizmosManager.cpp:522
msgid "Gizmo-Rotate"
msgstr ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:3810
+#: src/slic3r/GUI/GLCanvas3D.cpp:3801
msgid "Move Object"
msgstr ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:4302 src/slic3r/GUI/GLCanvas3D.cpp:4939
+#: src/slic3r/GUI/GLCanvas3D.cpp:4288 src/slic3r/GUI/GLCanvas3D.cpp:4925
msgid "Switch to Settings"
msgstr ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:4303 src/slic3r/GUI/GLCanvas3D.cpp:4939
+#: src/slic3r/GUI/GLCanvas3D.cpp:4289 src/slic3r/GUI/GLCanvas3D.cpp:4925
msgid "Print Settings Tab"
msgstr ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:4304 src/slic3r/GUI/GLCanvas3D.cpp:4940
+#: src/slic3r/GUI/GLCanvas3D.cpp:4290 src/slic3r/GUI/GLCanvas3D.cpp:4926
msgid "Filament Settings Tab"
msgstr ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:4304 src/slic3r/GUI/GLCanvas3D.cpp:4940
+#: src/slic3r/GUI/GLCanvas3D.cpp:4290 src/slic3r/GUI/GLCanvas3D.cpp:4926
msgid "Material Settings Tab"
msgstr ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:4305 src/slic3r/GUI/GLCanvas3D.cpp:4941
+#: src/slic3r/GUI/GLCanvas3D.cpp:4291 src/slic3r/GUI/GLCanvas3D.cpp:4927
msgid "Printer Settings Tab"
msgstr ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:4361
+#: src/slic3r/GUI/GLCanvas3D.cpp:4347
msgid "Undo History"
msgstr ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:4361
+#: src/slic3r/GUI/GLCanvas3D.cpp:4347
msgid "Redo History"
msgstr ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:4382
+#: src/slic3r/GUI/GLCanvas3D.cpp:4368
#, possible-c-format
msgid "Undo %1$d Action"
msgid_plural "Undo %1$d Actions"
msgstr[0] ""
msgstr[1] ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:4382
+#: src/slic3r/GUI/GLCanvas3D.cpp:4368
#, possible-c-format
msgid "Redo %1$d Action"
msgid_plural "Redo %1$d Actions"
msgstr[0] ""
msgstr[1] ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:4402 src/slic3r/GUI/GLCanvas3D.cpp:4957
+#: src/slic3r/GUI/GLCanvas3D.cpp:4388 src/slic3r/GUI/GLCanvas3D.cpp:4943
#: src/slic3r/GUI/KBShortcutsDialog.cpp:130 src/slic3r/GUI/Search.cpp:426
msgid "Search"
msgstr ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:4416 src/slic3r/GUI/GLCanvas3D.cpp:4424
+#: src/slic3r/GUI/GLCanvas3D.cpp:4402 src/slic3r/GUI/GLCanvas3D.cpp:4410
#: src/slic3r/GUI/Search.cpp:433
-msgid "Type here to search"
+msgid "Enter a search term"
msgstr ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:4833
+#: src/slic3r/GUI/GLCanvas3D.cpp:4819
msgid "Add..."
msgstr ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:4841 src/slic3r/GUI/GUI_ObjectList.cpp:1846
-#: src/slic3r/GUI/Plater.cpp:3849 src/slic3r/GUI/Plater.cpp:3871
-#: src/slic3r/GUI/Tab.cpp:3423
+#: src/slic3r/GUI/GLCanvas3D.cpp:4827 src/slic3r/GUI/GUI_ObjectList.cpp:1846
+#: src/slic3r/GUI/Plater.cpp:3874 src/slic3r/GUI/Plater.cpp:3896
+#: src/slic3r/GUI/Tab.cpp:3449
msgid "Delete"
msgstr ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:4850 src/slic3r/GUI/KBShortcutsDialog.cpp:124
-#: src/slic3r/GUI/Plater.cpp:4774
+#: src/slic3r/GUI/GLCanvas3D.cpp:4836 src/slic3r/GUI/KBShortcutsDialog.cpp:124
+#: src/slic3r/GUI/Plater.cpp:4806
msgid "Delete all"
msgstr ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:4859 src/slic3r/GUI/KBShortcutsDialog.cpp:151
-#: src/slic3r/GUI/Plater.cpp:1549
+#: src/slic3r/GUI/GLCanvas3D.cpp:4845 src/slic3r/GUI/KBShortcutsDialog.cpp:151
+#: src/slic3r/GUI/Plater.cpp:1557
msgid "Arrange"
msgstr ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:4859 src/slic3r/GUI/KBShortcutsDialog.cpp:152
+#: src/slic3r/GUI/GLCanvas3D.cpp:4845 src/slic3r/GUI/KBShortcutsDialog.cpp:152
msgid "Arrange selection"
msgstr ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:4871
+#: src/slic3r/GUI/GLCanvas3D.cpp:4857
msgid "Copy"
msgstr ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:4880
+#: src/slic3r/GUI/GLCanvas3D.cpp:4866
msgid "Paste"
msgstr ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:4892 src/slic3r/GUI/Plater.cpp:3708
-#: src/slic3r/GUI/Plater.cpp:3720 src/slic3r/GUI/Plater.cpp:3858
+#: src/slic3r/GUI/GLCanvas3D.cpp:4878 src/slic3r/GUI/Plater.cpp:3733
+#: src/slic3r/GUI/Plater.cpp:3745 src/slic3r/GUI/Plater.cpp:3883
msgid "Add instance"
msgstr ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:4903 src/slic3r/GUI/Plater.cpp:3860
+#: src/slic3r/GUI/GLCanvas3D.cpp:4889 src/slic3r/GUI/Plater.cpp:3885
msgid "Remove instance"
msgstr ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:4916
+#: src/slic3r/GUI/GLCanvas3D.cpp:4902
msgid "Split to objects"
msgstr ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:4926 src/slic3r/GUI/GUI_ObjectList.cpp:1618
+#: src/slic3r/GUI/GLCanvas3D.cpp:4912 src/slic3r/GUI/GUI_ObjectList.cpp:1618
msgid "Split to parts"
msgstr ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:5028 src/slic3r/GUI/KBShortcutsDialog.cpp:125
-#: src/slic3r/GUI/MainFrame.cpp:1187
+#: src/slic3r/GUI/GLCanvas3D.cpp:5014 src/slic3r/GUI/KBShortcutsDialog.cpp:125
+#: src/slic3r/GUI/MainFrame.cpp:1195
msgid "Undo"
msgstr ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:5028 src/slic3r/GUI/GLCanvas3D.cpp:5067
+#: src/slic3r/GUI/GLCanvas3D.cpp:5014 src/slic3r/GUI/GLCanvas3D.cpp:5053
msgid "Click right mouse button to open/close History"
msgstr ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:5051
+#: src/slic3r/GUI/GLCanvas3D.cpp:5037
msgid "Next Undo action: %1%"
msgstr ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:5067 src/slic3r/GUI/KBShortcutsDialog.cpp:126
-#: src/slic3r/GUI/MainFrame.cpp:1190
+#: src/slic3r/GUI/GLCanvas3D.cpp:5053 src/slic3r/GUI/KBShortcutsDialog.cpp:126
+#: src/slic3r/GUI/MainFrame.cpp:1198
msgid "Redo"
msgstr ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:5089
+#: src/slic3r/GUI/GLCanvas3D.cpp:5075
msgid "Next Redo action: %1%"
msgstr ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:7193
+#: src/slic3r/GUI/GLCanvas3D.cpp:7178
msgid "Selection-Add from rectangle"
msgstr ""
-#: src/slic3r/GUI/GLCanvas3D.cpp:7212
+#: src/slic3r/GUI/GLCanvas3D.cpp:7197
msgid "Selection-Remove from rectangle"
msgstr ""
#: src/slic3r/GUI/Gizmos/GLGizmoCut.cpp:48
-#: src/slic3r/GUI/Gizmos/GLGizmoCut.cpp:146 src/libslic3r/PrintConfig.cpp:3601
+#: src/slic3r/GUI/Gizmos/GLGizmoCut.cpp:146 src/libslic3r/PrintConfig.cpp:3593
msgid "Cut"
msgstr ""
@@ -1934,7 +1944,7 @@ msgid "Perform cut"
msgstr ""
#: src/slic3r/GUI/Gizmos/GLGizmoFdmSupports.cpp:33
-msgid "FDM Support Editing"
+msgid "Paint-on supports"
msgstr ""
#: src/slic3r/GUI/Gizmos/GLGizmoFdmSupports.cpp:42
@@ -1953,12 +1963,12 @@ msgstr ""
#: src/slic3r/GUI/Gizmos/GLGizmoFdmSupports.cpp:44
#: src/slic3r/GUI/Gizmos/GLGizmoSeam.cpp:27
-msgid "Cursor size"
+msgid "Brush size"
msgstr ""
#: src/slic3r/GUI/Gizmos/GLGizmoFdmSupports.cpp:45
#: src/slic3r/GUI/Gizmos/GLGizmoSeam.cpp:28
-msgid "Cursor type"
+msgid "Brush shape"
msgstr ""
#: src/slic3r/GUI/Gizmos/GLGizmoFdmSupports.cpp:46
@@ -2041,27 +2051,23 @@ msgstr ""
msgid "Threshold:"
msgstr ""
-#: src/slic3r/GUI/Gizmos/GLGizmoFdmSupports.cpp:235
-msgid "deg"
-msgstr ""
-
-#: src/slic3r/GUI/Gizmos/GLGizmoFdmSupports.cpp:239
+#: src/slic3r/GUI/Gizmos/GLGizmoFdmSupports.cpp:242
msgid "Enforce"
msgstr ""
-#: src/slic3r/GUI/Gizmos/GLGizmoFdmSupports.cpp:242
+#: src/slic3r/GUI/Gizmos/GLGizmoFdmSupports.cpp:245
msgid "Block"
msgstr ""
-#: src/slic3r/GUI/Gizmos/GLGizmoFdmSupports.cpp:292
+#: src/slic3r/GUI/Gizmos/GLGizmoFdmSupports.cpp:295
msgid "Block supports by angle"
msgstr ""
-#: src/slic3r/GUI/Gizmos/GLGizmoFdmSupports.cpp:293
+#: src/slic3r/GUI/Gizmos/GLGizmoFdmSupports.cpp:296
msgid "Add supports by angle"
msgstr ""
-#: src/slic3r/GUI/Gizmos/GLGizmoFlatten.cpp:41
+#: src/slic3r/GUI/Gizmos/GLGizmoFlatten.cpp:40
msgid "Place on face"
msgstr ""
@@ -2082,7 +2088,7 @@ msgid "Quality"
msgstr ""
#: src/slic3r/GUI/Gizmos/GLGizmoHollow.cpp:44
-#: src/libslic3r/PrintConfig.cpp:3098
+#: src/libslic3r/PrintConfig.cpp:3089
msgid "Closing distance"
msgstr ""
@@ -2137,17 +2143,17 @@ msgstr ""
#: src/slic3r/GUI/Gizmos/GLGizmoRotate.cpp:210
#: src/slic3r/GUI/GUI_ObjectManipulation.cpp:224
#: src/slic3r/GUI/GUI_ObjectManipulation.cpp:506
-#: src/slic3r/GUI/Mouse3DController.cpp:288
-#: src/slic3r/GUI/Mouse3DController.cpp:309
+#: src/slic3r/GUI/Mouse3DController.cpp:298
+#: src/slic3r/GUI/Mouse3DController.cpp:319
msgid "Rotation"
msgstr ""
-#: src/slic3r/GUI/Gizmos/GLGizmoRotate.cpp:220 src/slic3r/GUI/Plater.cpp:3961
+#: src/slic3r/GUI/Gizmos/GLGizmoRotate.cpp:220 src/slic3r/GUI/Plater.cpp:3986
msgid "Optimize orientation"
msgstr ""
#: src/slic3r/GUI/Gizmos/GLGizmoRotate.cpp:221
-#: src/libslic3r/PrintConfig.cpp:3089
+#: src/libslic3r/PrintConfig.cpp:3080
msgid "Accuracy"
msgstr ""
@@ -2163,7 +2169,7 @@ msgstr ""
#: src/slic3r/GUI/GUI_ObjectManipulation.cpp:527
#: src/slic3r/GUI/GUI_ObjectManipulation.cpp:546
#: src/slic3r/GUI/GUI_ObjectManipulation.cpp:562
-#: src/libslic3r/PrintConfig.cpp:3650
+#: src/libslic3r/PrintConfig.cpp:3642
msgid "Rotate"
msgstr ""
@@ -2171,7 +2177,7 @@ msgstr ""
#: src/slic3r/GUI/GUI_ObjectManipulation.cpp:238
#: src/slic3r/GUI/GUI_ObjectManipulation.cpp:547
#: src/slic3r/GUI/GUI_ObjectManipulation.cpp:563
-#: src/libslic3r/PrintConfig.cpp:3665
+#: src/libslic3r/PrintConfig.cpp:3657
msgid "Scale"
msgstr ""
@@ -2186,7 +2192,7 @@ msgid "Block seam"
msgstr ""
#: src/slic3r/GUI/Gizmos/GLGizmoSeam.cpp:46
-msgid "Seam Editing"
+msgid "Seam painting"
msgstr ""
#: src/slic3r/GUI/Gizmos/GLGizmoSlaSupports.cpp:47
@@ -2221,7 +2227,7 @@ msgid "Minimal points distance"
msgstr ""
#: src/slic3r/GUI/Gizmos/GLGizmoSlaSupports.cpp:54
-#: src/libslic3r/PrintConfig.cpp:2928
+#: src/libslic3r/PrintConfig.cpp:2919
msgid "Support points density"
msgstr ""
@@ -2287,8 +2293,8 @@ msgid "Are you sure you want to do it?"
msgstr ""
#: src/slic3r/GUI/Gizmos/GLGizmoSlaSupports.cpp:1129 src/slic3r/GUI/GUI.cpp:256
-#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:478
-#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:502
+#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:533
+#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:557
#: src/slic3r/GUI/WipeTowerDialog.cpp:45 src/slic3r/GUI/WipeTowerDialog.cpp:366
msgid "Warning"
msgstr ""
@@ -2373,7 +2379,7 @@ msgstr ""
msgid "Gizmo-Scale"
msgstr ""
-#: src/slic3r/GUI/Gizmos/GLGizmosManager.cpp:639
+#: src/slic3r/GUI/Gizmos/GLGizmosManager.cpp:630
msgid "Gizmo-Place on Face"
msgstr ""
@@ -2382,11 +2388,11 @@ msgid "Supports gizmo turned on"
msgstr ""
#: src/slic3r/GUI/Gizmos/GLGizmoPainterBase.cpp:40
-msgid "Seam gizmo turned on"
+msgid "Paint-on seams on"
msgstr ""
#: src/slic3r/GUI/Gizmos/GLGizmoPainterBase.cpp:47
-msgid "Seam gizmo turned off"
+msgid "Paint-on seams off"
msgstr ""
#: src/slic3r/GUI/Gizmos/GLGizmoPainterBase.cpp:48
@@ -2411,7 +2417,39 @@ msgstr ""
msgid "Artwork model by Nora Al-Badri and Jan Nikolai Nelles"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:528
+#: src/slic3r/GUI/GUI_App.cpp:386
+msgid ""
+"Starting with %1% 2.3, configuration directory on Linux has changed "
+"(according to XDG Base Directory Specification) to \n"
+"%2%.\n"
+"\n"
+"This directory did not exist yet (maybe you run the new version for the "
+"first time).\n"
+"However, an old %1% configuration directory was detected in \n"
+"%3%.\n"
+"\n"
+"Consider moving the contents of the old directory to the new location in "
+"order to access your profiles, etc.\n"
+"Note that if you decide to downgrade %1% in future, it will use the old "
+"location again.\n"
+"\n"
+"What do you want to do now?"
+msgstr ""
+
+#: src/slic3r/GUI/GUI_App.cpp:394
+#, possible-c-format
+msgid "%s - BREAKING CHANGE"
+msgstr ""
+
+#: src/slic3r/GUI/GUI_App.cpp:396
+msgid "Quit, I will move my data now"
+msgstr ""
+
+#: src/slic3r/GUI/GUI_App.cpp:396
+msgid "Start the application"
+msgstr ""
+
+#: src/slic3r/GUI/GUI_App.cpp:585
#, possible-c-format
msgid ""
"%s has encountered an error. It was likely caused by running out of memory. "
@@ -2421,235 +2459,243 @@ msgid ""
"The application will now terminate."
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:531
+#: src/slic3r/GUI/GUI_App.cpp:588
msgid "Fatal error"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:655 src/slic3r/GUI/GUI_App.cpp:670
+#: src/slic3r/GUI/GUI_App.cpp:723
msgid ""
"Error parsing PrusaSlicer config file, it is probably corrupted. Try to "
"manually delete the file to recover from the error. Your user profiles will "
"not be affected."
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:661
+#: src/slic3r/GUI/GUI_App.cpp:730
msgid ""
"Error parsing PrusaGCodeViewer config file, it is probably corrupted. Try to "
"manually delete the file to recover from the error."
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:718
+#: src/slic3r/GUI/GUI_App.cpp:788
#, possible-c-format
msgid ""
"%s\n"
"Do you want to continue?"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:720 src/slic3r/GUI/UnsavedChangesDialog.cpp:653
+#: src/slic3r/GUI/GUI_App.cpp:790 src/slic3r/GUI/UnsavedChangesDialog.cpp:653
msgid "Remember my choice"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:759
+#: src/slic3r/GUI/GUI_App.cpp:829
msgid "Loading configuration..."
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:825
-msgid "Creating settings tabs..."
+#: src/slic3r/GUI/GUI_App.cpp:895
+msgid "Preparing settings tabs..."
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1078
+#: src/slic3r/GUI/GUI_App.cpp:1148
msgid ""
"You have the following presets with saved options for \"Print Host upload\""
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1082
+#: src/slic3r/GUI/GUI_App.cpp:1152
msgid ""
-"But from this version of PrusaSlicer we don't show/use this information in "
-"Printer Settings.\n"
-"Now, this information will be exposed in physical printers settings."
+"But since this version of PrusaSlicer we don't show this information in "
+"Printer Settings anymore.\n"
+"Settings will be available in physical printers settings."
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1084
+#: src/slic3r/GUI/GUI_App.cpp:1154
msgid ""
"By default new Printer devices will be named as \"Printer N\" during its "
"creation.\n"
"Note: This name can be changed later from the physical printers settings"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1087 src/slic3r/GUI/Tab.cpp:3435
+#: src/slic3r/GUI/GUI_App.cpp:1157
msgid "Information"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1102 src/slic3r/GUI/GUI_App.cpp:1115
+#: src/slic3r/GUI/GUI_App.cpp:1172 src/slic3r/GUI/GUI_App.cpp:1185
msgid "Recreating"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1120
+#: src/slic3r/GUI/GUI_App.cpp:1190
msgid "Loading of current presets"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1125
+#: src/slic3r/GUI/GUI_App.cpp:1195
msgid "Loading of a mode view"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1208
+#: src/slic3r/GUI/GUI_App.cpp:1278
msgid "Choose one file (3MF/AMF):"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1220
+#: src/slic3r/GUI/GUI_App.cpp:1290
msgid "Choose one or more files (STL/OBJ/AMF/3MF/PRUSA):"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1233
+#: src/slic3r/GUI/GUI_App.cpp:1303
msgid "Choose one file (GCODE/.GCO/.G/.ngc/NGC):"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1245
+#: src/slic3r/GUI/GUI_App.cpp:1315
msgid "Changing of an application language"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1295
+#: src/slic3r/GUI/GUI_App.cpp:1365
msgid "Select the language"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1295
+#: src/slic3r/GUI/GUI_App.cpp:1365
msgid "Language"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1425
+#: src/slic3r/GUI/GUI_App.cpp:1495
msgid "modified"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1474
+#: src/slic3r/GUI/GUI_App.cpp:1544
#, possible-c-format
msgid "Run %s"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1480
+#: src/slic3r/GUI/GUI_App.cpp:1550
msgid "&Configuration Snapshots"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1480
+#: src/slic3r/GUI/GUI_App.cpp:1550
msgid "Inspect / activate configuration snapshots"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1481
+#: src/slic3r/GUI/GUI_App.cpp:1551
msgid "Take Configuration &Snapshot"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1481
+#: src/slic3r/GUI/GUI_App.cpp:1551
msgid "Capture a configuration snapshot"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1482
+#: src/slic3r/GUI/GUI_App.cpp:1552
msgid "Check for updates"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1482
+#: src/slic3r/GUI/GUI_App.cpp:1552
msgid "Check for configuration updates"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1487
+#: src/slic3r/GUI/GUI_App.cpp:1557
msgid "&Preferences"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1493
+#: src/slic3r/GUI/GUI_App.cpp:1563
msgid "Application preferences"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1504 src/slic3r/GUI/wxExtensions.cpp:673
+#: src/slic3r/GUI/GUI_App.cpp:1574 src/slic3r/GUI/wxExtensions.cpp:673
msgid "Simple"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1504
+#: src/slic3r/GUI/GUI_App.cpp:1574
msgid "Simple View Mode"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1506 src/slic3r/GUI/wxExtensions.cpp:675
+#: src/slic3r/GUI/GUI_App.cpp:1576 src/slic3r/GUI/wxExtensions.cpp:675
msgctxt "Mode"
msgid "Advanced"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1506
+#: src/slic3r/GUI/GUI_App.cpp:1576
msgid "Advanced View Mode"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1507 src/slic3r/GUI/wxExtensions.cpp:676
+#: src/slic3r/GUI/GUI_App.cpp:1577 src/slic3r/GUI/wxExtensions.cpp:676
msgid "Expert"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1507
+#: src/slic3r/GUI/GUI_App.cpp:1577
msgid "Expert View Mode"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1512
+#: src/slic3r/GUI/GUI_App.cpp:1582
msgid "Mode"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1512
+#: src/slic3r/GUI/GUI_App.cpp:1582
#, possible-c-format
msgid "%s View Mode"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1517
+#: src/slic3r/GUI/GUI_App.cpp:1587
msgid "&Language"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1522
+#: src/slic3r/GUI/GUI_App.cpp:1592
msgid "Flash printer &firmware"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1522
+#: src/slic3r/GUI/GUI_App.cpp:1592
msgid "Upload a firmware image into an Arduino based printer"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1540
+#: src/slic3r/GUI/GUI_App.cpp:1610
msgid "Taking configuration snapshot"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1540
+#: src/slic3r/GUI/GUI_App.cpp:1610
msgid "Snapshot name"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1605 src/slic3r/GUI/GUI_App.cpp:1614
+#: src/slic3r/GUI/GUI_App.cpp:1675 src/slic3r/GUI/GUI_App.cpp:1684
msgid "Language selection"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1608
+#: src/slic3r/GUI/GUI_App.cpp:1678
msgid ""
"Switching the language will trigger application restart.\n"
"You will lose content of the plater."
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1610
+#: src/slic3r/GUI/GUI_App.cpp:1680
msgid "Do you want to proceed?"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1645
+#: src/slic3r/GUI/GUI_App.cpp:1715
msgid "&Configuration"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1676
+#: src/slic3r/GUI/GUI_App.cpp:1746
msgid "The preset(s) modifications are successfully saved"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1876 src/slic3r/GUI/Tab.cpp:3187
+#: src/slic3r/GUI/GUI_App.cpp:1946 src/slic3r/GUI/Tab.cpp:3207
msgid "It's impossible to print multi-part object(s) with SLA technology."
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1877
+#: src/slic3r/GUI/GUI_App.cpp:1947
msgid "Please check and fix your object list."
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1878 src/slic3r/GUI/Jobs/SLAImportJob.cpp:210
-#: src/slic3r/GUI/Plater.cpp:2256 src/slic3r/GUI/Tab.cpp:3189
+#: src/slic3r/GUI/GUI_App.cpp:1948 src/slic3r/GUI/Jobs/SLAImportJob.cpp:210
+#: src/slic3r/GUI/Plater.cpp:2271 src/slic3r/GUI/Tab.cpp:3209
msgid "Attention!"
msgstr ""
-#: src/slic3r/GUI/GUI_App.cpp:1895
+#: src/slic3r/GUI/GUI_App.cpp:1965
msgid "Select a gcode file:"
msgstr ""
+#: src/slic3r/GUI/GUI_Init.cpp:85 src/slic3r/GUI/GUI_Init.cpp:88
+msgid "PrusaSlicer GUI initialization failed"
+msgstr ""
+
+#: src/slic3r/GUI/GUI_Init.cpp:88
+msgid "Fatal error, exception catched: %1%"
+msgstr ""
+
#: src/slic3r/GUI/GUI_ObjectLayers.cpp:29
msgid "Start at height"
msgstr ""
@@ -2668,37 +2714,37 @@ msgstr ""
#: src/slic3r/GUI/GUI_ObjectList.cpp:34 src/slic3r/GUI/GUI_ObjectList.cpp:92
#: src/slic3r/GUI/GUI_ObjectList.cpp:651 src/libslic3r/PrintConfig.cpp:72
-#: src/libslic3r/PrintConfig.cpp:209 src/libslic3r/PrintConfig.cpp:218
-#: src/libslic3r/PrintConfig.cpp:442 src/libslic3r/PrintConfig.cpp:506
-#: src/libslic3r/PrintConfig.cpp:514 src/libslic3r/PrintConfig.cpp:932
-#: src/libslic3r/PrintConfig.cpp:1119 src/libslic3r/PrintConfig.cpp:1482
-#: src/libslic3r/PrintConfig.cpp:1549 src/libslic3r/PrintConfig.cpp:1730
-#: src/libslic3r/PrintConfig.cpp:2217 src/libslic3r/PrintConfig.cpp:2276
-#: src/libslic3r/PrintConfig.cpp:2285
+#: src/libslic3r/PrintConfig.cpp:216 src/libslic3r/PrintConfig.cpp:225
+#: src/libslic3r/PrintConfig.cpp:449 src/libslic3r/PrintConfig.cpp:513
+#: src/libslic3r/PrintConfig.cpp:521 src/libslic3r/PrintConfig.cpp:939
+#: src/libslic3r/PrintConfig.cpp:1128 src/libslic3r/PrintConfig.cpp:1493
+#: src/libslic3r/PrintConfig.cpp:1560 src/libslic3r/PrintConfig.cpp:1741
+#: src/libslic3r/PrintConfig.cpp:2208 src/libslic3r/PrintConfig.cpp:2267
+#: src/libslic3r/PrintConfig.cpp:2276
msgid "Layers and Perimeters"
msgstr ""
#: src/slic3r/GUI/GUI_ObjectList.cpp:36 src/slic3r/GUI/GUI_ObjectList.cpp:95
-#: src/slic3r/GUI/GUI_ObjectList.cpp:654 src/slic3r/GUI/GUI_Preview.cpp:311
-#: src/slic3r/GUI/Tab.cpp:1449 src/slic3r/GUI/Tab.cpp:1450
+#: src/slic3r/GUI/GUI_ObjectList.cpp:654 src/slic3r/GUI/GUI_Preview.cpp:309
+#: src/slic3r/GUI/Tab.cpp:1458 src/slic3r/GUI/Tab.cpp:1460
#: src/libslic3r/ExtrusionEntity.cpp:324 src/libslic3r/ExtrusionEntity.cpp:356
-#: src/libslic3r/PrintConfig.cpp:404 src/libslic3r/PrintConfig.cpp:1610
-#: src/libslic3r/PrintConfig.cpp:2008 src/libslic3r/PrintConfig.cpp:2014
-#: src/libslic3r/PrintConfig.cpp:2022 src/libslic3r/PrintConfig.cpp:2034
-#: src/libslic3r/PrintConfig.cpp:2044 src/libslic3r/PrintConfig.cpp:2052
-#: src/libslic3r/PrintConfig.cpp:2067 src/libslic3r/PrintConfig.cpp:2088
-#: src/libslic3r/PrintConfig.cpp:2100 src/libslic3r/PrintConfig.cpp:2116
-#: src/libslic3r/PrintConfig.cpp:2125 src/libslic3r/PrintConfig.cpp:2134
-#: src/libslic3r/PrintConfig.cpp:2145 src/libslic3r/PrintConfig.cpp:2159
-#: src/libslic3r/PrintConfig.cpp:2167 src/libslic3r/PrintConfig.cpp:2168
-#: src/libslic3r/PrintConfig.cpp:2177 src/libslic3r/PrintConfig.cpp:2185
-#: src/libslic3r/PrintConfig.cpp:2199
+#: src/libslic3r/PrintConfig.cpp:411 src/libslic3r/PrintConfig.cpp:1621
+#: src/libslic3r/PrintConfig.cpp:1999 src/libslic3r/PrintConfig.cpp:2005
+#: src/libslic3r/PrintConfig.cpp:2013 src/libslic3r/PrintConfig.cpp:2025
+#: src/libslic3r/PrintConfig.cpp:2035 src/libslic3r/PrintConfig.cpp:2043
+#: src/libslic3r/PrintConfig.cpp:2058 src/libslic3r/PrintConfig.cpp:2079
+#: src/libslic3r/PrintConfig.cpp:2091 src/libslic3r/PrintConfig.cpp:2107
+#: src/libslic3r/PrintConfig.cpp:2116 src/libslic3r/PrintConfig.cpp:2125
+#: src/libslic3r/PrintConfig.cpp:2136 src/libslic3r/PrintConfig.cpp:2150
+#: src/libslic3r/PrintConfig.cpp:2158 src/libslic3r/PrintConfig.cpp:2159
+#: src/libslic3r/PrintConfig.cpp:2168 src/libslic3r/PrintConfig.cpp:2176
+#: src/libslic3r/PrintConfig.cpp:2190
msgid "Support material"
msgstr ""
#: src/slic3r/GUI/GUI_ObjectList.cpp:39 src/slic3r/GUI/GUI_ObjectList.cpp:99
-#: src/slic3r/GUI/GUI_ObjectList.cpp:658 src/libslic3r/PrintConfig.cpp:2395
-#: src/libslic3r/PrintConfig.cpp:2403
+#: src/slic3r/GUI/GUI_ObjectList.cpp:658 src/libslic3r/PrintConfig.cpp:2386
+#: src/libslic3r/PrintConfig.cpp:2394
msgid "Wipe options"
msgstr ""
@@ -2723,82 +2769,83 @@ msgid "Add support blocker"
msgstr ""
#: src/slic3r/GUI/GUI_ObjectList.cpp:94 src/slic3r/GUI/GUI_ObjectList.cpp:653
-#: src/slic3r/GUI/GUI_Preview.cpp:307 src/slic3r/GUI/Tab.cpp:1420
+#: src/slic3r/GUI/GUI_Preview.cpp:305 src/slic3r/GUI/Tab.cpp:1428
#: src/libslic3r/ExtrusionEntity.cpp:320 src/libslic3r/ExtrusionEntity.cpp:348
-#: src/libslic3r/PrintConfig.cpp:1126 src/libslic3r/PrintConfig.cpp:1132
-#: src/libslic3r/PrintConfig.cpp:1146 src/libslic3r/PrintConfig.cpp:1156
+#: src/libslic3r/PrintConfig.cpp:1135 src/libslic3r/PrintConfig.cpp:1141
+#: src/libslic3r/PrintConfig.cpp:1155 src/libslic3r/PrintConfig.cpp:1165
+#: src/libslic3r/PrintConfig.cpp:1173 src/libslic3r/PrintConfig.cpp:1175
msgid "Ironing"
msgstr ""
#: src/slic3r/GUI/GUI_ObjectList.cpp:96 src/slic3r/GUI/GUI_ObjectList.cpp:655
-#: src/slic3r/GUI/GUI_Preview.cpp:278 src/slic3r/GUI/Tab.cpp:1474
-#: src/libslic3r/PrintConfig.cpp:269 src/libslic3r/PrintConfig.cpp:494
-#: src/libslic3r/PrintConfig.cpp:963 src/libslic3r/PrintConfig.cpp:1092
-#: src/libslic3r/PrintConfig.cpp:1165 src/libslic3r/PrintConfig.cpp:1539
-#: src/libslic3r/PrintConfig.cpp:1776 src/libslic3r/PrintConfig.cpp:1831
-#: src/libslic3r/PrintConfig.cpp:1883 src/libslic3r/PrintConfig.cpp:2261
+#: src/slic3r/GUI/GUI_Preview.cpp:276 src/slic3r/GUI/Tab.cpp:1484
+#: src/libslic3r/PrintConfig.cpp:276 src/libslic3r/PrintConfig.cpp:501
+#: src/libslic3r/PrintConfig.cpp:970 src/libslic3r/PrintConfig.cpp:1101
+#: src/libslic3r/PrintConfig.cpp:1174 src/libslic3r/PrintConfig.cpp:1550
+#: src/libslic3r/PrintConfig.cpp:1822 src/libslic3r/PrintConfig.cpp:1874
+#: src/libslic3r/PrintConfig.cpp:2252
msgid "Speed"
msgstr ""
#: src/slic3r/GUI/GUI_ObjectList.cpp:97 src/slic3r/GUI/GUI_ObjectList.cpp:656
-#: src/slic3r/GUI/Tab.cpp:1510 src/slic3r/GUI/Tab.cpp:2072
-#: src/libslic3r/PrintConfig.cpp:524 src/libslic3r/PrintConfig.cpp:1046
-#: src/libslic3r/PrintConfig.cpp:1517 src/libslic3r/PrintConfig.cpp:1852
-#: src/libslic3r/PrintConfig.cpp:2080 src/libslic3r/PrintConfig.cpp:2107
+#: src/slic3r/GUI/Tab.cpp:1520 src/slic3r/GUI/Tab.cpp:2085
+#: src/libslic3r/PrintConfig.cpp:531 src/libslic3r/PrintConfig.cpp:1055
+#: src/libslic3r/PrintConfig.cpp:1528 src/libslic3r/PrintConfig.cpp:1843
+#: src/libslic3r/PrintConfig.cpp:2071 src/libslic3r/PrintConfig.cpp:2098
msgid "Extruders"
msgstr ""
#: src/slic3r/GUI/GUI_ObjectList.cpp:98 src/slic3r/GUI/GUI_ObjectList.cpp:657
-#: src/libslic3r/PrintConfig.cpp:483 src/libslic3r/PrintConfig.cpp:591
-#: src/libslic3r/PrintConfig.cpp:919 src/libslic3r/PrintConfig.cpp:1054
-#: src/libslic3r/PrintConfig.cpp:1526 src/libslic3r/PrintConfig.cpp:1872
-#: src/libslic3r/PrintConfig.cpp:2089 src/libslic3r/PrintConfig.cpp:2249
+#: src/libslic3r/PrintConfig.cpp:490 src/libslic3r/PrintConfig.cpp:598
+#: src/libslic3r/PrintConfig.cpp:926 src/libslic3r/PrintConfig.cpp:1063
+#: src/libslic3r/PrintConfig.cpp:1537 src/libslic3r/PrintConfig.cpp:1863
+#: src/libslic3r/PrintConfig.cpp:2080 src/libslic3r/PrintConfig.cpp:2240
msgid "Extrusion Width"
msgstr ""
#: src/slic3r/GUI/GUI_ObjectList.cpp:102 src/slic3r/GUI/GUI_ObjectList.cpp:661
-#: src/slic3r/GUI/Tab.cpp:1409 src/slic3r/GUI/Tab.cpp:1430
-#: src/slic3r/GUI/Tab.cpp:1531 src/slic3r/GUI/Tab.cpp:1534
-#: src/slic3r/GUI/Tab.cpp:1816 src/slic3r/GUI/Tab.cpp:2152
-#: src/slic3r/GUI/Tab.cpp:4080 src/libslic3r/PrintConfig.cpp:90
-#: src/libslic3r/PrintConfig.cpp:121 src/libslic3r/PrintConfig.cpp:257
-#: src/libslic3r/PrintConfig.cpp:1081 src/libslic3r/PrintConfig.cpp:2419
-#: src/libslic3r/PrintConfig.cpp:2591
+#: src/slic3r/GUI/Tab.cpp:1416 src/slic3r/GUI/Tab.cpp:1438
+#: src/slic3r/GUI/Tab.cpp:1541 src/slic3r/GUI/Tab.cpp:1544
+#: src/slic3r/GUI/Tab.cpp:1828 src/slic3r/GUI/Tab.cpp:2165
+#: src/slic3r/GUI/Tab.cpp:4079 src/libslic3r/PrintConfig.cpp:90
+#: src/libslic3r/PrintConfig.cpp:128 src/libslic3r/PrintConfig.cpp:264
+#: src/libslic3r/PrintConfig.cpp:1090 src/libslic3r/PrintConfig.cpp:2410
+#: src/libslic3r/PrintConfig.cpp:2582
msgid "Advanced"
msgstr ""
#: src/slic3r/GUI/GUI_ObjectList.cpp:104 src/slic3r/GUI/GUI_ObjectList.cpp:663
-#: src/slic3r/GUI/Plater.cpp:361 src/slic3r/GUI/Tab.cpp:4014
-#: src/slic3r/GUI/Tab.cpp:4015 src/libslic3r/PrintConfig.cpp:2757
-#: src/libslic3r/PrintConfig.cpp:2764 src/libslic3r/PrintConfig.cpp:2773
-#: src/libslic3r/PrintConfig.cpp:2782 src/libslic3r/PrintConfig.cpp:2792
-#: src/libslic3r/PrintConfig.cpp:2802 src/libslic3r/PrintConfig.cpp:2839
-#: src/libslic3r/PrintConfig.cpp:2846 src/libslic3r/PrintConfig.cpp:2857
-#: src/libslic3r/PrintConfig.cpp:2867 src/libslic3r/PrintConfig.cpp:2876
-#: src/libslic3r/PrintConfig.cpp:2889 src/libslic3r/PrintConfig.cpp:2899
-#: src/libslic3r/PrintConfig.cpp:2908 src/libslic3r/PrintConfig.cpp:2918
-#: src/libslic3r/PrintConfig.cpp:2929 src/libslic3r/PrintConfig.cpp:2937
+#: src/slic3r/GUI/Plater.cpp:361 src/slic3r/GUI/Tab.cpp:4013
+#: src/slic3r/GUI/Tab.cpp:4014 src/libslic3r/PrintConfig.cpp:2748
+#: src/libslic3r/PrintConfig.cpp:2755 src/libslic3r/PrintConfig.cpp:2764
+#: src/libslic3r/PrintConfig.cpp:2773 src/libslic3r/PrintConfig.cpp:2783
+#: src/libslic3r/PrintConfig.cpp:2793 src/libslic3r/PrintConfig.cpp:2830
+#: src/libslic3r/PrintConfig.cpp:2837 src/libslic3r/PrintConfig.cpp:2848
+#: src/libslic3r/PrintConfig.cpp:2858 src/libslic3r/PrintConfig.cpp:2867
+#: src/libslic3r/PrintConfig.cpp:2880 src/libslic3r/PrintConfig.cpp:2890
+#: src/libslic3r/PrintConfig.cpp:2899 src/libslic3r/PrintConfig.cpp:2909
+#: src/libslic3r/PrintConfig.cpp:2920 src/libslic3r/PrintConfig.cpp:2928
msgid "Supports"
msgstr ""
#: src/slic3r/GUI/GUI_ObjectList.cpp:105 src/slic3r/GUI/GUI_ObjectList.cpp:664
-#: src/slic3r/GUI/Plater.cpp:501 src/slic3r/GUI/Tab.cpp:4055
-#: src/slic3r/GUI/Tab.cpp:4056 src/slic3r/GUI/Tab.cpp:4127
-#: src/libslic3r/PrintConfig.cpp:2945 src/libslic3r/PrintConfig.cpp:2952
-#: src/libslic3r/PrintConfig.cpp:2966 src/libslic3r/PrintConfig.cpp:2977
-#: src/libslic3r/PrintConfig.cpp:2987 src/libslic3r/PrintConfig.cpp:3009
-#: src/libslic3r/PrintConfig.cpp:3020 src/libslic3r/PrintConfig.cpp:3027
-#: src/libslic3r/PrintConfig.cpp:3034 src/libslic3r/PrintConfig.cpp:3045
-#: src/libslic3r/PrintConfig.cpp:3054 src/libslic3r/PrintConfig.cpp:3063
+#: src/slic3r/GUI/Plater.cpp:501 src/slic3r/GUI/Tab.cpp:4054
+#: src/slic3r/GUI/Tab.cpp:4055 src/slic3r/GUI/Tab.cpp:4126
+#: src/libslic3r/PrintConfig.cpp:2936 src/libslic3r/PrintConfig.cpp:2943
+#: src/libslic3r/PrintConfig.cpp:2957 src/libslic3r/PrintConfig.cpp:2968
+#: src/libslic3r/PrintConfig.cpp:2978 src/libslic3r/PrintConfig.cpp:3000
+#: src/libslic3r/PrintConfig.cpp:3011 src/libslic3r/PrintConfig.cpp:3018
+#: src/libslic3r/PrintConfig.cpp:3025 src/libslic3r/PrintConfig.cpp:3036
+#: src/libslic3r/PrintConfig.cpp:3045 src/libslic3r/PrintConfig.cpp:3054
msgid "Pad"
msgstr ""
-#: src/slic3r/GUI/GUI_ObjectList.cpp:106 src/slic3r/GUI/Tab.cpp:4073
-#: src/slic3r/GUI/Tab.cpp:4074 src/libslic3r/SLA/Hollowing.cpp:45
+#: src/slic3r/GUI/GUI_ObjectList.cpp:106 src/slic3r/GUI/Tab.cpp:4072
+#: src/slic3r/GUI/Tab.cpp:4073 src/libslic3r/SLA/Hollowing.cpp:45
#: src/libslic3r/SLA/Hollowing.cpp:57 src/libslic3r/SLA/Hollowing.cpp:66
-#: src/libslic3r/SLA/Hollowing.cpp:75 src/libslic3r/PrintConfig.cpp:3073
-#: src/libslic3r/PrintConfig.cpp:3080 src/libslic3r/PrintConfig.cpp:3090
-#: src/libslic3r/PrintConfig.cpp:3099
+#: src/libslic3r/SLA/Hollowing.cpp:75 src/libslic3r/PrintConfig.cpp:3064
+#: src/libslic3r/PrintConfig.cpp:3071 src/libslic3r/PrintConfig.cpp:3081
+#: src/libslic3r/PrintConfig.cpp:3090
msgid "Hollowing"
msgstr ""
@@ -2972,12 +3019,12 @@ msgstr ""
msgid "Fix through the Netfabb"
msgstr ""
-#: src/slic3r/GUI/GUI_ObjectList.cpp:1786 src/slic3r/GUI/Plater.cpp:3884
+#: src/slic3r/GUI/GUI_ObjectList.cpp:1786 src/slic3r/GUI/Plater.cpp:3909
msgid "Export as STL"
msgstr ""
#: src/slic3r/GUI/GUI_ObjectList.cpp:1793
-#: src/slic3r/GUI/GUI_ObjectList.cpp:4439 src/slic3r/GUI/Plater.cpp:3852
+#: src/slic3r/GUI/GUI_ObjectList.cpp:4439 src/slic3r/GUI/Plater.cpp:3877
msgid "Reload the selected volumes from disk"
msgstr ""
@@ -2985,7 +3032,7 @@ msgstr ""
msgid "Set extruder for selected items"
msgstr ""
-#: src/slic3r/GUI/GUI_ObjectList.cpp:1832 src/libslic3r/PrintConfig.cpp:369
+#: src/slic3r/GUI/GUI_ObjectList.cpp:1832 src/libslic3r/PrintConfig.cpp:376
msgid "Default"
msgstr ""
@@ -2997,17 +3044,17 @@ msgstr ""
msgid "Scale the selected object to fit the print volume"
msgstr ""
-#: src/slic3r/GUI/GUI_ObjectList.cpp:1858 src/slic3r/GUI/Plater.cpp:4886
+#: src/slic3r/GUI/GUI_ObjectList.cpp:1858 src/slic3r/GUI/Plater.cpp:4918
msgid "Convert from imperial units"
msgstr ""
-#: src/slic3r/GUI/GUI_ObjectList.cpp:1861 src/slic3r/GUI/Plater.cpp:4886
+#: src/slic3r/GUI/GUI_ObjectList.cpp:1861 src/slic3r/GUI/Plater.cpp:4918
msgid "Revert conversion from imperial units"
msgstr ""
#: src/slic3r/GUI/GUI_ObjectList.cpp:1868
#: src/slic3r/GUI/GUI_ObjectList.cpp:1876
-#: src/slic3r/GUI/GUI_ObjectList.cpp:2569 src/libslic3r/PrintConfig.cpp:3641
+#: src/slic3r/GUI/GUI_ObjectList.cpp:2569 src/libslic3r/PrintConfig.cpp:3633
msgid "Merge"
msgstr ""
@@ -3069,7 +3116,7 @@ msgstr ""
msgid "Delete Instance"
msgstr ""
-#: src/slic3r/GUI/GUI_ObjectList.cpp:2436 src/slic3r/GUI/Plater.cpp:2771
+#: src/slic3r/GUI/GUI_ObjectList.cpp:2436 src/slic3r/GUI/Plater.cpp:2786
msgid ""
"The selected object couldn't be split because it contains only one part."
msgstr ""
@@ -3243,14 +3290,14 @@ msgstr ""
#: src/slic3r/GUI/GUI_ObjectList.cpp:4282
#: src/slic3r/GUI/GUI_ObjectList.cpp:4409
-#: src/slic3r/GUI/SavePresetDialog.cpp:116
-#: src/slic3r/GUI/SavePresetDialog.cpp:124
+#: src/slic3r/GUI/SavePresetDialog.cpp:101
+#: src/slic3r/GUI/SavePresetDialog.cpp:109
msgid "The supplied name is not valid;"
msgstr ""
#: src/slic3r/GUI/GUI_ObjectList.cpp:4283
#: src/slic3r/GUI/GUI_ObjectList.cpp:4410
-#: src/slic3r/GUI/SavePresetDialog.cpp:117
+#: src/slic3r/GUI/SavePresetDialog.cpp:102
msgid "the following characters are not allowed:"
msgstr ""
@@ -3266,11 +3313,11 @@ msgstr ""
msgid "Change Extruders"
msgstr ""
-#: src/slic3r/GUI/GUI_ObjectList.cpp:4581 src/slic3r/GUI/Selection.cpp:1513
+#: src/slic3r/GUI/GUI_ObjectList.cpp:4581 src/slic3r/GUI/Selection.cpp:1531
msgid "Set Printable"
msgstr ""
-#: src/slic3r/GUI/GUI_ObjectList.cpp:4581 src/slic3r/GUI/Selection.cpp:1513
+#: src/slic3r/GUI/GUI_ObjectList.cpp:4581 src/slic3r/GUI/Selection.cpp:1531
msgid "Set Unprintable"
msgstr ""
@@ -3389,97 +3436,97 @@ msgstr ""
msgid "Change Option %s"
msgstr ""
-#: src/slic3r/GUI/GUI_Preview.cpp:265 src/slic3r/GUI/GUI_Preview.cpp:271
+#: src/slic3r/GUI/GUI_Preview.cpp:263 src/slic3r/GUI/GUI_Preview.cpp:269
msgid "View"
msgstr ""
-#: src/slic3r/GUI/GUI_Preview.cpp:276 src/libslic3r/PrintConfig.cpp:536
+#: src/slic3r/GUI/GUI_Preview.cpp:274 src/libslic3r/PrintConfig.cpp:543
msgid "Height"
msgstr ""
-#: src/slic3r/GUI/GUI_Preview.cpp:277 src/libslic3r/PrintConfig.cpp:2381
+#: src/slic3r/GUI/GUI_Preview.cpp:275 src/libslic3r/PrintConfig.cpp:2372
msgid "Width"
msgstr ""
-#: src/slic3r/GUI/GUI_Preview.cpp:279 src/slic3r/GUI/Tab.cpp:1803
+#: src/slic3r/GUI/GUI_Preview.cpp:277 src/slic3r/GUI/Tab.cpp:1814
msgid "Fan speed"
msgstr ""
-#: src/slic3r/GUI/GUI_Preview.cpp:280
+#: src/slic3r/GUI/GUI_Preview.cpp:278
msgid "Volumetric flow rate"
msgstr ""
-#: src/slic3r/GUI/GUI_Preview.cpp:286 src/slic3r/GUI/GUI_Preview.cpp:288
+#: src/slic3r/GUI/GUI_Preview.cpp:284 src/slic3r/GUI/GUI_Preview.cpp:286
msgid "Show"
msgstr ""
-#: src/slic3r/GUI/GUI_Preview.cpp:293 src/slic3r/GUI/GUI_Preview.cpp:295
-#: src/slic3r/GUI/GUI_Preview.cpp:316
+#: src/slic3r/GUI/GUI_Preview.cpp:291 src/slic3r/GUI/GUI_Preview.cpp:293
+#: src/slic3r/GUI/GUI_Preview.cpp:314
msgid "Feature types"
msgstr ""
-#: src/slic3r/GUI/GUI_Preview.cpp:301 src/libslic3r/ExtrusionEntity.cpp:314
+#: src/slic3r/GUI/GUI_Preview.cpp:299 src/libslic3r/ExtrusionEntity.cpp:314
#: src/libslic3r/ExtrusionEntity.cpp:336
msgid "Perimeter"
msgstr ""
-#: src/slic3r/GUI/GUI_Preview.cpp:302 src/libslic3r/ExtrusionEntity.cpp:315
+#: src/slic3r/GUI/GUI_Preview.cpp:300 src/libslic3r/ExtrusionEntity.cpp:315
#: src/libslic3r/ExtrusionEntity.cpp:338
msgid "External perimeter"
msgstr ""
-#: src/slic3r/GUI/GUI_Preview.cpp:303 src/libslic3r/ExtrusionEntity.cpp:316
+#: src/slic3r/GUI/GUI_Preview.cpp:301 src/libslic3r/ExtrusionEntity.cpp:316
#: src/libslic3r/ExtrusionEntity.cpp:340
msgid "Overhang perimeter"
msgstr ""
-#: src/slic3r/GUI/GUI_Preview.cpp:304 src/libslic3r/ExtrusionEntity.cpp:317
+#: src/slic3r/GUI/GUI_Preview.cpp:302 src/libslic3r/ExtrusionEntity.cpp:317
#: src/libslic3r/ExtrusionEntity.cpp:342
msgid "Internal infill"
msgstr ""
-#: src/slic3r/GUI/GUI_Preview.cpp:305 src/libslic3r/ExtrusionEntity.cpp:318
-#: src/libslic3r/ExtrusionEntity.cpp:344 src/libslic3r/PrintConfig.cpp:1871
-#: src/libslic3r/PrintConfig.cpp:1882
+#: src/slic3r/GUI/GUI_Preview.cpp:303 src/libslic3r/ExtrusionEntity.cpp:318
+#: src/libslic3r/ExtrusionEntity.cpp:344 src/libslic3r/PrintConfig.cpp:1862
+#: src/libslic3r/PrintConfig.cpp:1873
msgid "Solid infill"
msgstr ""
-#: src/slic3r/GUI/GUI_Preview.cpp:306 src/libslic3r/ExtrusionEntity.cpp:319
-#: src/libslic3r/ExtrusionEntity.cpp:346 src/libslic3r/PrintConfig.cpp:2248
-#: src/libslic3r/PrintConfig.cpp:2260
+#: src/slic3r/GUI/GUI_Preview.cpp:304 src/libslic3r/ExtrusionEntity.cpp:319
+#: src/libslic3r/ExtrusionEntity.cpp:346 src/libslic3r/PrintConfig.cpp:2239
+#: src/libslic3r/PrintConfig.cpp:2251
msgid "Top solid infill"
msgstr ""
-#: src/slic3r/GUI/GUI_Preview.cpp:308 src/libslic3r/ExtrusionEntity.cpp:321
+#: src/slic3r/GUI/GUI_Preview.cpp:306 src/libslic3r/ExtrusionEntity.cpp:321
#: src/libslic3r/ExtrusionEntity.cpp:350
msgid "Bridge infill"
msgstr ""
-#: src/slic3r/GUI/GUI_Preview.cpp:309 src/libslic3r/ExtrusionEntity.cpp:322
-#: src/libslic3r/ExtrusionEntity.cpp:352 src/libslic3r/PrintConfig.cpp:962
+#: src/slic3r/GUI/GUI_Preview.cpp:307 src/libslic3r/ExtrusionEntity.cpp:322
+#: src/libslic3r/ExtrusionEntity.cpp:352 src/libslic3r/PrintConfig.cpp:969
msgid "Gap fill"
msgstr ""
-#: src/slic3r/GUI/GUI_Preview.cpp:310 src/slic3r/GUI/Tab.cpp:1439
+#: src/slic3r/GUI/GUI_Preview.cpp:308 src/slic3r/GUI/Tab.cpp:1448
#: src/libslic3r/ExtrusionEntity.cpp:323 src/libslic3r/ExtrusionEntity.cpp:354
msgid "Skirt"
msgstr ""
-#: src/slic3r/GUI/GUI_Preview.cpp:312 src/libslic3r/ExtrusionEntity.cpp:325
-#: src/libslic3r/ExtrusionEntity.cpp:358 src/libslic3r/PrintConfig.cpp:2133
+#: src/slic3r/GUI/GUI_Preview.cpp:310 src/libslic3r/ExtrusionEntity.cpp:325
+#: src/libslic3r/ExtrusionEntity.cpp:358 src/libslic3r/PrintConfig.cpp:2124
msgid "Support material interface"
msgstr ""
-#: src/slic3r/GUI/GUI_Preview.cpp:313 src/slic3r/GUI/Tab.cpp:1521
+#: src/slic3r/GUI/GUI_Preview.cpp:311 src/slic3r/GUI/Tab.cpp:1531
#: src/libslic3r/ExtrusionEntity.cpp:326 src/libslic3r/ExtrusionEntity.cpp:360
msgid "Wipe tower"
msgstr ""
-#: src/slic3r/GUI/GUI_Preview.cpp:338 src/slic3r/GUI/GUI_Preview.cpp:1478
+#: src/slic3r/GUI/GUI_Preview.cpp:336 src/slic3r/GUI/GUI_Preview.cpp:1478
msgid "Shells"
msgstr ""
-#: src/slic3r/GUI/GUI_Preview.cpp:339
+#: src/slic3r/GUI/GUI_Preview.cpp:337
msgid "Legend"
msgstr ""
@@ -3491,15 +3538,15 @@ msgstr ""
msgid "Legend/Estimated printing time"
msgstr ""
-#: src/slic3r/GUI/ImGuiWrapper.cpp:800 src/slic3r/GUI/Search.cpp:464
+#: src/slic3r/GUI/ImGuiWrapper.cpp:802 src/slic3r/GUI/Search.cpp:464
msgid "Use for search"
msgstr ""
-#: src/slic3r/GUI/ImGuiWrapper.cpp:801 src/slic3r/GUI/Search.cpp:458
+#: src/slic3r/GUI/ImGuiWrapper.cpp:803 src/slic3r/GUI/Search.cpp:458
msgid "Category"
msgstr ""
-#: src/slic3r/GUI/ImGuiWrapper.cpp:803 src/slic3r/GUI/Search.cpp:460
+#: src/slic3r/GUI/ImGuiWrapper.cpp:805 src/slic3r/GUI/Search.cpp:460
msgid "Search in English"
msgstr ""
@@ -3519,7 +3566,7 @@ msgstr ""
msgid "Arranging done."
msgstr ""
-#: src/slic3r/GUI/Jobs/Job.cpp:74
+#: src/slic3r/GUI/Jobs/Job.cpp:75
msgid "ERROR: not enough resources to execute a new job."
msgstr ""
@@ -3583,18 +3630,18 @@ msgstr ""
msgid "Importing done."
msgstr ""
-#: src/slic3r/GUI/Jobs/SLAImportJob.cpp:208 src/slic3r/GUI/Plater.cpp:2254
+#: src/slic3r/GUI/Jobs/SLAImportJob.cpp:208 src/slic3r/GUI/Plater.cpp:2269
msgid "You cannot load SLA project with a multi-part object on the bed"
msgstr ""
-#: src/slic3r/GUI/Jobs/SLAImportJob.cpp:209 src/slic3r/GUI/Plater.cpp:2255
-#: src/slic3r/GUI/Tab.cpp:3188
+#: src/slic3r/GUI/Jobs/SLAImportJob.cpp:209 src/slic3r/GUI/Plater.cpp:2270
+#: src/slic3r/GUI/Tab.cpp:3208
msgid "Please check your object list before preset changing."
msgstr ""
#: src/slic3r/GUI/KBShortcutsDialog.cpp:37
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:39 src/slic3r/GUI/MainFrame.cpp:941
-#: src/slic3r/GUI/MainFrame.cpp:1332
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:39 src/slic3r/GUI/MainFrame.cpp:949
+#: src/slic3r/GUI/MainFrame.cpp:1340
msgid "Keyboard Shortcuts"
msgstr ""
@@ -3630,12 +3677,12 @@ msgstr ""
msgid "Load Config from ini/amf/3mf/gcode and merge"
msgstr ""
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:115 src/slic3r/GUI/Plater.cpp:766
-#: src/slic3r/GUI/Plater.cpp:5706 src/libslic3r/PrintConfig.cpp:3546
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:115 src/slic3r/GUI/Plater.cpp:767
+#: src/slic3r/GUI/Plater.cpp:5755 src/libslic3r/PrintConfig.cpp:3538
msgid "Export G-code"
msgstr ""
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:116 src/slic3r/GUI/Plater.cpp:5707
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:116 src/slic3r/GUI/Plater.cpp:5756
msgid "Send G-code"
msgstr ""
@@ -3643,7 +3690,7 @@ msgstr ""
msgid "Export config"
msgstr ""
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:118 src/slic3r/GUI/Plater.cpp:755
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:118
msgid "Export to SD card / Flash drive"
msgstr ""
@@ -3700,7 +3747,7 @@ msgid "Switch to Preview"
msgstr ""
#: src/slic3r/GUI/KBShortcutsDialog.cpp:138
-#: src/slic3r/GUI/PrintHostDialogs.cpp:136
+#: src/slic3r/GUI/PrintHostDialogs.cpp:163
msgid "Print host upload queue"
msgstr ""
@@ -3747,8 +3794,8 @@ msgid "Press to activate deselection rectangle"
msgstr ""
#: src/slic3r/GUI/KBShortcutsDialog.cpp:158
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:205
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:215
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:212
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:222
msgid "Arrow Up"
msgstr ""
@@ -3757,8 +3804,8 @@ msgid "Move selection 10 mm in positive Y direction"
msgstr ""
#: src/slic3r/GUI/KBShortcutsDialog.cpp:159
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:206
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:216
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:213
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:223
msgid "Arrow Down"
msgstr ""
@@ -3767,8 +3814,8 @@ msgid "Move selection 10 mm in negative Y direction"
msgstr ""
#: src/slic3r/GUI/KBShortcutsDialog.cpp:160
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:217
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:229
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:224
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:236
msgid "Arrow Left"
msgstr ""
@@ -3777,8 +3824,8 @@ msgid "Move selection 10 mm in negative X direction"
msgstr ""
#: src/slic3r/GUI/KBShortcutsDialog.cpp:161
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:218
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:230
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:225
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:237
msgid "Arrow Right"
msgstr ""
@@ -3878,119 +3925,127 @@ msgid "Collapse/Expand the sidebar"
msgstr ""
#: src/slic3r/GUI/KBShortcutsDialog.cpp:182
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:185
msgid "Show/Hide 3Dconnexion devices settings dialog"
msgstr ""
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:190 src/slic3r/GUI/MainFrame.cpp:340
-#: src/slic3r/GUI/MainFrame.cpp:352
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:194 src/slic3r/GUI/MainFrame.cpp:351
+#: src/slic3r/GUI/MainFrame.cpp:363
msgid "Plater"
msgstr ""
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:193
-#, possible-c-format
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:197
msgid ""
-"Press to snap by 5% in Gizmo scale\n"
-"or to snap by 1mm in Gizmo move"
+"All gizmos: Press to rotate view with mouse left or to pan view with mouse "
+"right"
msgstr ""
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:194
-msgid ""
-"Scale selection to fit print volume\n"
-"in Gizmo scale"
-msgstr ""
-
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:195
-msgid "Press to activate one direction scaling in Gizmo scale"
-msgstr ""
-
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:196
-msgid ""
-"Press to scale (in Gizmo scale) or rotate (in Gizmo rotate)\n"
-"selected objects around their own center"
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:198
+msgid "Gizmo move: Press to snap by 1mm"
msgstr ""
#: src/slic3r/GUI/KBShortcutsDialog.cpp:199
-msgid "Gizmos"
+msgid "Gizmo scale: Press to snap by 5%"
msgstr ""
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:205
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:207
-msgid "Upper Layer"
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:200
+msgid "Gizmo scale: Scale selection to fit print volume"
+msgstr ""
+
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:201
+msgid "Gizmo scale: Press to activate one direction scaling"
+msgstr ""
+
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:202
+msgid "Gizmo scale: Press to scale selected objects around their own center"
+msgstr ""
+
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:203
+msgid "Gizmo rotate: Press to rotate selected objects around their own center"
msgstr ""
#: src/slic3r/GUI/KBShortcutsDialog.cpp:206
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:208
+msgid "Gizmos"
+msgstr ""
+
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:212
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:214
+msgid "Upper Layer"
+msgstr ""
+
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:213
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:215
msgid "Lower Layer"
msgstr ""
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:209
-msgid "Show/Hide Legend/Estimated printing time"
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:216
+msgid "Show/Hide Legend & Estimated printing time"
msgstr ""
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:212 src/slic3r/GUI/Plater.cpp:4052
-#: src/slic3r/GUI/Tab.cpp:2559
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:219 src/slic3r/GUI/Plater.cpp:4077
+#: src/slic3r/GUI/Tab.cpp:2572
msgid "Preview"
msgstr ""
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:215
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:222
msgid "Move current slider thumb Up"
msgstr ""
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:216
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:223
msgid "Move current slider thumb Down"
msgstr ""
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:217
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:224
msgid "Set upper thumb to current slider thumb"
msgstr ""
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:218
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:225
msgid "Set lower thumb to current slider thumb"
msgstr ""
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:219
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:226
msgid "Add color change marker for current layer"
msgstr ""
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:220
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:227
msgid "Delete color change marker for current layer"
msgstr ""
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:221
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:222
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:231
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:232
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:228
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:229
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:238
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:239
msgid ""
"Press to speed up 5 times while moving thumb\n"
"with arrow keys or mouse wheel"
msgstr ""
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:225
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:232
msgid "Layers Slider"
msgstr ""
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:229
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:236
msgid "Move current slider thumb Left"
msgstr ""
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:230
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:237
msgid "Move current slider thumb Right"
msgstr ""
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:235
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:242
msgid "Sequential Slider"
msgstr ""
-#: src/slic3r/GUI/KBShortcutsDialog.cpp:259
+#: src/slic3r/GUI/KBShortcutsDialog.cpp:270
msgid "Keyboard shortcuts"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:63 src/slic3r/GUI/MainFrame.cpp:1262
+#: src/slic3r/GUI/MainFrame.cpp:63 src/slic3r/GUI/MainFrame.cpp:1270
msgid "Open new instance"
msgstr ""
#: src/slic3r/GUI/MainFrame.cpp:63 src/slic3r/GUI/MainFrame.cpp:77
-#: src/slic3r/GUI/MainFrame.cpp:1262
+#: src/slic3r/GUI/MainFrame.cpp:1270
msgid "Open a new PrusaSlicer instance"
msgstr ""
@@ -3998,11 +4053,11 @@ msgstr ""
msgid "G-code preview"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:66 src/slic3r/GUI/MainFrame.cpp:1141
+#: src/slic3r/GUI/MainFrame.cpp:66 src/slic3r/GUI/MainFrame.cpp:1149
msgid "Open G-code viewer"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:77 src/slic3r/GUI/MainFrame.cpp:1398
+#: src/slic3r/GUI/MainFrame.cpp:77 src/slic3r/GUI/MainFrame.cpp:1406
msgid "Open PrusaSlicer"
msgstr ""
@@ -4016,696 +4071,696 @@ msgid ""
"releases"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:535 src/slic3r/GUI/MainFrame.cpp:537
+#: src/slic3r/GUI/MainFrame.cpp:546 src/slic3r/GUI/MainFrame.cpp:548
msgid "based on Slic3r"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:909 src/slic3r/GUI/MainFrame.cpp:1308
+#: src/slic3r/GUI/MainFrame.cpp:917 src/slic3r/GUI/MainFrame.cpp:1316
msgid "Prusa 3D &Drivers"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:909 src/slic3r/GUI/MainFrame.cpp:1308
+#: src/slic3r/GUI/MainFrame.cpp:917 src/slic3r/GUI/MainFrame.cpp:1316
msgid "Open the Prusa3D drivers download page in your browser"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:911 src/slic3r/GUI/MainFrame.cpp:1310
+#: src/slic3r/GUI/MainFrame.cpp:919 src/slic3r/GUI/MainFrame.cpp:1318
msgid "Software &Releases"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:911 src/slic3r/GUI/MainFrame.cpp:1310
+#: src/slic3r/GUI/MainFrame.cpp:919 src/slic3r/GUI/MainFrame.cpp:1318
msgid "Open the software releases page in your browser"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:917 src/slic3r/GUI/MainFrame.cpp:1316
+#: src/slic3r/GUI/MainFrame.cpp:925 src/slic3r/GUI/MainFrame.cpp:1324
#, possible-c-format
msgid "%s &Website"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:918 src/slic3r/GUI/MainFrame.cpp:1317
+#: src/slic3r/GUI/MainFrame.cpp:926 src/slic3r/GUI/MainFrame.cpp:1325
#, possible-c-format
msgid "Open the %s website in your browser"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:924 src/slic3r/GUI/MainFrame.cpp:1323
+#: src/slic3r/GUI/MainFrame.cpp:932 src/slic3r/GUI/MainFrame.cpp:1331
msgid "System &Info"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:924 src/slic3r/GUI/MainFrame.cpp:1323
+#: src/slic3r/GUI/MainFrame.cpp:932 src/slic3r/GUI/MainFrame.cpp:1331
msgid "Show system information"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:926 src/slic3r/GUI/MainFrame.cpp:1325
+#: src/slic3r/GUI/MainFrame.cpp:934 src/slic3r/GUI/MainFrame.cpp:1333
msgid "Show &Configuration Folder"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:926 src/slic3r/GUI/MainFrame.cpp:1325
+#: src/slic3r/GUI/MainFrame.cpp:934 src/slic3r/GUI/MainFrame.cpp:1333
msgid "Show user configuration folder (datadir)"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:928 src/slic3r/GUI/MainFrame.cpp:1327
+#: src/slic3r/GUI/MainFrame.cpp:936 src/slic3r/GUI/MainFrame.cpp:1335
msgid "Report an I&ssue"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:928 src/slic3r/GUI/MainFrame.cpp:1327
+#: src/slic3r/GUI/MainFrame.cpp:936 src/slic3r/GUI/MainFrame.cpp:1335
#, possible-c-format
msgid "Report an issue on %s"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:933 src/slic3r/GUI/MainFrame.cpp:937
-#: src/slic3r/GUI/MainFrame.cpp:1329
+#: src/slic3r/GUI/MainFrame.cpp:941 src/slic3r/GUI/MainFrame.cpp:945
+#: src/slic3r/GUI/MainFrame.cpp:1337
#, possible-c-format
msgid "&About %s"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:933 src/slic3r/GUI/MainFrame.cpp:937
-#: src/slic3r/GUI/MainFrame.cpp:1329
+#: src/slic3r/GUI/MainFrame.cpp:941 src/slic3r/GUI/MainFrame.cpp:945
+#: src/slic3r/GUI/MainFrame.cpp:1337
msgid "Show about dialog"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:941 src/slic3r/GUI/MainFrame.cpp:1332
+#: src/slic3r/GUI/MainFrame.cpp:949 src/slic3r/GUI/MainFrame.cpp:1340
msgid "Show the list of the keyboard shortcuts"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:955 src/slic3r/GUI/MainFrame.cpp:1275
+#: src/slic3r/GUI/MainFrame.cpp:963 src/slic3r/GUI/MainFrame.cpp:1283
msgid "Iso"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:955 src/slic3r/GUI/MainFrame.cpp:1275
+#: src/slic3r/GUI/MainFrame.cpp:963 src/slic3r/GUI/MainFrame.cpp:1283
msgid "Iso View"
msgstr ""
#. TRN To be shown in the main menu View->Top
#. TRN To be shown in Print Settings "Top solid layers"
-#: src/slic3r/GUI/MainFrame.cpp:959 src/slic3r/GUI/MainFrame.cpp:1279
-#: src/libslic3r/PrintConfig.cpp:2275 src/libslic3r/PrintConfig.cpp:2284
+#: src/slic3r/GUI/MainFrame.cpp:967 src/slic3r/GUI/MainFrame.cpp:1287
+#: src/libslic3r/PrintConfig.cpp:2266 src/libslic3r/PrintConfig.cpp:2275
msgid "Top"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:959 src/slic3r/GUI/MainFrame.cpp:1279
+#: src/slic3r/GUI/MainFrame.cpp:967 src/slic3r/GUI/MainFrame.cpp:1287
msgid "Top View"
msgstr ""
#. TRN To be shown in the main menu View->Bottom
#. TRN To be shown in Print Settings "Bottom solid layers"
#. TRN To be shown in Print Settings "Top solid layers"
-#: src/slic3r/GUI/MainFrame.cpp:962 src/slic3r/GUI/MainFrame.cpp:1282
-#: src/libslic3r/PrintConfig.cpp:208 src/libslic3r/PrintConfig.cpp:217
+#: src/slic3r/GUI/MainFrame.cpp:970 src/slic3r/GUI/MainFrame.cpp:1290
+#: src/libslic3r/PrintConfig.cpp:215 src/libslic3r/PrintConfig.cpp:224
msgid "Bottom"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:962 src/slic3r/GUI/MainFrame.cpp:1282
+#: src/slic3r/GUI/MainFrame.cpp:970 src/slic3r/GUI/MainFrame.cpp:1290
msgid "Bottom View"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:964 src/slic3r/GUI/MainFrame.cpp:1284
+#: src/slic3r/GUI/MainFrame.cpp:972 src/slic3r/GUI/MainFrame.cpp:1292
msgid "Front"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:964 src/slic3r/GUI/MainFrame.cpp:1284
+#: src/slic3r/GUI/MainFrame.cpp:972 src/slic3r/GUI/MainFrame.cpp:1292
msgid "Front View"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:966 src/slic3r/GUI/MainFrame.cpp:1286
-#: src/libslic3r/PrintConfig.cpp:1740
+#: src/slic3r/GUI/MainFrame.cpp:974 src/slic3r/GUI/MainFrame.cpp:1294
+#: src/libslic3r/PrintConfig.cpp:1751
msgid "Rear"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:966 src/slic3r/GUI/MainFrame.cpp:1286
+#: src/slic3r/GUI/MainFrame.cpp:974 src/slic3r/GUI/MainFrame.cpp:1294
msgid "Rear View"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:968 src/slic3r/GUI/MainFrame.cpp:1288
+#: src/slic3r/GUI/MainFrame.cpp:976 src/slic3r/GUI/MainFrame.cpp:1296
msgid "Left"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:968 src/slic3r/GUI/MainFrame.cpp:1288
+#: src/slic3r/GUI/MainFrame.cpp:976 src/slic3r/GUI/MainFrame.cpp:1296
msgid "Left View"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:970 src/slic3r/GUI/MainFrame.cpp:1290
+#: src/slic3r/GUI/MainFrame.cpp:978 src/slic3r/GUI/MainFrame.cpp:1298
msgid "Right"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:970 src/slic3r/GUI/MainFrame.cpp:1290
+#: src/slic3r/GUI/MainFrame.cpp:978 src/slic3r/GUI/MainFrame.cpp:1298
msgid "Right View"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:986
+#: src/slic3r/GUI/MainFrame.cpp:994
msgid "&New Project"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:986
+#: src/slic3r/GUI/MainFrame.cpp:994
msgid "Start a new project"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:989
+#: src/slic3r/GUI/MainFrame.cpp:997
msgid "&Open Project"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:989
+#: src/slic3r/GUI/MainFrame.cpp:997
msgid "Open a project file"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:994
+#: src/slic3r/GUI/MainFrame.cpp:1002
msgid "Recent projects"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1003
+#: src/slic3r/GUI/MainFrame.cpp:1011
msgid ""
"The selected project is no longer available.\n"
"Do you want to remove it from the recent projects list?"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1003 src/slic3r/GUI/MainFrame.cpp:1486
-#: src/slic3r/GUI/PrintHostDialogs.cpp:231
+#: src/slic3r/GUI/MainFrame.cpp:1011 src/slic3r/GUI/MainFrame.cpp:1494
+#: src/slic3r/GUI/PrintHostDialogs.cpp:259
msgid "Error"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1028
+#: src/slic3r/GUI/MainFrame.cpp:1036
msgid "&Save Project"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1028
+#: src/slic3r/GUI/MainFrame.cpp:1036
msgid "Save current project file"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1032 src/slic3r/GUI/MainFrame.cpp:1034
+#: src/slic3r/GUI/MainFrame.cpp:1040 src/slic3r/GUI/MainFrame.cpp:1042
msgid "Save Project &as"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1032 src/slic3r/GUI/MainFrame.cpp:1034
+#: src/slic3r/GUI/MainFrame.cpp:1040 src/slic3r/GUI/MainFrame.cpp:1042
msgid "Save current project file as"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1042
+#: src/slic3r/GUI/MainFrame.cpp:1050
msgid "Import STL/OBJ/AM&F/3MF"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1042
+#: src/slic3r/GUI/MainFrame.cpp:1050
msgid "Load a model"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1046
+#: src/slic3r/GUI/MainFrame.cpp:1054
msgid "Import STL (imperial units)"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1046
+#: src/slic3r/GUI/MainFrame.cpp:1054
msgid "Load an model saved with imperial units"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1050
+#: src/slic3r/GUI/MainFrame.cpp:1058
msgid "Import SL1 archive"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1050
-msgid "Load an SL1 output archive"
+#: src/slic3r/GUI/MainFrame.cpp:1058
+msgid "Load an SL1 archive"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1055
+#: src/slic3r/GUI/MainFrame.cpp:1063
msgid "Import &Config"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1055
+#: src/slic3r/GUI/MainFrame.cpp:1063
msgid "Load exported configuration file"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1058
+#: src/slic3r/GUI/MainFrame.cpp:1066
msgid "Import Config from &project"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1058
+#: src/slic3r/GUI/MainFrame.cpp:1066
msgid "Load configuration from project file"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1062
+#: src/slic3r/GUI/MainFrame.cpp:1070
msgid "Import Config &Bundle"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1062
+#: src/slic3r/GUI/MainFrame.cpp:1070
msgid "Load presets from a bundle"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1065
+#: src/slic3r/GUI/MainFrame.cpp:1073
msgid "&Import"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1068 src/slic3r/GUI/MainFrame.cpp:1448
+#: src/slic3r/GUI/MainFrame.cpp:1076 src/slic3r/GUI/MainFrame.cpp:1456
msgid "Export &G-code"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1068
+#: src/slic3r/GUI/MainFrame.cpp:1076
msgid "Export current plate as G-code"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1072 src/slic3r/GUI/MainFrame.cpp:1449
+#: src/slic3r/GUI/MainFrame.cpp:1080 src/slic3r/GUI/MainFrame.cpp:1457
msgid "S&end G-code"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1072
+#: src/slic3r/GUI/MainFrame.cpp:1080
msgid "Send to print current plate as G-code"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1076
+#: src/slic3r/GUI/MainFrame.cpp:1084
msgid "Export G-code to SD card / Flash drive"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1076
+#: src/slic3r/GUI/MainFrame.cpp:1084
msgid "Export current plate as G-code to SD card / Flash drive"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1080
+#: src/slic3r/GUI/MainFrame.cpp:1088
msgid "Export plate as &STL"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1080
+#: src/slic3r/GUI/MainFrame.cpp:1088
msgid "Export current plate as STL"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1083
+#: src/slic3r/GUI/MainFrame.cpp:1091
msgid "Export plate as STL &including supports"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1083
+#: src/slic3r/GUI/MainFrame.cpp:1091
msgid "Export current plate as STL including supports"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1086
+#: src/slic3r/GUI/MainFrame.cpp:1094
msgid "Export plate as &AMF"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1086
+#: src/slic3r/GUI/MainFrame.cpp:1094
msgid "Export current plate as AMF"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1090 src/slic3r/GUI/MainFrame.cpp:1395
+#: src/slic3r/GUI/MainFrame.cpp:1098 src/slic3r/GUI/MainFrame.cpp:1403
msgid "Export &toolpaths as OBJ"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1090 src/slic3r/GUI/MainFrame.cpp:1395
+#: src/slic3r/GUI/MainFrame.cpp:1098 src/slic3r/GUI/MainFrame.cpp:1403
msgid "Export toolpaths as OBJ"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1094
+#: src/slic3r/GUI/MainFrame.cpp:1102
msgid "Export &Config"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1094
+#: src/slic3r/GUI/MainFrame.cpp:1102
msgid "Export current configuration to file"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1097
+#: src/slic3r/GUI/MainFrame.cpp:1105
msgid "Export Config &Bundle"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1097
+#: src/slic3r/GUI/MainFrame.cpp:1105
msgid "Export all presets to file"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1100
+#: src/slic3r/GUI/MainFrame.cpp:1108
msgid "Export Config Bundle With Physical Printers"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1100
+#: src/slic3r/GUI/MainFrame.cpp:1108
msgid "Export all presets including physical printers to file"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1103
+#: src/slic3r/GUI/MainFrame.cpp:1111
msgid "&Export"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1105
+#: src/slic3r/GUI/MainFrame.cpp:1113
msgid "Ejec&t SD card / Flash drive"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1105
+#: src/slic3r/GUI/MainFrame.cpp:1113
msgid "Eject SD card / Flash drive after the G-code was exported to it."
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1113
+#: src/slic3r/GUI/MainFrame.cpp:1121
msgid "Quick Slice"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1113
+#: src/slic3r/GUI/MainFrame.cpp:1121
msgid "Slice a file into a G-code"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1119
+#: src/slic3r/GUI/MainFrame.cpp:1127
msgid "Quick Slice and Save As"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1119
+#: src/slic3r/GUI/MainFrame.cpp:1127
msgid "Slice a file into a G-code, save as"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1125
+#: src/slic3r/GUI/MainFrame.cpp:1133
msgid "Repeat Last Quick Slice"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1125
+#: src/slic3r/GUI/MainFrame.cpp:1133
msgid "Repeat last quick slice"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1133
+#: src/slic3r/GUI/MainFrame.cpp:1141
msgid "(Re)Slice No&w"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1133
+#: src/slic3r/GUI/MainFrame.cpp:1141
msgid "Start new slicing process"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1137
+#: src/slic3r/GUI/MainFrame.cpp:1145
msgid "&Repair STL file"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1137
+#: src/slic3r/GUI/MainFrame.cpp:1145
msgid "Automatically repair an STL file"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1141
+#: src/slic3r/GUI/MainFrame.cpp:1149
msgid "&G-code preview"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1144 src/slic3r/GUI/MainFrame.cpp:1402
+#: src/slic3r/GUI/MainFrame.cpp:1152 src/slic3r/GUI/MainFrame.cpp:1410
msgid "&Quit"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1144 src/slic3r/GUI/MainFrame.cpp:1402
+#: src/slic3r/GUI/MainFrame.cpp:1152 src/slic3r/GUI/MainFrame.cpp:1410
#, possible-c-format
msgid "Quit %s"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1171
+#: src/slic3r/GUI/MainFrame.cpp:1179
msgid "&Select all"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1172
+#: src/slic3r/GUI/MainFrame.cpp:1180
msgid "Selects all objects"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1174
+#: src/slic3r/GUI/MainFrame.cpp:1182
msgid "D&eselect all"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1175
+#: src/slic3r/GUI/MainFrame.cpp:1183
msgid "Deselects all objects"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1178
+#: src/slic3r/GUI/MainFrame.cpp:1186
msgid "&Delete selected"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1179
+#: src/slic3r/GUI/MainFrame.cpp:1187
msgid "Deletes the current selection"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1181
+#: src/slic3r/GUI/MainFrame.cpp:1189
msgid "Delete &all"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1182
+#: src/slic3r/GUI/MainFrame.cpp:1190
msgid "Deletes all objects"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1186
+#: src/slic3r/GUI/MainFrame.cpp:1194
msgid "&Undo"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1189
+#: src/slic3r/GUI/MainFrame.cpp:1197
msgid "&Redo"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1194
+#: src/slic3r/GUI/MainFrame.cpp:1202
msgid "&Copy"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1195
+#: src/slic3r/GUI/MainFrame.cpp:1203
msgid "Copy selection to clipboard"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1197
+#: src/slic3r/GUI/MainFrame.cpp:1205
msgid "&Paste"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1198
+#: src/slic3r/GUI/MainFrame.cpp:1206
msgid "Paste clipboard"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1202
+#: src/slic3r/GUI/MainFrame.cpp:1210
msgid "Re&load from disk"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1203
+#: src/slic3r/GUI/MainFrame.cpp:1211
msgid "Reload the plater from disk"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1207
+#: src/slic3r/GUI/MainFrame.cpp:1215
msgid "Searc&h"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1208
-msgid "Find option"
-msgstr ""
-
#: src/slic3r/GUI/MainFrame.cpp:1216
-msgid "&Plater Tab"
-msgstr ""
-
-#: src/slic3r/GUI/MainFrame.cpp:1216
-msgid "Show the plater"
-msgstr ""
-
-#: src/slic3r/GUI/MainFrame.cpp:1221
-msgid "P&rint Settings Tab"
-msgstr ""
-
-#: src/slic3r/GUI/MainFrame.cpp:1221
-msgid "Show the print settings"
-msgstr ""
-
-#: src/slic3r/GUI/MainFrame.cpp:1224 src/slic3r/GUI/MainFrame.cpp:1451
-msgid "&Filament Settings Tab"
+msgid "Search in settings"
msgstr ""
#: src/slic3r/GUI/MainFrame.cpp:1224
+msgid "&Plater Tab"
+msgstr ""
+
+#: src/slic3r/GUI/MainFrame.cpp:1224
+msgid "Show the plater"
+msgstr ""
+
+#: src/slic3r/GUI/MainFrame.cpp:1229
+msgid "P&rint Settings Tab"
+msgstr ""
+
+#: src/slic3r/GUI/MainFrame.cpp:1229
+msgid "Show the print settings"
+msgstr ""
+
+#: src/slic3r/GUI/MainFrame.cpp:1232 src/slic3r/GUI/MainFrame.cpp:1459
+msgid "&Filament Settings Tab"
+msgstr ""
+
+#: src/slic3r/GUI/MainFrame.cpp:1232
msgid "Show the filament settings"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1228
+#: src/slic3r/GUI/MainFrame.cpp:1236
msgid "Print&er Settings Tab"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1228
+#: src/slic3r/GUI/MainFrame.cpp:1236
msgid "Show the printer settings"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1234
+#: src/slic3r/GUI/MainFrame.cpp:1242
msgid "3&D"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1234
+#: src/slic3r/GUI/MainFrame.cpp:1242
msgid "Show the 3D editing view"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1237
+#: src/slic3r/GUI/MainFrame.cpp:1245
msgid "Pre&view"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1237
+#: src/slic3r/GUI/MainFrame.cpp:1245
msgid "Show the 3D slices preview"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1258
+#: src/slic3r/GUI/MainFrame.cpp:1266
msgid "Print &Host Upload Queue"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1258
+#: src/slic3r/GUI/MainFrame.cpp:1266
msgid "Display the Print Host Upload Queue window"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1294
+#: src/slic3r/GUI/MainFrame.cpp:1302
msgid "Show &labels"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1294
+#: src/slic3r/GUI/MainFrame.cpp:1302
msgid "Show object/instance labels in 3D scene"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1297
+#: src/slic3r/GUI/MainFrame.cpp:1305
msgid "&Collapse sidebar"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1297 src/slic3r/GUI/Plater.cpp:2144
+#: src/slic3r/GUI/MainFrame.cpp:1305 src/slic3r/GUI/Plater.cpp:2159
msgid "Collapse sidebar"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1347 src/slic3r/GUI/MainFrame.cpp:1357
-#: src/slic3r/GUI/MainFrame.cpp:1417
+#: src/slic3r/GUI/MainFrame.cpp:1355 src/slic3r/GUI/MainFrame.cpp:1365
+#: src/slic3r/GUI/MainFrame.cpp:1425
msgid "&File"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1348 src/slic3r/GUI/MainFrame.cpp:1358
+#: src/slic3r/GUI/MainFrame.cpp:1356 src/slic3r/GUI/MainFrame.cpp:1366
msgid "&Edit"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1349 src/slic3r/GUI/MainFrame.cpp:1359
+#: src/slic3r/GUI/MainFrame.cpp:1357 src/slic3r/GUI/MainFrame.cpp:1367
msgid "&Window"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1350 src/slic3r/GUI/MainFrame.cpp:1360
-#: src/slic3r/GUI/MainFrame.cpp:1418
+#: src/slic3r/GUI/MainFrame.cpp:1358 src/slic3r/GUI/MainFrame.cpp:1368
+#: src/slic3r/GUI/MainFrame.cpp:1426
msgid "&View"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1353 src/slic3r/GUI/MainFrame.cpp:1363
-#: src/slic3r/GUI/MainFrame.cpp:1423
+#: src/slic3r/GUI/MainFrame.cpp:1361 src/slic3r/GUI/MainFrame.cpp:1371
+#: src/slic3r/GUI/MainFrame.cpp:1431
msgid "&Help"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1391
+#: src/slic3r/GUI/MainFrame.cpp:1399
msgid "&Open G-code"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1391
+#: src/slic3r/GUI/MainFrame.cpp:1399
msgid "Open a G-code file"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1398
+#: src/slic3r/GUI/MainFrame.cpp:1406
msgid "Open &PrusaSlicer"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1448
+#: src/slic3r/GUI/MainFrame.cpp:1456
msgid "E&xport"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1449
+#: src/slic3r/GUI/MainFrame.cpp:1457
msgid "S&end to print"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1451
+#: src/slic3r/GUI/MainFrame.cpp:1459
msgid "Mate&rial Settings Tab"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1474
+#: src/slic3r/GUI/MainFrame.cpp:1482
msgid "Choose a file to slice (STL/OBJ/AMF/3MF/PRUSA):"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1485
+#: src/slic3r/GUI/MainFrame.cpp:1493
msgid "No previously sliced file."
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1491
+#: src/slic3r/GUI/MainFrame.cpp:1499
msgid "Previously sliced file ("
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1491
+#: src/slic3r/GUI/MainFrame.cpp:1499
msgid ") not found."
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1492
+#: src/slic3r/GUI/MainFrame.cpp:1500
msgid "File Not Found"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1527
+#: src/slic3r/GUI/MainFrame.cpp:1535
#, possible-c-format
msgid "Save %s file as:"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1527
+#: src/slic3r/GUI/MainFrame.cpp:1535
msgid "SVG"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1527
+#: src/slic3r/GUI/MainFrame.cpp:1535
msgid "G-code"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1539
+#: src/slic3r/GUI/MainFrame.cpp:1547
msgid "Save zip file as:"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1548 src/slic3r/GUI/Plater.cpp:2921
-#: src/slic3r/GUI/Plater.cpp:5234 src/slic3r/GUI/Tab.cpp:1551
-#: src/slic3r/GUI/Tab.cpp:4081
+#: src/slic3r/GUI/MainFrame.cpp:1556 src/slic3r/GUI/Plater.cpp:2937
+#: src/slic3r/GUI/Plater.cpp:5274 src/slic3r/GUI/Tab.cpp:1561
+#: src/slic3r/GUI/Tab.cpp:4080
msgid "Slicing"
msgstr ""
#. TRN "Processing input_file_basename"
-#: src/slic3r/GUI/MainFrame.cpp:1550
+#: src/slic3r/GUI/MainFrame.cpp:1558
#, possible-c-format
msgid "Processing %s"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1573
+#: src/slic3r/GUI/MainFrame.cpp:1581
msgid " was successfully sliced."
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1575
+#: src/slic3r/GUI/MainFrame.cpp:1583
msgid "Slicing Done!"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1590
+#: src/slic3r/GUI/MainFrame.cpp:1598
msgid "Select the STL file to repair:"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1600
+#: src/slic3r/GUI/MainFrame.cpp:1608
msgid "Save OBJ file (less prone to coordinate errors than STL) as:"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1612
+#: src/slic3r/GUI/MainFrame.cpp:1620
msgid "Your file was repaired."
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1612 src/libslic3r/PrintConfig.cpp:3646
+#: src/slic3r/GUI/MainFrame.cpp:1620 src/libslic3r/PrintConfig.cpp:3638
msgid "Repair"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1626
+#: src/slic3r/GUI/MainFrame.cpp:1634
msgid "Save configuration as:"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1645 src/slic3r/GUI/MainFrame.cpp:1707
+#: src/slic3r/GUI/MainFrame.cpp:1653 src/slic3r/GUI/MainFrame.cpp:1715
msgid "Select configuration to load:"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1681
+#: src/slic3r/GUI/MainFrame.cpp:1689
msgid "Save presets bundle as:"
msgstr ""
-#: src/slic3r/GUI/MainFrame.cpp:1728
+#: src/slic3r/GUI/MainFrame.cpp:1736
#, possible-c-format
msgid "%d presets successfully imported."
msgstr ""
-#: src/slic3r/GUI/Mouse3DController.cpp:263
+#: src/slic3r/GUI/Mouse3DController.cpp:273
msgid "3Dconnexion settings"
msgstr ""
-#: src/slic3r/GUI/Mouse3DController.cpp:274
+#: src/slic3r/GUI/Mouse3DController.cpp:284
msgid "Device:"
msgstr ""
-#: src/slic3r/GUI/Mouse3DController.cpp:279
+#: src/slic3r/GUI/Mouse3DController.cpp:289
msgid "Speed:"
msgstr ""
-#: src/slic3r/GUI/Mouse3DController.cpp:282
-#: src/slic3r/GUI/Mouse3DController.cpp:303
+#: src/slic3r/GUI/Mouse3DController.cpp:292
+#: src/slic3r/GUI/Mouse3DController.cpp:313
msgid "Translation"
msgstr ""
-#: src/slic3r/GUI/Mouse3DController.cpp:294
-#: src/slic3r/GUI/Mouse3DController.cpp:303
+#: src/slic3r/GUI/Mouse3DController.cpp:304
+#: src/slic3r/GUI/Mouse3DController.cpp:313
msgid "Zoom"
msgstr ""
-#: src/slic3r/GUI/Mouse3DController.cpp:300
+#: src/slic3r/GUI/Mouse3DController.cpp:310
msgid "Deadzone:"
msgstr ""
-#: src/slic3r/GUI/Mouse3DController.cpp:315
+#: src/slic3r/GUI/Mouse3DController.cpp:325
msgid "Options:"
msgstr ""
-#: src/slic3r/GUI/Mouse3DController.cpp:318
+#: src/slic3r/GUI/Mouse3DController.cpp:328
msgid "Swap Y/Z axes"
msgstr ""
@@ -4719,60 +4774,64 @@ msgstr ""
msgid "%s has encountered an error"
msgstr ""
-#: src/slic3r/GUI/NotificationManager.hpp:317
-msgid "Exporting finished."
-msgstr ""
-
-#: src/slic3r/GUI/NotificationManager.hpp:317
-msgid "Eject drive."
-msgstr ""
-
-#: src/slic3r/GUI/NotificationManager.hpp:318
+#: src/slic3r/GUI/NotificationManager.hpp:369
msgid "3D Mouse disconnected."
msgstr ""
-#: src/slic3r/GUI/NotificationManager.hpp:321
+#: src/slic3r/GUI/NotificationManager.hpp:372
msgid "Configuration update is available."
msgstr ""
-#: src/slic3r/GUI/NotificationManager.hpp:321
+#: src/slic3r/GUI/NotificationManager.hpp:372
msgid "See more."
msgstr ""
-#: src/slic3r/GUI/NotificationManager.hpp:322
+#: src/slic3r/GUI/NotificationManager.hpp:373
msgid "New version is available."
msgstr ""
-#: src/slic3r/GUI/NotificationManager.hpp:322
+#: src/slic3r/GUI/NotificationManager.hpp:373
msgid "See Releases page."
msgstr ""
-#: src/slic3r/GUI/NotificationManager.cpp:305
-#: src/slic3r/GUI/NotificationManager.cpp:315
+#: src/slic3r/GUI/NotificationManager.cpp:376
+#: src/slic3r/GUI/NotificationManager.cpp:386
msgid "More"
msgstr ""
-#: src/slic3r/GUI/NotificationManager.cpp:631
-#: src/slic3r/GUI/NotificationManager.cpp:748
+#: src/slic3r/GUI/NotificationManager.cpp:698
+#: src/slic3r/GUI/NotificationManager.cpp:936
msgid "Export G-Code."
msgstr ""
-#: src/slic3r/GUI/NotificationManager.cpp:667
-#: src/slic3r/GUI/NotificationManager.cpp:683
-#: src/slic3r/GUI/NotificationManager.cpp:694
+#: src/slic3r/GUI/NotificationManager.cpp:742
+msgid "Open Folder."
+msgstr ""
+
+#: src/slic3r/GUI/NotificationManager.cpp:780
+msgid "Eject drive"
+msgstr ""
+
+#: src/slic3r/GUI/NotificationManager.cpp:855
+#: src/slic3r/GUI/NotificationManager.cpp:871
+#: src/slic3r/GUI/NotificationManager.cpp:882
msgid "ERROR:"
msgstr ""
-#: src/slic3r/GUI/NotificationManager.cpp:672
-#: src/slic3r/GUI/NotificationManager.cpp:687
-#: src/slic3r/GUI/NotificationManager.cpp:702
+#: src/slic3r/GUI/NotificationManager.cpp:860
+#: src/slic3r/GUI/NotificationManager.cpp:875
+#: src/slic3r/GUI/NotificationManager.cpp:890
msgid "WARNING:"
msgstr ""
-#: src/slic3r/GUI/NotificationManager.cpp:751
+#: src/slic3r/GUI/NotificationManager.cpp:939
msgid "Slicing finished."
msgstr ""
+#: src/slic3r/GUI/NotificationManager.cpp:981
+msgid "Exporting finished."
+msgstr ""
+
#: src/slic3r/GUI/ObjectDataViewModel.cpp:58
msgid "Instances"
msgstr ""
@@ -4783,8 +4842,8 @@ msgstr ""
msgid "Instance %d"
msgstr ""
-#: src/slic3r/GUI/ObjectDataViewModel.cpp:69 src/slic3r/GUI/Tab.cpp:3928
-#: src/slic3r/GUI/Tab.cpp:4010
+#: src/slic3r/GUI/ObjectDataViewModel.cpp:69 src/slic3r/GUI/Tab.cpp:3927
+#: src/slic3r/GUI/Tab.cpp:4009
msgid "Layers"
msgstr ""
@@ -4824,115 +4883,123 @@ msgstr ""
msgid "Error loading shaders"
msgstr ""
-#: src/slic3r/GUI/OptionsGroup.cpp:293
+#: src/slic3r/GUI/OptionsGroup.cpp:319
msgctxt "Layers"
msgid "Top"
msgstr ""
-#: src/slic3r/GUI/OptionsGroup.cpp:293
+#: src/slic3r/GUI/OptionsGroup.cpp:319
msgctxt "Layers"
msgid "Bottom"
msgstr ""
-#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:55
+#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:51
msgid "Delete this preset from this printer device"
msgstr ""
-#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:85
+#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:81
msgid "This printer will be shown in the presets list as"
msgstr ""
-#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:159
+#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:155
msgid "Physical Printer"
msgstr ""
-#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:165
+#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:161
msgid "Type here the name of your printer device"
msgstr ""
-#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:176
-msgid "Descriptive name for the printer device"
+#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:172
+msgid "Descriptive name for the printer"
msgstr ""
-#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:180
+#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:176
msgid "Add preset for this printer device"
msgstr ""
-#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:209 src/slic3r/GUI/Tab.cpp:2024
+#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:205 src/slic3r/GUI/Tab.cpp:2037
msgid "Print Host upload"
msgstr ""
-#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:284
+#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:260
+msgid "Querying printers connected to a print host failed."
+msgstr ""
+
+#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:300
msgid "Test"
msgstr ""
-#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:289
+#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:305
msgid "Could not get a valid Printer Host reference"
msgstr ""
-#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:295
+#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:317
msgid "Success!"
msgstr ""
-#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:319
+#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:327
+msgid "Refresh Printers"
+msgstr ""
+
+#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:354
msgid ""
"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-"
"signed certificate."
msgstr ""
-#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:329
+#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:364
msgid "Certificate files (*.crt, *.pem)|*.crt;*.pem|All files|*.*"
msgstr ""
-#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:330
+#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:365
msgid "Open CA certificate file"
msgstr ""
-#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:358
-#: src/libslic3r/PrintConfig.cpp:113
+#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:393
+#: src/libslic3r/PrintConfig.cpp:120
msgid "HTTPS CA File"
msgstr ""
-#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:359
+#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:394
#, possible-c-format
msgid ""
"On this system, %s uses HTTPS certificates from the system Certificate Store "
"or Keychain."
msgstr ""
-#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:360
+#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:395
msgid ""
"To use a custom CA file, please import your CA file into Certificate Store / "
"Keychain."
msgstr ""
-#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:464
+#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:519
msgid "The supplied name is empty. It can't be saved."
msgstr ""
-#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:468
+#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:523
msgid "You should to change a name of your printer device. It can't be saved."
msgstr ""
-#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:476
+#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:531
msgid "Printer with name \"%1%\" already exists."
msgstr ""
-#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:477
+#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:532
msgid "Replace?"
msgstr ""
-#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:500
+#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:555
msgid ""
"Next printer preset(s) is(are) duplicated:%1%Should I add it(they) just once "
"for the printer \"%2%\" and close the Editing Dialog?"
msgstr ""
-#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:546
-msgid "It's not possible to delete last related preset for the printer."
+#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:601
+msgid "It's not possible to delete the last related preset for the printer."
msgstr ""
-#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:547
+#: src/slic3r/GUI/PhysicalPrinterDialog.cpp:602
msgid "Infornation"
msgstr ""
@@ -4956,11 +5023,11 @@ msgstr ""
msgid "Sliced Info"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:241 src/slic3r/GUI/Plater.cpp:1141
+#: src/slic3r/GUI/Plater.cpp:241 src/slic3r/GUI/Plater.cpp:1142
msgid "Used Filament (m)"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:242 src/slic3r/GUI/Plater.cpp:1153
+#: src/slic3r/GUI/Plater.cpp:242 src/slic3r/GUI/Plater.cpp:1154
msgid "Used Filament (mm³)"
msgstr ""
@@ -4984,8 +5051,8 @@ msgstr ""
msgid "Select what kind of support do you need"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:366 src/libslic3r/PrintConfig.cpp:2043
-#: src/libslic3r/PrintConfig.cpp:2838
+#: src/slic3r/GUI/Plater.cpp:366 src/libslic3r/PrintConfig.cpp:2034
+#: src/libslic3r/PrintConfig.cpp:2829
msgid "Support on build plate only"
msgstr ""
@@ -4997,7 +5064,7 @@ msgstr ""
msgid "Everywhere"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:400 src/slic3r/GUI/Tab.cpp:1446
+#: src/slic3r/GUI/Plater.cpp:400 src/slic3r/GUI/Tab.cpp:1455
msgid "Brim"
msgstr ""
@@ -5027,8 +5094,8 @@ msgstr ""
msgid "Print settings"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:691 src/slic3r/GUI/Tab.cpp:1770
-#: src/slic3r/GUI/Tab.cpp:1771
+#: src/slic3r/GUI/Plater.cpp:691 src/slic3r/GUI/Tab.cpp:1780
+#: src/slic3r/GUI/Tab.cpp:1781
msgid "Filament"
msgstr ""
@@ -5036,490 +5103,502 @@ msgstr ""
msgid "SLA print settings"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:693 src/libslic3r/Preset.cpp:1303
-msgid "SLA material"
-msgstr ""
-
-#: src/slic3r/GUI/Plater.cpp:694
+#: src/slic3r/GUI/Plater.cpp:694 src/libslic3r/PrintConfig.cpp:113
msgid "Printer"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:753 src/slic3r/GUI/Plater.cpp:5707
-msgid "Send to printer"
+#: src/slic3r/GUI/Plater.cpp:753
+msgid "Send to printer "
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:754
-msgid "Remove device"
+#: src/slic3r/GUI/Plater.cpp:755
+msgid "Export to SD card / Flash drive "
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:767 src/slic3r/GUI/Plater.cpp:2921
-#: src/slic3r/GUI/Plater.cpp:5237
+#: src/slic3r/GUI/Plater.cpp:768 src/slic3r/GUI/Plater.cpp:2937
+#: src/slic3r/GUI/Plater.cpp:5277
msgid "Slice now"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:916
+#: src/slic3r/GUI/Plater.cpp:917
msgid "Hold Shift to Slice & Export G-code"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:1061
+#: src/slic3r/GUI/Plater.cpp:1062
#, possible-c-format
msgid "%d (%d shells)"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:1066
+#: src/slic3r/GUI/Plater.cpp:1067
#, possible-c-format
msgid "Auto-repaired (%d errors)"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:1069
+#: src/slic3r/GUI/Plater.cpp:1070
#, possible-c-format
msgid ""
"%d degenerate facets, %d edges fixed, %d facets removed, %d facets added, %d "
"facets reversed, %d backwards edges"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:1079
+#: src/slic3r/GUI/Plater.cpp:1080
msgid "Yes"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:1100
+#: src/slic3r/GUI/Plater.cpp:1101
msgid "Used Material (ml)"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:1103
+#: src/slic3r/GUI/Plater.cpp:1104
msgid "object(s)"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:1103
+#: src/slic3r/GUI/Plater.cpp:1104
msgid "supports and pad"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:1141
+#: src/slic3r/GUI/Plater.cpp:1142
msgid "Used Filament (in)"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:1143 src/slic3r/GUI/Plater.cpp:1160
+#: src/slic3r/GUI/Plater.cpp:1144 src/slic3r/GUI/Plater.cpp:1161
msgid "objects"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:1143 src/slic3r/GUI/Plater.cpp:1160
+#: src/slic3r/GUI/Plater.cpp:1144 src/slic3r/GUI/Plater.cpp:1161
msgid "wipe tower"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:1153
+#: src/slic3r/GUI/Plater.cpp:1154
msgid "Used Filament (in³)"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:1158 src/libslic3r/PrintConfig.cpp:796
-#: src/libslic3r/PrintConfig.cpp:2653 src/libslic3r/PrintConfig.cpp:2654
+#: src/slic3r/GUI/Plater.cpp:1159 src/libslic3r/PrintConfig.cpp:803
+#: src/libslic3r/PrintConfig.cpp:2644 src/libslic3r/PrintConfig.cpp:2645
msgid "Cost"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:1177 src/slic3r/GUI/Plater.cpp:1224
+#: src/slic3r/GUI/Plater.cpp:1178 src/slic3r/GUI/Plater.cpp:1225
msgid "normal mode"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:1187 src/slic3r/GUI/Plater.cpp:1235
+#: src/slic3r/GUI/Plater.cpp:1188 src/slic3r/GUI/Plater.cpp:1236
msgid "stealth mode"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:1198 src/libslic3r/PrintConfig.cpp:618
+#: src/slic3r/GUI/Plater.cpp:1199 src/libslic3r/PrintConfig.cpp:625
msgid "Color"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:1405
+#: src/slic3r/GUI/Plater.cpp:1406
msgid "You can open only one .gcode file at a time."
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:1406
+#: src/slic3r/GUI/Plater.cpp:1407
msgid "Drag and drop G-code file"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:1436
+#: src/slic3r/GUI/Plater.cpp:1437
msgid "Load File"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:1440
+#: src/slic3r/GUI/Plater.cpp:1441
msgid "Load Files"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:1555
+#: src/slic3r/GUI/Plater.cpp:1563
msgid "Optimize Rotation"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:1561
+#: src/slic3r/GUI/Plater.cpp:1569
msgid "Import SLA archive"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:2031
+#: src/slic3r/GUI/Plater.cpp:2047
#, possible-c-format
msgid ""
-"Unmounting successful. The device %s(%s) can now be safely removed from the "
+"Successfully unmounted. The device %s(%s) can now be safely removed from the "
"computer."
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:2034
+#: src/slic3r/GUI/Plater.cpp:2050
#, possible-c-format
msgid "Ejecting of device %s(%s) has failed."
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:2056
+#: src/slic3r/GUI/Plater.cpp:2071
msgid "New Project"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:2143
+#: src/slic3r/GUI/Plater.cpp:2158
msgid "Expand sidebar"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:2216
+#: src/slic3r/GUI/Plater.cpp:2231
msgid "Loading"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:2226
+#: src/slic3r/GUI/Plater.cpp:2241
msgid "Loading file"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:2309
+#: src/slic3r/GUI/Plater.cpp:2324
#, possible-c-format
msgid ""
"Some object(s) in file %s looks like saved in inches.\n"
"Should I consider them as a saved in inches and convert them?"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:2311
-msgid "Saved in inches object detected"
+#: src/slic3r/GUI/Plater.cpp:2326
+msgid "The object appears to be saved in inches"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:2319
+#: src/slic3r/GUI/Plater.cpp:2334
msgid ""
"This file contains several objects positioned at multiple heights.\n"
"Instead of considering them as multiple objects, should I consider\n"
"this file as a single object having multiple parts?"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:2322 src/slic3r/GUI/Plater.cpp:2375
+#: src/slic3r/GUI/Plater.cpp:2337 src/slic3r/GUI/Plater.cpp:2390
msgid "Multi-part object detected"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:2329
+#: src/slic3r/GUI/Plater.cpp:2344
msgid ""
"This file cannot be loaded in a simple mode. Do you want to switch to an "
"advanced mode?"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:2330
+#: src/slic3r/GUI/Plater.cpp:2345
msgid "Detected advanced data"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:2352
+#: src/slic3r/GUI/Plater.cpp:2367
#, possible-c-format
msgid ""
"You can't to add the object(s) from %s because of one or some of them "
"is(are) multi-part"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:2372
+#: src/slic3r/GUI/Plater.cpp:2387
msgid ""
"Multiple objects were loaded for a multi-material printer.\n"
"Instead of considering them as multiple objects, should I consider\n"
"these files to represent a single object having multiple parts?"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:2388
+#: src/slic3r/GUI/Plater.cpp:2403
msgid "Loaded"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:2490
+#: src/slic3r/GUI/Plater.cpp:2505
msgid ""
"Your object appears to be too large, so it was automatically scaled down to "
"fit your print bed."
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:2491
+#: src/slic3r/GUI/Plater.cpp:2506
msgid "Object too large?"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:2553
+#: src/slic3r/GUI/Plater.cpp:2568
msgid "Export STL file:"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:2560
+#: src/slic3r/GUI/Plater.cpp:2575
msgid "Export AMF file:"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:2566
+#: src/slic3r/GUI/Plater.cpp:2581
msgid "Save file as:"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:2572
+#: src/slic3r/GUI/Plater.cpp:2587
msgid "Export OBJ file:"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:2673
+#: src/slic3r/GUI/Plater.cpp:2688
msgid "Delete Object"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:2684
+#: src/slic3r/GUI/Plater.cpp:2699
msgid "Reset Project"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:2763
+#: src/slic3r/GUI/Plater.cpp:2778
msgid ""
"The selected object can't be split because it contains more than one volume/"
"material."
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:2774
+#: src/slic3r/GUI/Plater.cpp:2789
msgid "Split to Objects"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:2906 src/slic3r/GUI/Plater.cpp:3583
+#: src/slic3r/GUI/Plater.cpp:2921 src/slic3r/GUI/Plater.cpp:3604
msgid "Invalid data"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:2915
+#: src/slic3r/GUI/Plater.cpp:2931
msgid "Ready to slice"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:2953 src/slic3r/GUI/PrintHostDialogs.cpp:232
+#: src/slic3r/GUI/Plater.cpp:2969 src/slic3r/GUI/PrintHostDialogs.cpp:260
msgid "Cancelling"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:2972
+#: src/slic3r/GUI/Plater.cpp:2988
msgid "Another export job is currently running."
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:3089
+#: src/slic3r/GUI/Plater.cpp:3105
msgid "Please select the file to reload"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:3124
+#: src/slic3r/GUI/Plater.cpp:3140
msgid "It is not allowed to change the file to reload"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:3124
+#: src/slic3r/GUI/Plater.cpp:3140
msgid "Do you want to retry"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:3142
+#: src/slic3r/GUI/Plater.cpp:3158
msgid "Reload from:"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:3233
+#: src/slic3r/GUI/Plater.cpp:3249
msgid "Unable to reload:"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:3238
+#: src/slic3r/GUI/Plater.cpp:3254
msgid "Error during reload"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:3257
+#: src/slic3r/GUI/Plater.cpp:3273
msgid "Reload all from disk"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:3278
+#: src/slic3r/GUI/Plater.cpp:3294
msgid "Fix Throught NetFabb"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:3543
+#: src/slic3r/GUI/Plater.cpp:3562
msgid "There are active warnings concerning sliced models:\n"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:3554
+#: src/slic3r/GUI/Plater.cpp:3573
msgid "generated warnings"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:3589 src/slic3r/GUI/PrintHostDialogs.cpp:233
+#: src/slic3r/GUI/Plater.cpp:3612 src/slic3r/GUI/PrintHostDialogs.cpp:261
msgid "Cancelled"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:3849 src/slic3r/GUI/Plater.cpp:3871
+#: src/slic3r/GUI/Plater.cpp:3874 src/slic3r/GUI/Plater.cpp:3896
msgid "Remove the selected object"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:3858
+#: src/slic3r/GUI/Plater.cpp:3883
msgid "Add one more instance of the selected object"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:3860
+#: src/slic3r/GUI/Plater.cpp:3885
msgid "Remove one instance of the selected object"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:3862
+#: src/slic3r/GUI/Plater.cpp:3887
msgid "Set number of instances"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:3862
+#: src/slic3r/GUI/Plater.cpp:3887
msgid "Change the number of instances of the selected object"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:3881
+#: src/slic3r/GUI/Plater.cpp:3906
msgid "Reload the selected object from disk"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:3884
+#: src/slic3r/GUI/Plater.cpp:3909
msgid "Export the selected object as STL file"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:3915
+#: src/slic3r/GUI/Plater.cpp:3940
msgid "Along X axis"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:3915
+#: src/slic3r/GUI/Plater.cpp:3940
msgid "Mirror the selected object along the X axis"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:3917
+#: src/slic3r/GUI/Plater.cpp:3942
msgid "Along Y axis"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:3917
+#: src/slic3r/GUI/Plater.cpp:3942
msgid "Mirror the selected object along the Y axis"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:3919
+#: src/slic3r/GUI/Plater.cpp:3944
msgid "Along Z axis"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:3919
+#: src/slic3r/GUI/Plater.cpp:3944
msgid "Mirror the selected object along the Z axis"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:3922
+#: src/slic3r/GUI/Plater.cpp:3947
msgid "Mirror"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:3922
+#: src/slic3r/GUI/Plater.cpp:3947
msgid "Mirror the selected object"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:3934
+#: src/slic3r/GUI/Plater.cpp:3959
msgid "To objects"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:3934 src/slic3r/GUI/Plater.cpp:3954
+#: src/slic3r/GUI/Plater.cpp:3959 src/slic3r/GUI/Plater.cpp:3979
msgid "Split the selected object into individual objects"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:3936
+#: src/slic3r/GUI/Plater.cpp:3961
msgid "To parts"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:3936 src/slic3r/GUI/Plater.cpp:3972
+#: src/slic3r/GUI/Plater.cpp:3961 src/slic3r/GUI/Plater.cpp:3997
msgid "Split the selected object into individual sub-parts"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:3939 src/slic3r/GUI/Plater.cpp:3954
-#: src/slic3r/GUI/Plater.cpp:3972 src/libslic3r/PrintConfig.cpp:3670
+#: src/slic3r/GUI/Plater.cpp:3964 src/slic3r/GUI/Plater.cpp:3979
+#: src/slic3r/GUI/Plater.cpp:3997 src/libslic3r/PrintConfig.cpp:3662
msgid "Split"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:3939
+#: src/slic3r/GUI/Plater.cpp:3964
msgid "Split the selected object"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:3962
+#: src/slic3r/GUI/Plater.cpp:3987
msgid "Optimize the rotation of the object for better print results."
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:4044
+#: src/slic3r/GUI/Plater.cpp:4069
msgid "3D editor view"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:4423
+#: src/slic3r/GUI/Plater.cpp:4445
msgid ""
"%1% printer was active at the time the target Undo / Redo snapshot was "
"taken. Switching to %1% printer requires reloading of %1% presets."
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:4627
+#: src/slic3r/GUI/Plater.cpp:4649
msgid "Load Project"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:4655
+#: src/slic3r/GUI/Plater.cpp:4677
msgid "Import Object"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:4659
+#: src/slic3r/GUI/Plater.cpp:4681
msgid "Import Objects"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:4774
+#: src/slic3r/GUI/Plater.cpp:4751
+msgid "The selected file"
+msgstr ""
+
+#: src/slic3r/GUI/Plater.cpp:4751
+msgid "does not contain valid gcode."
+msgstr ""
+
+#: src/slic3r/GUI/Plater.cpp:4752
+msgid "Error while loading .gcode file"
+msgstr ""
+
+#: src/slic3r/GUI/Plater.cpp:4806
msgid "All objects will be removed, continue?"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:4782
+#: src/slic3r/GUI/Plater.cpp:4814
msgid "Delete Selected Objects"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:4790
+#: src/slic3r/GUI/Plater.cpp:4822
msgid "Increase Instances"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:4824
+#: src/slic3r/GUI/Plater.cpp:4856
msgid "Decrease Instances"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:4855
+#: src/slic3r/GUI/Plater.cpp:4887
msgid "Enter the number of copies:"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:4856
+#: src/slic3r/GUI/Plater.cpp:4888
msgid "Copies of the selected object"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:4860
+#: src/slic3r/GUI/Plater.cpp:4892
#, possible-c-format
msgid "Set numbers of copies to %d"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:4921
+#: src/slic3r/GUI/Plater.cpp:4953
msgid "Cut by Plane"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:4975
+#: src/slic3r/GUI/Plater.cpp:5007
msgid "Save G-code file as:"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:4975
+#: src/slic3r/GUI/Plater.cpp:5007
msgid "Save SL1 file as:"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:5118
+#: src/slic3r/GUI/Plater.cpp:5154
#, possible-c-format
msgid "STL file exported to %s"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:5135
+#: src/slic3r/GUI/Plater.cpp:5171
#, possible-c-format
msgid "AMF file exported to %s"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:5138
+#: src/slic3r/GUI/Plater.cpp:5174
#, possible-c-format
msgid "Error exporting AMF file %s"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:5167
+#: src/slic3r/GUI/Plater.cpp:5203
#, possible-c-format
msgid "3MF file exported to %s"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:5172
+#: src/slic3r/GUI/Plater.cpp:5208
#, possible-c-format
msgid "Error exporting 3MF file %s"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:5706
+#: src/slic3r/GUI/Plater.cpp:5755
msgid "Export"
msgstr ""
-#: src/slic3r/GUI/Plater.cpp:5803
+#: src/slic3r/GUI/Plater.cpp:5756
+msgid "Send to printer"
+msgstr ""
+
+#: src/slic3r/GUI/Plater.cpp:5852
msgid "Paste From Clipboard"
msgstr ""
-#: src/slic3r/GUI/Preferences.cpp:24 src/slic3r/GUI/Tab.cpp:2058
-#: src/slic3r/GUI/Tab.cpp:2240 src/slic3r/GUI/Tab.cpp:2348
+#: src/slic3r/GUI/Preferences.cpp:24 src/slic3r/GUI/Tab.cpp:2071
+#: src/slic3r/GUI/Tab.cpp:2253 src/slic3r/GUI/Tab.cpp:2361
#: src/slic3r/GUI/UnsavedChangesDialog.cpp:1066
msgid "General"
msgstr ""
@@ -5600,8 +5679,8 @@ msgid ""
"even if they are marked as incompatible with the active printer"
msgstr ""
-#: src/slic3r/GUI/Preferences.cpp:120 src/libslic3r/PrintConfig.cpp:3697
-msgid "Single Instance"
+#: src/slic3r/GUI/Preferences.cpp:120 src/libslic3r/PrintConfig.cpp:3689
+msgid "Single instance mode"
msgstr ""
#: src/slic3r/GUI/Preferences.cpp:123
@@ -5613,7 +5692,7 @@ msgstr ""
#: src/slic3r/GUI/Preferences.cpp:125
msgid ""
-"If this is enabled, when staring PrusaSlicer and another instance of same "
+"If this is enabled, when starting PrusaSlicer and another instance of same "
"PrusaSlicer is running, that instance will be reactivated instead."
msgstr ""
@@ -5633,7 +5712,7 @@ msgid "Ask for unsaved changes when closing application"
msgstr ""
#: src/slic3r/GUI/Preferences.cpp:156
-msgid "Always ask for unsaved changes when closing application"
+msgid "When closing the application, always ask for unsaved changes"
msgstr ""
#: src/slic3r/GUI/Preferences.cpp:161
@@ -5670,92 +5749,100 @@ msgstr ""
msgid "If enabled, use free camera. If not enabled, use constrained camera."
msgstr ""
+#: src/slic3r/GUI/Preferences.cpp:198
+msgid "Reverse direction of zoom with mouse wheel"
+msgstr ""
+
#: src/slic3r/GUI/Preferences.cpp:200
+msgid "If enabled, reverses the direction of zoom with mouse wheel"
+msgstr ""
+
+#: src/slic3r/GUI/Preferences.cpp:207
msgid "GUI"
msgstr ""
-#: src/slic3r/GUI/Preferences.cpp:213
+#: src/slic3r/GUI/Preferences.cpp:220
msgid "Show sidebar collapse/expand button"
msgstr ""
-#: src/slic3r/GUI/Preferences.cpp:215
+#: src/slic3r/GUI/Preferences.cpp:222
msgid ""
"If enabled, the button for the collapse sidebar will be appeared in top "
"right corner of the 3D Scene"
msgstr ""
-#: src/slic3r/GUI/Preferences.cpp:220
+#: src/slic3r/GUI/Preferences.cpp:227
msgid "Use custom size for toolbar icons"
msgstr ""
-#: src/slic3r/GUI/Preferences.cpp:222
+#: src/slic3r/GUI/Preferences.cpp:229
msgid "If enabled, you can change size of toolbar icons manually."
msgstr ""
-#: src/slic3r/GUI/Preferences.cpp:230
+#: src/slic3r/GUI/Preferences.cpp:236
msgid "Sequential slider applied only to top layer"
msgstr ""
-#: src/slic3r/GUI/Preferences.cpp:232
+#: src/slic3r/GUI/Preferences.cpp:238
msgid ""
"If enabled, changes made using the sequential slider, in preview, apply only "
-"to gcode top layer, if disabled, changes made using the sequential slider, "
+"to gcode top layer. If disabled, changes made using the sequential slider, "
"in preview, apply to the whole gcode."
msgstr ""
-#: src/slic3r/GUI/Preferences.cpp:255
+#: src/slic3r/GUI/Preferences.cpp:262
msgid "Render"
msgstr ""
-#: src/slic3r/GUI/Preferences.cpp:261
+#: src/slic3r/GUI/Preferences.cpp:268
msgid "Use environment map"
msgstr ""
-#: src/slic3r/GUI/Preferences.cpp:263
+#: src/slic3r/GUI/Preferences.cpp:270
msgid "If enabled, renders object using the environment map."
msgstr ""
-#: src/slic3r/GUI/Preferences.cpp:299
+#: src/slic3r/GUI/Preferences.cpp:306
#, possible-c-format
msgid "You need to restart %s to make the changes effective."
msgstr ""
-#: src/slic3r/GUI/Preferences.cpp:376
+#: src/slic3r/GUI/Preferences.cpp:383
msgid "Icon size in a respect to the default size"
msgstr ""
-#: src/slic3r/GUI/Preferences.cpp:391
+#: src/slic3r/GUI/Preferences.cpp:398
msgid "Select toolbar icon size in respect to the default one."
msgstr ""
-#: src/slic3r/GUI/Preferences.cpp:422
+#: src/slic3r/GUI/Preferences.cpp:429
msgid "Old regular layout with the tab bar"
msgstr ""
-#: src/slic3r/GUI/Preferences.cpp:423
-msgid "New layout without the tab bar on the plater"
+#: src/slic3r/GUI/Preferences.cpp:430
+msgid "New layout, access via settings button in the top menu"
msgstr ""
-#: src/slic3r/GUI/Preferences.cpp:424
-msgid "Settings will be shown in the non-modal dialog"
+#: src/slic3r/GUI/Preferences.cpp:431
+msgid "Settings in non-modal window"
msgstr ""
-#: src/slic3r/GUI/Preferences.cpp:433
-msgid "Settings layout mode"
+#: src/slic3r/GUI/Preferences.cpp:440
+msgid "Layout Options"
msgstr ""
#: src/slic3r/GUI/PresetComboBoxes.cpp:188
#: src/slic3r/GUI/PresetComboBoxes.cpp:226
-#: src/slic3r/GUI/PresetComboBoxes.cpp:724
-#: src/slic3r/GUI/PresetComboBoxes.cpp:774
-#: src/slic3r/GUI/PresetComboBoxes.cpp:886
-#: src/slic3r/GUI/PresetComboBoxes.cpp:930
+#: src/slic3r/GUI/PresetComboBoxes.cpp:752
+#: src/slic3r/GUI/PresetComboBoxes.cpp:802
+#: src/slic3r/GUI/PresetComboBoxes.cpp:916
+#: src/slic3r/GUI/PresetComboBoxes.cpp:960
msgid "System presets"
msgstr ""
#: src/slic3r/GUI/PresetComboBoxes.cpp:230
-#: src/slic3r/GUI/PresetComboBoxes.cpp:778
-#: src/slic3r/GUI/PresetComboBoxes.cpp:934
+#: src/slic3r/GUI/PresetComboBoxes.cpp:806
+#: src/slic3r/GUI/PresetComboBoxes.cpp:964
msgid "User presets"
msgstr ""
@@ -5763,51 +5850,55 @@ msgstr ""
msgid "Incompatible presets"
msgstr ""
-#: src/slic3r/GUI/PresetComboBoxes.cpp:566
-msgid "Click to edit preset"
-msgstr ""
-
-#: src/slic3r/GUI/PresetComboBoxes.cpp:622
-#: src/slic3r/GUI/PresetComboBoxes.cpp:669
-msgid "Add/Remove presets"
-msgstr ""
-
-#: src/slic3r/GUI/PresetComboBoxes.cpp:627
-#: src/slic3r/GUI/PresetComboBoxes.cpp:674
-msgid "Add physical printer"
-msgstr ""
-
-#: src/slic3r/GUI/PresetComboBoxes.cpp:641
-msgid "Edit preset"
-msgstr ""
-
-#: src/slic3r/GUI/PresetComboBoxes.cpp:645
-msgid "Edit physical printer"
-msgstr ""
-
-#: src/slic3r/GUI/PresetComboBoxes.cpp:652
-msgid "Delete physical printer"
-msgstr ""
-
-#: src/slic3r/GUI/PresetComboBoxes.cpp:658
+#: src/slic3r/GUI/PresetComboBoxes.cpp:276
msgid "Are you sure you want to delete \"%1%\" printer?"
msgstr ""
-#: src/slic3r/GUI/PresetComboBoxes.cpp:659
+#: src/slic3r/GUI/PresetComboBoxes.cpp:278
msgid "Delete Physical Printer"
msgstr ""
-#: src/slic3r/GUI/PresetComboBoxes.cpp:789
-#: src/slic3r/GUI/PresetComboBoxes.cpp:948
+#: src/slic3r/GUI/PresetComboBoxes.cpp:615
+msgid "Click to edit preset"
+msgstr ""
+
+#: src/slic3r/GUI/PresetComboBoxes.cpp:671
+#: src/slic3r/GUI/PresetComboBoxes.cpp:701
+msgid "Add/Remove presets"
+msgstr ""
+
+#: src/slic3r/GUI/PresetComboBoxes.cpp:676
+#: src/slic3r/GUI/PresetComboBoxes.cpp:706 src/slic3r/GUI/Tab.cpp:2960
+msgid "Add physical printer"
+msgstr ""
+
+#: src/slic3r/GUI/PresetComboBoxes.cpp:690
+msgid "Edit preset"
+msgstr ""
+
+#: src/slic3r/GUI/PresetComboBoxes.cpp:694 src/slic3r/GUI/Tab.cpp:2960
+msgid "Edit physical printer"
+msgstr ""
+
+#: src/slic3r/GUI/PresetComboBoxes.cpp:697
+msgid "Delete physical printer"
+msgstr ""
+
+#: src/slic3r/GUI/PresetComboBoxes.cpp:817
+#: src/slic3r/GUI/PresetComboBoxes.cpp:978
msgid "Physical printers"
msgstr ""
-#: src/slic3r/GUI/PresetComboBoxes.cpp:813
+#: src/slic3r/GUI/PresetComboBoxes.cpp:841
+msgid "Add/Remove filaments"
+msgstr ""
+
+#: src/slic3r/GUI/PresetComboBoxes.cpp:843
msgid "Add/Remove materials"
msgstr ""
-#: src/slic3r/GUI/PresetComboBoxes.cpp:815
-#: src/slic3r/GUI/PresetComboBoxes.cpp:972
+#: src/slic3r/GUI/PresetComboBoxes.cpp:845
+#: src/slic3r/GUI/PresetComboBoxes.cpp:1002
msgid "Add/Remove printers"
msgstr ""
@@ -5960,68 +6051,72 @@ msgstr ""
msgid "Bottom is open."
msgstr ""
-#: src/slic3r/GUI/PrintHostDialogs.cpp:33
+#: src/slic3r/GUI/PrintHostDialogs.cpp:34
msgid "Send G-Code to printer host"
msgstr ""
-#: src/slic3r/GUI/PrintHostDialogs.cpp:33
+#: src/slic3r/GUI/PrintHostDialogs.cpp:34
msgid "Upload to Printer Host with the following filename:"
msgstr ""
-#: src/slic3r/GUI/PrintHostDialogs.cpp:35
+#: src/slic3r/GUI/PrintHostDialogs.cpp:36
msgid "Start printing after upload"
msgstr ""
-#: src/slic3r/GUI/PrintHostDialogs.cpp:42
+#: src/slic3r/GUI/PrintHostDialogs.cpp:44
msgid "Use forward slashes ( / ) as a directory separator if needed."
msgstr ""
-#: src/slic3r/GUI/PrintHostDialogs.cpp:147
+#: src/slic3r/GUI/PrintHostDialogs.cpp:57
+msgid "Group"
+msgstr ""
+
+#: src/slic3r/GUI/PrintHostDialogs.cpp:174
msgid "ID"
msgstr ""
-#: src/slic3r/GUI/PrintHostDialogs.cpp:148
+#: src/slic3r/GUI/PrintHostDialogs.cpp:175
msgid "Progress"
msgstr ""
-#: src/slic3r/GUI/PrintHostDialogs.cpp:149
+#: src/slic3r/GUI/PrintHostDialogs.cpp:176
msgid "Status"
msgstr ""
-#: src/slic3r/GUI/PrintHostDialogs.cpp:150
+#: src/slic3r/GUI/PrintHostDialogs.cpp:177
msgid "Host"
msgstr ""
-#: src/slic3r/GUI/PrintHostDialogs.cpp:151
+#: src/slic3r/GUI/PrintHostDialogs.cpp:178
msgid "Filename"
msgstr ""
-#: src/slic3r/GUI/PrintHostDialogs.cpp:152
+#: src/slic3r/GUI/PrintHostDialogs.cpp:179
msgid "Error Message"
msgstr ""
-#: src/slic3r/GUI/PrintHostDialogs.cpp:155
+#: src/slic3r/GUI/PrintHostDialogs.cpp:182
msgid "Cancel selected"
msgstr ""
-#: src/slic3r/GUI/PrintHostDialogs.cpp:157
+#: src/slic3r/GUI/PrintHostDialogs.cpp:184
msgid "Show error message"
msgstr ""
-#: src/slic3r/GUI/PrintHostDialogs.cpp:198
-#: src/slic3r/GUI/PrintHostDialogs.cpp:229
+#: src/slic3r/GUI/PrintHostDialogs.cpp:226
+#: src/slic3r/GUI/PrintHostDialogs.cpp:257
msgid "Enqueued"
msgstr ""
-#: src/slic3r/GUI/PrintHostDialogs.cpp:230
+#: src/slic3r/GUI/PrintHostDialogs.cpp:258
msgid "Uploading"
msgstr ""
-#: src/slic3r/GUI/PrintHostDialogs.cpp:234
+#: src/slic3r/GUI/PrintHostDialogs.cpp:262
msgid "Completed"
msgstr ""
-#: src/slic3r/GUI/PrintHostDialogs.cpp:272
+#: src/slic3r/GUI/PrintHostDialogs.cpp:300
msgid "Error uploading to print host:"
msgstr ""
@@ -6030,12 +6125,12 @@ msgid "NO RAMMING AT ALL"
msgstr ""
#: src/slic3r/GUI/RammingChart.cpp:76 src/slic3r/GUI/WipeTowerDialog.cpp:83
-#: src/libslic3r/PrintConfig.cpp:680 src/libslic3r/PrintConfig.cpp:724
-#: src/libslic3r/PrintConfig.cpp:739 src/libslic3r/PrintConfig.cpp:2551
-#: src/libslic3r/PrintConfig.cpp:2560 src/libslic3r/PrintConfig.cpp:2670
-#: src/libslic3r/PrintConfig.cpp:2678 src/libslic3r/PrintConfig.cpp:2686
-#: src/libslic3r/PrintConfig.cpp:2693 src/libslic3r/PrintConfig.cpp:2701
-#: src/libslic3r/PrintConfig.cpp:2709
+#: src/libslic3r/PrintConfig.cpp:687 src/libslic3r/PrintConfig.cpp:731
+#: src/libslic3r/PrintConfig.cpp:746 src/libslic3r/PrintConfig.cpp:2542
+#: src/libslic3r/PrintConfig.cpp:2551 src/libslic3r/PrintConfig.cpp:2661
+#: src/libslic3r/PrintConfig.cpp:2669 src/libslic3r/PrintConfig.cpp:2677
+#: src/libslic3r/PrintConfig.cpp:2684 src/libslic3r/PrintConfig.cpp:2692
+#: src/libslic3r/PrintConfig.cpp:2700
msgid "s"
msgstr ""
@@ -6043,85 +6138,87 @@ msgstr ""
msgid "Volumetric speed"
msgstr ""
-#: src/slic3r/GUI/RammingChart.cpp:81 src/libslic3r/PrintConfig.cpp:637
-#: src/libslic3r/PrintConfig.cpp:1358
+#: src/slic3r/GUI/RammingChart.cpp:81 src/libslic3r/PrintConfig.cpp:644
+#: src/libslic3r/PrintConfig.cpp:1367
msgid "mm³/s"
msgstr ""
-#: src/slic3r/GUI/SavePresetDialog.cpp:72
+#: src/slic3r/GUI/SavePresetDialog.cpp:57
#, possible-c-format
msgid "Save %s as:"
msgstr ""
-#: src/slic3r/GUI/SavePresetDialog.cpp:125
+#: src/slic3r/GUI/SavePresetDialog.cpp:110
msgid "the following suffix is not allowed:"
msgstr ""
-#: src/slic3r/GUI/SavePresetDialog.cpp:131
+#: src/slic3r/GUI/SavePresetDialog.cpp:116
msgid "The supplied name is not available."
msgstr ""
-#: src/slic3r/GUI/SavePresetDialog.cpp:137
+#: src/slic3r/GUI/SavePresetDialog.cpp:122
msgid "Cannot overwrite a system profile."
msgstr ""
-#: src/slic3r/GUI/SavePresetDialog.cpp:142
+#: src/slic3r/GUI/SavePresetDialog.cpp:127
msgid "Cannot overwrite an external profile."
msgstr ""
-#: src/slic3r/GUI/SavePresetDialog.cpp:148
+#: src/slic3r/GUI/SavePresetDialog.cpp:134
msgid "Preset with name \"%1%\" already exists."
msgstr ""
-#: src/slic3r/GUI/SavePresetDialog.cpp:150
-msgid "And selected preset is imcopatible with selected printer."
+#: src/slic3r/GUI/SavePresetDialog.cpp:136
+msgid ""
+"Preset with name \"%1%\" already exists and is imcopatible with selected "
+"printer."
msgstr ""
-#: src/slic3r/GUI/SavePresetDialog.cpp:151
+#: src/slic3r/GUI/SavePresetDialog.cpp:137
msgid "Note: This preset will be replaced after saving"
msgstr ""
-#: src/slic3r/GUI/SavePresetDialog.cpp:156
-msgid "The empty name is not available."
+#: src/slic3r/GUI/SavePresetDialog.cpp:142
+msgid "The name cannot be empty."
msgstr ""
-#: src/slic3r/GUI/SavePresetDialog.cpp:190
-#: src/slic3r/GUI/SavePresetDialog.cpp:196
+#: src/slic3r/GUI/SavePresetDialog.cpp:176
+#: src/slic3r/GUI/SavePresetDialog.cpp:182
msgid "Save preset"
msgstr ""
-#: src/slic3r/GUI/SavePresetDialog.cpp:219
+#: src/slic3r/GUI/SavePresetDialog.cpp:205
msgctxt "PresetName"
msgid "Copy"
msgstr ""
-#: src/slic3r/GUI/SavePresetDialog.cpp:277
+#: src/slic3r/GUI/SavePresetDialog.cpp:263
msgid ""
"You have selected physical printer \"%1%\" \n"
"with related printer preset \"%2%\""
msgstr ""
-#: src/slic3r/GUI/SavePresetDialog.cpp:310
+#: src/slic3r/GUI/SavePresetDialog.cpp:296
msgid "What would you like to do with \"%1%\" preset after saving?"
msgstr ""
-#: src/slic3r/GUI/SavePresetDialog.cpp:313
+#: src/slic3r/GUI/SavePresetDialog.cpp:299
msgid "Change \"%1%\" to \"%2%\" for this physical printer \"%3%\""
msgstr ""
-#: src/slic3r/GUI/SavePresetDialog.cpp:314
+#: src/slic3r/GUI/SavePresetDialog.cpp:300
msgid "Add \"%1%\" as a next preset for the the physical printer \"%2%\""
msgstr ""
-#: src/slic3r/GUI/SavePresetDialog.cpp:315
+#: src/slic3r/GUI/SavePresetDialog.cpp:301
msgid "Just switch to \"%1%\" preset"
msgstr ""
-#: src/slic3r/GUI/Search.cpp:77 src/slic3r/GUI/Tab.cpp:2378
+#: src/slic3r/GUI/Search.cpp:77 src/slic3r/GUI/Tab.cpp:2391
msgid "Stealth"
msgstr ""
-#: src/slic3r/GUI/Search.cpp:77 src/slic3r/GUI/Tab.cpp:2372
+#: src/slic3r/GUI/Search.cpp:77 src/slic3r/GUI/Tab.cpp:2385
msgid "Normal"
msgstr ""
@@ -6157,15 +6254,15 @@ msgstr ""
msgid "Selection-Remove All"
msgstr ""
-#: src/slic3r/GUI/Selection.cpp:988
+#: src/slic3r/GUI/Selection.cpp:1006
msgid "Scale To Fit"
msgstr ""
-#: src/slic3r/GUI/Selection.cpp:1515
+#: src/slic3r/GUI/Selection.cpp:1533
msgid "Set Printable Instance"
msgstr ""
-#: src/slic3r/GUI/Selection.cpp:1515
+#: src/slic3r/GUI/Selection.cpp:1533
msgid "Set Unprintable Instance"
msgstr ""
@@ -6177,350 +6274,350 @@ msgstr ""
msgid "Copy to Clipboard"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:101 src/libslic3r/PrintConfig.cpp:299
+#: src/slic3r/GUI/Tab.cpp:111 src/libslic3r/PrintConfig.cpp:306
msgid "Compatible printers"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:102
+#: src/slic3r/GUI/Tab.cpp:112
msgid "Select the printers this profile is compatible with."
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:107 src/libslic3r/PrintConfig.cpp:314
+#: src/slic3r/GUI/Tab.cpp:117 src/libslic3r/PrintConfig.cpp:321
msgid "Compatible print profiles"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:108
+#: src/slic3r/GUI/Tab.cpp:118
msgid "Select the print profiles this profile is compatible with."
msgstr ""
#. TRN "Save current Settings"
-#: src/slic3r/GUI/Tab.cpp:203
+#: src/slic3r/GUI/Tab.cpp:213
#, possible-c-format
msgid "Save current %s"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:204
+#: src/slic3r/GUI/Tab.cpp:214
msgid "Delete this preset"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:210
+#: src/slic3r/GUI/Tab.cpp:218
msgid ""
"Hover the cursor over buttons to find more information \n"
"or click this button."
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:214
-msgid "Click to start a search or use %1% shortcut"
+#: src/slic3r/GUI/Tab.cpp:222
+msgid "Search in settings [%1%]"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1224
+#: src/slic3r/GUI/Tab.cpp:1228
msgid "Detach from system preset"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1237
+#: src/slic3r/GUI/Tab.cpp:1241
msgid ""
"A copy of the current system preset will be created, which will be detached "
"from the system preset."
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1238
+#: src/slic3r/GUI/Tab.cpp:1242
msgid ""
"The current custom preset will be detached from the parent system preset."
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1241
+#: src/slic3r/GUI/Tab.cpp:1245
msgid "Modifications to the current profile will be saved."
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1244
+#: src/slic3r/GUI/Tab.cpp:1248
msgid ""
"This action is not revertable.\n"
"Do you want to proceed?"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1246
+#: src/slic3r/GUI/Tab.cpp:1250
msgid "Detach preset"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1272
+#: src/slic3r/GUI/Tab.cpp:1276
msgid "This is a default preset."
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1274
+#: src/slic3r/GUI/Tab.cpp:1278
msgid "This is a system preset."
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1276
+#: src/slic3r/GUI/Tab.cpp:1280
msgid "Current preset is inherited from the default preset."
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1278
+#: src/slic3r/GUI/Tab.cpp:1282
msgid "Current preset is inherited from"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1282
+#: src/slic3r/GUI/Tab.cpp:1286
msgid "It can't be deleted or modified."
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1283
+#: src/slic3r/GUI/Tab.cpp:1287
msgid ""
"Any modifications should be saved as a new preset inherited from this one."
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1284
+#: src/slic3r/GUI/Tab.cpp:1288
msgid "To do that please specify a new name for the preset."
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1288
+#: src/slic3r/GUI/Tab.cpp:1292
msgid "Additional information:"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1294
+#: src/slic3r/GUI/Tab.cpp:1298
msgid "printer model"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1302
+#: src/slic3r/GUI/Tab.cpp:1306
msgid "default print profile"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1305
+#: src/slic3r/GUI/Tab.cpp:1309
msgid "default filament profile"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1319
+#: src/slic3r/GUI/Tab.cpp:1323
msgid "default SLA material profile"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1323
+#: src/slic3r/GUI/Tab.cpp:1327
msgid "default SLA print profile"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1331
+#: src/slic3r/GUI/Tab.cpp:1335
msgid "full profile name"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1332
+#: src/slic3r/GUI/Tab.cpp:1336
msgid "symbolic profile name"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1370 src/slic3r/GUI/Tab.cpp:4008
+#: src/slic3r/GUI/Tab.cpp:1374 src/slic3r/GUI/Tab.cpp:4007
msgid "Layers and perimeters"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1375
+#: src/slic3r/GUI/Tab.cpp:1380
msgid "Vertical shells"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1386
+#: src/slic3r/GUI/Tab.cpp:1392
msgid "Horizontal shells"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1387 src/libslic3r/PrintConfig.cpp:1895
+#: src/slic3r/GUI/Tab.cpp:1393 src/libslic3r/PrintConfig.cpp:1886
msgid "Solid layers"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1391
+#: src/slic3r/GUI/Tab.cpp:1398
msgid "Minimum shell thickness"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1402
+#: src/slic3r/GUI/Tab.cpp:1409
msgid "Quality (slower slicing)"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1426
+#: src/slic3r/GUI/Tab.cpp:1434
msgid "Reducing printing time"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1438
+#: src/slic3r/GUI/Tab.cpp:1446
msgid "Skirt and brim"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1456
+#: src/slic3r/GUI/Tab.cpp:1466
msgid "Raft"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1460
+#: src/slic3r/GUI/Tab.cpp:1470
msgid "Options for support material and raft"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1475
+#: src/slic3r/GUI/Tab.cpp:1485
msgid "Speed for print moves"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1488
+#: src/slic3r/GUI/Tab.cpp:1498
msgid "Speed for non-print moves"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1491
+#: src/slic3r/GUI/Tab.cpp:1501
msgid "Modifiers"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1494
+#: src/slic3r/GUI/Tab.cpp:1504
msgid "Acceleration control (advanced)"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1501
+#: src/slic3r/GUI/Tab.cpp:1511
msgid "Autospeed (advanced)"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1509
+#: src/slic3r/GUI/Tab.cpp:1519
msgid "Multiple Extruders"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1517
+#: src/slic3r/GUI/Tab.cpp:1527
msgid "Ooze prevention"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1535
+#: src/slic3r/GUI/Tab.cpp:1545
msgid "Extrusion width"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1545
+#: src/slic3r/GUI/Tab.cpp:1555
msgid "Overlap"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1548
+#: src/slic3r/GUI/Tab.cpp:1558
msgid "Flow"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1557
+#: src/slic3r/GUI/Tab.cpp:1567
msgid "Other"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1560 src/slic3r/GUI/Tab.cpp:4084
+#: src/slic3r/GUI/Tab.cpp:1570 src/slic3r/GUI/Tab.cpp:4083
msgid "Output options"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1561
+#: src/slic3r/GUI/Tab.cpp:1571
msgid "Sequential printing"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1563
+#: src/slic3r/GUI/Tab.cpp:1573
msgid "Extruder clearance (mm)"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1568 src/slic3r/GUI/Tab.cpp:4085
+#: src/slic3r/GUI/Tab.cpp:1578 src/slic3r/GUI/Tab.cpp:4084
msgid "Output file"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1575 src/libslic3r/PrintConfig.cpp:1561
+#: src/slic3r/GUI/Tab.cpp:1585 src/libslic3r/PrintConfig.cpp:1572
msgid "Post-processing scripts"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1581 src/slic3r/GUI/Tab.cpp:1582
-#: src/slic3r/GUI/Tab.cpp:1887 src/slic3r/GUI/Tab.cpp:1888
-#: src/slic3r/GUI/Tab.cpp:2221 src/slic3r/GUI/Tab.cpp:2222
-#: src/slic3r/GUI/Tab.cpp:2297 src/slic3r/GUI/Tab.cpp:2298
-#: src/slic3r/GUI/Tab.cpp:3951 src/slic3r/GUI/Tab.cpp:3952
+#: src/slic3r/GUI/Tab.cpp:1591 src/slic3r/GUI/Tab.cpp:1592
+#: src/slic3r/GUI/Tab.cpp:1900 src/slic3r/GUI/Tab.cpp:1901
+#: src/slic3r/GUI/Tab.cpp:2234 src/slic3r/GUI/Tab.cpp:2235
+#: src/slic3r/GUI/Tab.cpp:2310 src/slic3r/GUI/Tab.cpp:2311
+#: src/slic3r/GUI/Tab.cpp:3950 src/slic3r/GUI/Tab.cpp:3951
msgid "Notes"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1588 src/slic3r/GUI/Tab.cpp:1895
-#: src/slic3r/GUI/Tab.cpp:2228 src/slic3r/GUI/Tab.cpp:2304
-#: src/slic3r/GUI/Tab.cpp:3959 src/slic3r/GUI/Tab.cpp:4090
+#: src/slic3r/GUI/Tab.cpp:1598 src/slic3r/GUI/Tab.cpp:1908
+#: src/slic3r/GUI/Tab.cpp:2241 src/slic3r/GUI/Tab.cpp:2317
+#: src/slic3r/GUI/Tab.cpp:3958 src/slic3r/GUI/Tab.cpp:4089
msgid "Dependencies"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1589 src/slic3r/GUI/Tab.cpp:1896
-#: src/slic3r/GUI/Tab.cpp:2229 src/slic3r/GUI/Tab.cpp:2305
-#: src/slic3r/GUI/Tab.cpp:3960 src/slic3r/GUI/Tab.cpp:4091
+#: src/slic3r/GUI/Tab.cpp:1599 src/slic3r/GUI/Tab.cpp:1909
+#: src/slic3r/GUI/Tab.cpp:2242 src/slic3r/GUI/Tab.cpp:2318
+#: src/slic3r/GUI/Tab.cpp:3959 src/slic3r/GUI/Tab.cpp:4090
msgid "Profile dependencies"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1669
+#: src/slic3r/GUI/Tab.cpp:1679
msgid "Filament Overrides"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1779
+#: src/slic3r/GUI/Tab.cpp:1789
msgid "Temperature"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1785
+#: src/slic3r/GUI/Tab.cpp:1795
msgid "Bed"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1790
+#: src/slic3r/GUI/Tab.cpp:1800
msgid "Cooling"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1791 src/libslic3r/PrintConfig.cpp:1463
-#: src/libslic3r/PrintConfig.cpp:2343
+#: src/slic3r/GUI/Tab.cpp:1802 src/libslic3r/PrintConfig.cpp:1474
+#: src/libslic3r/PrintConfig.cpp:2334
msgid "Enable"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1802
+#: src/slic3r/GUI/Tab.cpp:1813
msgid "Fan settings"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1811
+#: src/slic3r/GUI/Tab.cpp:1823
msgid "Cooling thresholds"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1817
+#: src/slic3r/GUI/Tab.cpp:1829
msgid "Filament properties"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1824
+#: src/slic3r/GUI/Tab.cpp:1836
msgid "Print speed override"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1834
+#: src/slic3r/GUI/Tab.cpp:1846
msgid "Wipe tower parameters"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1837
+#: src/slic3r/GUI/Tab.cpp:1849
msgid "Toolchange parameters with single extruder MM printers"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1850
+#: src/slic3r/GUI/Tab.cpp:1862
msgid "Ramming settings"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1872 src/slic3r/GUI/Tab.cpp:2160
-#: src/libslic3r/PrintConfig.cpp:1978
+#: src/slic3r/GUI/Tab.cpp:1885 src/slic3r/GUI/Tab.cpp:2173
+#: src/libslic3r/PrintConfig.cpp:1969
msgid "Custom G-code"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1873 src/slic3r/GUI/Tab.cpp:2161
-#: src/libslic3r/PrintConfig.cpp:1928 src/libslic3r/PrintConfig.cpp:1943
+#: src/slic3r/GUI/Tab.cpp:1886 src/slic3r/GUI/Tab.cpp:2174
+#: src/libslic3r/PrintConfig.cpp:1919 src/libslic3r/PrintConfig.cpp:1934
msgid "Start G-code"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1880 src/slic3r/GUI/Tab.cpp:2168
-#: src/libslic3r/PrintConfig.cpp:419 src/libslic3r/PrintConfig.cpp:429
+#: src/slic3r/GUI/Tab.cpp:1893 src/slic3r/GUI/Tab.cpp:2181
+#: src/libslic3r/PrintConfig.cpp:426 src/libslic3r/PrintConfig.cpp:436
msgid "End G-code"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:1930
+#: src/slic3r/GUI/Tab.cpp:1943
msgid "Volumetric flow hints not available"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:2026
+#: src/slic3r/GUI/Tab.cpp:2039
msgid ""
"Note: All parameters from this group are moved to the Physical Printer "
"settings (see changelog).\n"
"\n"
"A new Physical Printer profile is created by clicking on the \"cog\" icon "
-"right of the Printer profiles combo box, by selecting the \"add or remove "
-"printers\" item in the Printer combo box. The Physical Printer profile "
-"editor opens also when clicking on the \"cog\" icon in the Printer settings "
-"tab. The Physical Printer profiles are being stored into PrusaSlicer/"
+"right of the Printer profiles combo box, by selecting the \"Add physical "
+"printer\" item in the Printer combo box. The Physical Printer profile editor "
+"opens also when clicking on the \"cog\" icon in the Printer settings tab. "
+"The Physical Printer profiles are being stored into PrusaSlicer/"
"physical_printer directory."
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:2059 src/slic3r/GUI/Tab.cpp:2241
+#: src/slic3r/GUI/Tab.cpp:2072 src/slic3r/GUI/Tab.cpp:2254
msgid "Size and coordinates"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:2068 src/slic3r/GUI/UnsavedChangesDialog.cpp:1066
+#: src/slic3r/GUI/Tab.cpp:2081 src/slic3r/GUI/UnsavedChangesDialog.cpp:1066
msgid "Capabilities"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:2073
+#: src/slic3r/GUI/Tab.cpp:2086
msgid "Number of extruders of the printer."
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:2101
+#: src/slic3r/GUI/Tab.cpp:2114
msgid ""
"Single Extruder Multi Material is selected, \n"
"and all extruders must have the same diameter.\n"
@@ -6528,227 +6625,231 @@ msgid ""
"nozzle diameter value?"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:2104 src/slic3r/GUI/Tab.cpp:2509
-#: src/libslic3r/PrintConfig.cpp:1434
+#: src/slic3r/GUI/Tab.cpp:2117 src/slic3r/GUI/Tab.cpp:2522
+#: src/libslic3r/PrintConfig.cpp:1443
msgid "Nozzle diameter"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:2175 src/libslic3r/PrintConfig.cpp:187
+#: src/slic3r/GUI/Tab.cpp:2188 src/libslic3r/PrintConfig.cpp:194
msgid "Before layer change G-code"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:2182 src/libslic3r/PrintConfig.cpp:1173
+#: src/slic3r/GUI/Tab.cpp:2195 src/libslic3r/PrintConfig.cpp:1182
msgid "After layer change G-code"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:2189 src/libslic3r/PrintConfig.cpp:2236
+#: src/slic3r/GUI/Tab.cpp:2202 src/libslic3r/PrintConfig.cpp:2227
msgid "Tool change G-code"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:2196
+#: src/slic3r/GUI/Tab.cpp:2209
msgid "Between objects G-code (for sequential printing)"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:2203
+#: src/slic3r/GUI/Tab.cpp:2216
msgid "Color Change G-code"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:2209 src/libslic3r/PrintConfig.cpp:1969
+#: src/slic3r/GUI/Tab.cpp:2222 src/libslic3r/PrintConfig.cpp:1960
msgid "Pause Print G-code"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:2215
+#: src/slic3r/GUI/Tab.cpp:2228
msgid "Template Custom G-code"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:2248
+#: src/slic3r/GUI/Tab.cpp:2261
msgid "Display"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:2263
+#: src/slic3r/GUI/Tab.cpp:2276
msgid "Tilt"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:2264
+#: src/slic3r/GUI/Tab.cpp:2277
msgid "Tilt time"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:2270 src/slic3r/GUI/Tab.cpp:3935
+#: src/slic3r/GUI/Tab.cpp:2283 src/slic3r/GUI/Tab.cpp:3934
msgid "Corrections"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:2287 src/slic3r/GUI/Tab.cpp:3931
+#: src/slic3r/GUI/Tab.cpp:2300 src/slic3r/GUI/Tab.cpp:3930
msgid "Exposure"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:2346 src/slic3r/GUI/Tab.cpp:2442
-#: src/libslic3r/PrintConfig.cpp:1202 src/libslic3r/PrintConfig.cpp:1237
-#: src/libslic3r/PrintConfig.cpp:1254 src/libslic3r/PrintConfig.cpp:1271
-#: src/libslic3r/PrintConfig.cpp:1287 src/libslic3r/PrintConfig.cpp:1297
-#: src/libslic3r/PrintConfig.cpp:1307 src/libslic3r/PrintConfig.cpp:1317
+#: src/slic3r/GUI/Tab.cpp:2359 src/slic3r/GUI/Tab.cpp:2455
+#: src/libslic3r/PrintConfig.cpp:1211 src/libslic3r/PrintConfig.cpp:1246
+#: src/libslic3r/PrintConfig.cpp:1263 src/libslic3r/PrintConfig.cpp:1280
+#: src/libslic3r/PrintConfig.cpp:1296 src/libslic3r/PrintConfig.cpp:1306
+#: src/libslic3r/PrintConfig.cpp:1316 src/libslic3r/PrintConfig.cpp:1326
msgid "Machine limits"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:2371
+#: src/slic3r/GUI/Tab.cpp:2384
msgid "Values in this column are for Normal mode"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:2377
+#: src/slic3r/GUI/Tab.cpp:2390
msgid "Values in this column are for Stealth mode"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:2386
+#: src/slic3r/GUI/Tab.cpp:2399
msgid "Maximum feedrates"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:2391
+#: src/slic3r/GUI/Tab.cpp:2404
msgid "Maximum accelerations"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:2398
+#: src/slic3r/GUI/Tab.cpp:2411
msgid "Jerk limits"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:2403
+#: src/slic3r/GUI/Tab.cpp:2416
msgid "Minimum feedrates"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:2467 src/slic3r/GUI/Tab.cpp:2475
+#: src/slic3r/GUI/Tab.cpp:2480 src/slic3r/GUI/Tab.cpp:2488
msgid "Single extruder MM setup"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:2476
+#: src/slic3r/GUI/Tab.cpp:2489
msgid "Single extruder multimaterial parameters"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:2507
+#: src/slic3r/GUI/Tab.cpp:2520
msgid ""
"This is a single extruder multimaterial printer, diameters of all extruders "
"will be set to the new value. Do you want to proceed?"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:2531
+#: src/slic3r/GUI/Tab.cpp:2544
msgid "Layer height limits"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:2536
+#: src/slic3r/GUI/Tab.cpp:2549
msgid "Position (for multi-extruder printers)"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:2542
+#: src/slic3r/GUI/Tab.cpp:2555
msgid "Only lift Z"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:2555
+#: src/slic3r/GUI/Tab.cpp:2568
msgid ""
"Retraction when tool is disabled (advanced settings for multi-extruder "
"setups)"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:2564
+#: src/slic3r/GUI/Tab.cpp:2575
msgid "Reset to Filament Color"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:2731
+#: src/slic3r/GUI/Tab.cpp:2753
msgid ""
"The Wipe option is not available when using the Firmware Retraction mode.\n"
"\n"
"Shall I disable it in order to enable Firmware Retraction?"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:2733
+#: src/slic3r/GUI/Tab.cpp:2755
msgid "Firmware Retraction"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:3323
+#: src/slic3r/GUI/Tab.cpp:3341
msgid "Detached"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:3386
+#: src/slic3r/GUI/Tab.cpp:3404
msgid "remove"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:3386
+#: src/slic3r/GUI/Tab.cpp:3404
msgid "delete"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:3392
+#: src/slic3r/GUI/Tab.cpp:3413
+msgid "It's a last preset for this physical printer."
+msgstr ""
+
+#: src/slic3r/GUI/Tab.cpp:3418
msgid ""
"Are you sure you want to delete \"%1%\" preset from the physical printer "
"\"%2%\"?"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:3404
-msgid "Next physical printer(s) has/have selected preset"
+#: src/slic3r/GUI/Tab.cpp:3430
+msgid ""
+"The physical printer(s) below is based on the preset, you are going to "
+"delete."
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:3408
+#: src/slic3r/GUI/Tab.cpp:3434
msgid ""
"Note, that selected preset will be deleted from this/those printer(s) too."
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:3412
-msgid "Next physical printer(s) has/have one and only selected preset"
+#: src/slic3r/GUI/Tab.cpp:3438
+msgid ""
+"The physical printer(s) below is based only on the preset, you are going to "
+"delete."
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:3416
+#: src/slic3r/GUI/Tab.cpp:3442
msgid ""
"Note, that this/those printer(s) will be deleted after deleting of the "
"selected preset."
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:3420
+#: src/slic3r/GUI/Tab.cpp:3446
msgid "Are you sure you want to %1% the selected preset?"
msgstr ""
#. TRN Remove/Delete
-#: src/slic3r/GUI/Tab.cpp:3425
+#: src/slic3r/GUI/Tab.cpp:3451
msgid "%1% Preset"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:3435
-msgid "It's a last for this physical printer. We can't delete it"
-msgstr ""
-
-#: src/slic3r/GUI/Tab.cpp:3509 src/slic3r/GUI/Tab.cpp:3588
+#: src/slic3r/GUI/Tab.cpp:3532 src/slic3r/GUI/Tab.cpp:3604
msgid "Set"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:3660
+#: src/slic3r/GUI/Tab.cpp:3668
msgid ""
"Machine limits will be emitted to G-code and used to estimate print time."
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:3663
+#: src/slic3r/GUI/Tab.cpp:3671
msgid ""
"Machine limits will NOT be emitted to G-code, however they will be used to "
"estimate print time, which may therefore not be accurate as the printer may "
"apply a different set of machine limits."
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:3667
+#: src/slic3r/GUI/Tab.cpp:3675
msgid ""
"Machine limits are not set, therefore the print time estimate may not be "
"accurate."
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:3689
+#: src/slic3r/GUI/Tab.cpp:3697
msgid "LOCKED LOCK"
msgstr ""
#. TRN Description for "LOCKED LOCK"
-#: src/slic3r/GUI/Tab.cpp:3691
+#: src/slic3r/GUI/Tab.cpp:3699
msgid ""
"indicates that the settings are the same as the system (or default) values "
"for the current option group"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:3693
+#: src/slic3r/GUI/Tab.cpp:3701
msgid "UNLOCKED LOCK"
msgstr ""
#. TRN Description for "UNLOCKED LOCK"
-#: src/slic3r/GUI/Tab.cpp:3695
+#: src/slic3r/GUI/Tab.cpp:3703
msgid ""
"indicates that some settings were changed and are not equal to the system "
"(or default) values for the current option group.\n"
@@ -6756,23 +6857,23 @@ msgid ""
"to the system (or default) values."
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:3700
+#: src/slic3r/GUI/Tab.cpp:3708
msgid "WHITE BULLET"
msgstr ""
#. TRN Description for "WHITE BULLET"
-#: src/slic3r/GUI/Tab.cpp:3702
+#: src/slic3r/GUI/Tab.cpp:3710
msgid ""
"for the left button: indicates a non-system (or non-default) preset,\n"
"for the right button: indicates that the settings hasn't been modified."
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:3705
+#: src/slic3r/GUI/Tab.cpp:3713
msgid "BACK ARROW"
msgstr ""
#. TRN Description for "BACK ARROW"
-#: src/slic3r/GUI/Tab.cpp:3707
+#: src/slic3r/GUI/Tab.cpp:3715
msgid ""
"indicates that the settings were changed and are not equal to the last saved "
"preset for the current option group.\n"
@@ -6780,13 +6881,13 @@ msgid ""
"to the last saved preset."
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:3717
+#: src/slic3r/GUI/Tab.cpp:3725
msgid ""
"LOCKED LOCK icon indicates that the settings are the same as the system (or "
"default) values for the current option group"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:3719
+#: src/slic3r/GUI/Tab.cpp:3727
msgid ""
"UNLOCKED LOCK icon indicates that some settings were changed and are not "
"equal to the system (or default) values for the current option group.\n"
@@ -6794,17 +6895,17 @@ msgid ""
"default) values."
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:3722
+#: src/slic3r/GUI/Tab.cpp:3730
msgid "WHITE BULLET icon indicates a non system (or non default) preset."
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:3725
+#: src/slic3r/GUI/Tab.cpp:3733
msgid ""
"WHITE BULLET icon indicates that the settings are the same as in the last "
"saved preset for the current option group."
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:3727
+#: src/slic3r/GUI/Tab.cpp:3735
msgid ""
"BACK ARROW icon indicates that the settings were changed and are not equal "
"to the last saved preset for the current option group.\n"
@@ -6812,79 +6913,79 @@ msgid ""
"preset."
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:3733
+#: src/slic3r/GUI/Tab.cpp:3741
msgid ""
"LOCKED LOCK icon indicates that the value is the same as the system (or "
"default) value."
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:3734
+#: src/slic3r/GUI/Tab.cpp:3742
msgid ""
"UNLOCKED LOCK icon indicates that the value was changed and is not equal to "
"the system (or default) value.\n"
"Click to reset current value to the system (or default) value."
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:3740
+#: src/slic3r/GUI/Tab.cpp:3748
msgid ""
"WHITE BULLET icon indicates that the value is the same as in the last saved "
"preset."
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:3741
+#: src/slic3r/GUI/Tab.cpp:3749
msgid ""
"BACK ARROW icon indicates that the value was changed and is not equal to the "
"last saved preset.\n"
"Click to reset current value to the last saved preset."
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:3894 src/slic3r/GUI/Tab.cpp:3896
+#: src/slic3r/GUI/Tab.cpp:3893 src/slic3r/GUI/Tab.cpp:3895
msgid "Material"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:4018
+#: src/slic3r/GUI/Tab.cpp:4017
msgid "Support head"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:4023
+#: src/slic3r/GUI/Tab.cpp:4022
msgid "Support pillar"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:4046
+#: src/slic3r/GUI/Tab.cpp:4045
msgid "Connection of the support sticks and junctions"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:4051
+#: src/slic3r/GUI/Tab.cpp:4050
msgid "Automatic generation"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:4125
+#: src/slic3r/GUI/Tab.cpp:4124
msgid ""
"\"%1%\" is disabled because \"%2%\" is on in \"%3%\" category.\n"
"To enable \"%1%\", please switch off \"%2%\""
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:4127 src/libslic3r/PrintConfig.cpp:2917
+#: src/slic3r/GUI/Tab.cpp:4126 src/libslic3r/PrintConfig.cpp:2908
msgid "Object elevation"
msgstr ""
-#: src/slic3r/GUI/Tab.cpp:4127 src/libslic3r/PrintConfig.cpp:3019
+#: src/slic3r/GUI/Tab.cpp:4126 src/libslic3r/PrintConfig.cpp:3010
msgid "Pad around object"
msgstr ""
-#: src/slic3r/GUI/Tab.hpp:378 src/slic3r/GUI/Tab.hpp:502
+#: src/slic3r/GUI/Tab.hpp:373 src/slic3r/GUI/Tab.hpp:495
msgid "Print Settings"
msgstr ""
-#: src/slic3r/GUI/Tab.hpp:409
+#: src/slic3r/GUI/Tab.hpp:404
msgid "Filament Settings"
msgstr ""
-#: src/slic3r/GUI/Tab.hpp:453
+#: src/slic3r/GUI/Tab.hpp:445
msgid "Printer Settings"
msgstr ""
-#: src/slic3r/GUI/Tab.hpp:486
+#: src/slic3r/GUI/Tab.hpp:479
msgid "Material Settings"
msgstr ""
@@ -6895,7 +6996,7 @@ msgid "Undef"
msgstr ""
#: src/slic3r/GUI/UnsavedChangesDialog.cpp:525
-msgid "Closing PrusaSlicer: Unsaved Changes"
+msgid "PrusaSlicer is closing: Unsaved Changes"
msgstr ""
#: src/slic3r/GUI/UnsavedChangesDialog.cpp:542
@@ -6962,7 +7063,7 @@ msgid "Save the selected options."
msgstr ""
#: src/slic3r/GUI/UnsavedChangesDialog.cpp:740
-msgid "Transfer the selected options to the newly selected presets."
+msgid "Transfer the selected settings to the newly selected preset."
msgstr ""
#: src/slic3r/GUI/UnsavedChangesDialog.cpp:744
@@ -7266,25 +7367,25 @@ msgstr ""
msgid "Note: AstroBox version at least 1.1.0 is required."
msgstr ""
-#: src/slic3r/Utils/Duet.cpp:49
+#: src/slic3r/Utils/Duet.cpp:47
msgid "Connection to Duet works correctly."
msgstr ""
-#: src/slic3r/Utils/Duet.cpp:55
+#: src/slic3r/Utils/Duet.cpp:53
msgid "Could not connect to Duet"
msgstr ""
-#: src/slic3r/Utils/Duet.cpp:84 src/slic3r/Utils/Duet.cpp:139
+#: src/slic3r/Utils/Duet.cpp:88 src/slic3r/Utils/Duet.cpp:151
#: src/slic3r/Utils/FlashAir.cpp:122 src/slic3r/Utils/FlashAir.cpp:143
#: src/slic3r/Utils/FlashAir.cpp:159
msgid "Unknown error occured"
msgstr ""
-#: src/slic3r/Utils/Duet.cpp:133
+#: src/slic3r/Utils/Duet.cpp:145
msgid "Wrong password"
msgstr ""
-#: src/slic3r/Utils/Duet.cpp:136
+#: src/slic3r/Utils/Duet.cpp:148
msgid "Could not get resources to create a new connection"
msgstr ""
@@ -7407,17 +7508,17 @@ msgstr ""
msgid "Could not connect to Prusa SLA"
msgstr ""
-#: src/slic3r/Utils/PresetUpdater.cpp:726
+#: src/slic3r/Utils/PresetUpdater.cpp:727
#, possible-c-format
msgid "requires min. %s and max. %s"
msgstr ""
-#: src/slic3r/Utils/PresetUpdater.cpp:730
+#: src/slic3r/Utils/PresetUpdater.cpp:731
#, possible-c-format
msgid "requires min. %s"
msgstr ""
-#: src/slic3r/Utils/PresetUpdater.cpp:733
+#: src/slic3r/Utils/PresetUpdater.cpp:734
#, possible-c-format
msgid "requires max. %s"
msgstr ""
@@ -7611,118 +7712,114 @@ msgstr ""
msgid "write calledback failed"
msgstr ""
-#: src/libslic3r/Preset.cpp:1301
+#: src/libslic3r/Preset.cpp:1258
msgid "filament"
msgstr ""
-#: src/libslic3r/Preset.cpp:1302
-msgid "SLA print"
-msgstr ""
-
-#: src/libslic3r/Print.cpp:1245
+#: src/libslic3r/Print.cpp:1246
msgid "All objects are outside of the print volume."
msgstr ""
-#: src/libslic3r/Print.cpp:1248
+#: src/libslic3r/Print.cpp:1249
msgid "The supplied settings will cause an empty print."
msgstr ""
-#: src/libslic3r/Print.cpp:1252
+#: src/libslic3r/Print.cpp:1253
msgid "Some objects are too close; your extruder will collide with them."
msgstr ""
-#: src/libslic3r/Print.cpp:1254
+#: src/libslic3r/Print.cpp:1255
msgid ""
"Some objects are too tall and cannot be printed without extruder collisions."
msgstr ""
-#: src/libslic3r/Print.cpp:1263
+#: src/libslic3r/Print.cpp:1264
msgid "The Spiral Vase option can only be used when printing a single object."
msgstr ""
-#: src/libslic3r/Print.cpp:1270
+#: src/libslic3r/Print.cpp:1271
msgid ""
"The Spiral Vase option can only be used when printing single material "
"objects."
msgstr ""
-#: src/libslic3r/Print.cpp:1283
+#: src/libslic3r/Print.cpp:1284
msgid ""
"The wipe tower is only supported if all extruders have the same nozzle "
"diameter and use filaments of the same diameter."
msgstr ""
-#: src/libslic3r/Print.cpp:1288
+#: src/libslic3r/Print.cpp:1290
msgid ""
-"The Wipe Tower is currently only supported for the Marlin, RepRap/Sprinter "
-"and Repetier G-code flavors."
+"The Wipe Tower is currently only supported for the Marlin, RepRap/Sprinter, "
+"RepRapFirmware and Repetier G-code flavors."
msgstr ""
-#: src/libslic3r/Print.cpp:1290
+#: src/libslic3r/Print.cpp:1292
msgid ""
"The Wipe Tower is currently only supported with the relative extruder "
"addressing (use_relative_e_distances=1)."
msgstr ""
-#: src/libslic3r/Print.cpp:1292
+#: src/libslic3r/Print.cpp:1294
msgid "Ooze prevention is currently not supported with the wipe tower enabled."
msgstr ""
-#: src/libslic3r/Print.cpp:1294
+#: src/libslic3r/Print.cpp:1296
msgid ""
"The Wipe Tower currently does not support volumetric E (use_volumetric_e=0)."
msgstr ""
-#: src/libslic3r/Print.cpp:1296
+#: src/libslic3r/Print.cpp:1298
msgid ""
"The Wipe Tower is currently not supported for multimaterial sequential "
"prints."
msgstr ""
-#: src/libslic3r/Print.cpp:1317
+#: src/libslic3r/Print.cpp:1319
msgid ""
"The Wipe Tower is only supported for multiple objects if they have equal "
"layer heights"
msgstr ""
-#: src/libslic3r/Print.cpp:1319
+#: src/libslic3r/Print.cpp:1321
msgid ""
"The Wipe Tower is only supported for multiple objects if they are printed "
"over an equal number of raft layers"
msgstr ""
-#: src/libslic3r/Print.cpp:1321
+#: src/libslic3r/Print.cpp:1323
msgid ""
"The Wipe Tower is only supported for multiple objects if they are printed "
"with the same support_material_contact_distance"
msgstr ""
-#: src/libslic3r/Print.cpp:1323
+#: src/libslic3r/Print.cpp:1325
msgid ""
"The Wipe Tower is only supported for multiple objects if they are sliced "
"equally."
msgstr ""
-#: src/libslic3r/Print.cpp:1365
+#: src/libslic3r/Print.cpp:1367
msgid ""
"The Wipe tower is only supported if all objects have the same variable layer "
"height"
msgstr ""
-#: src/libslic3r/Print.cpp:1391
+#: src/libslic3r/Print.cpp:1393
msgid ""
"One or more object were assigned an extruder that the printer does not have."
msgstr ""
-#: src/libslic3r/Print.cpp:1400
+#: src/libslic3r/Print.cpp:1402
msgid "%1%=%2% mm is too low to be printable at a layer height %3% mm"
msgstr ""
-#: src/libslic3r/Print.cpp:1403
+#: src/libslic3r/Print.cpp:1405
msgid "Excessive %1%=%2% mm to be printable with a nozzle diameter %3% mm"
msgstr ""
-#: src/libslic3r/Print.cpp:1414
+#: src/libslic3r/Print.cpp:1416
msgid ""
"Printing with multiple extruders of differing nozzle diameters. If support "
"is to be printed with the current extruder (support_material_extruder == 0 "
@@ -7730,13 +7827,13 @@ msgid ""
"same diameter."
msgstr ""
-#: src/libslic3r/Print.cpp:1422
+#: src/libslic3r/Print.cpp:1424
msgid ""
"For the Wipe Tower to work with the soluble supports, the support layers "
"need to be synchronized with the object layers."
msgstr ""
-#: src/libslic3r/Print.cpp:1426
+#: src/libslic3r/Print.cpp:1428
msgid ""
"The Wipe Tower currently supports the non-soluble supports only if they are "
"printed with the current extruder without triggering a tool change. (both "
@@ -7744,31 +7841,31 @@ msgid ""
"set to 0)."
msgstr ""
-#: src/libslic3r/Print.cpp:1448
+#: src/libslic3r/Print.cpp:1450
msgid "First layer height can't be greater than nozzle diameter"
msgstr ""
-#: src/libslic3r/Print.cpp:1453
+#: src/libslic3r/Print.cpp:1455
msgid "Layer height can't be greater than nozzle diameter"
msgstr ""
-#: src/libslic3r/Print.cpp:1610
+#: src/libslic3r/Print.cpp:1614
msgid "Infilling layers"
msgstr ""
-#: src/libslic3r/Print.cpp:1636
+#: src/libslic3r/Print.cpp:1640
msgid "Generating skirt"
msgstr ""
-#: src/libslic3r/Print.cpp:1645
+#: src/libslic3r/Print.cpp:1649
msgid "Generating brim"
msgstr ""
-#: src/libslic3r/Print.cpp:1676
+#: src/libslic3r/Print.cpp:1680
msgid "Exporting G-code"
msgstr ""
-#: src/libslic3r/Print.cpp:1680
+#: src/libslic3r/Print.cpp:1684
msgid "Generating G-code"
msgstr ""
@@ -7776,34 +7873,34 @@ msgstr ""
msgid "Pad brim size is too small for the current configuration."
msgstr ""
-#: src/libslic3r/SLAPrint.cpp:627
+#: src/libslic3r/SLAPrint.cpp:628
msgid ""
"Cannot proceed without support points! Add support points or disable support "
"generation."
msgstr ""
-#: src/libslic3r/SLAPrint.cpp:639
+#: src/libslic3r/SLAPrint.cpp:640
msgid ""
"Elevation is too low for object. Use the \"Pad around object\" feature to "
"print the object without elevation."
msgstr ""
-#: src/libslic3r/SLAPrint.cpp:645
+#: src/libslic3r/SLAPrint.cpp:646
msgid ""
"The endings of the support pillars will be deployed on the gap between the "
"object and the pad. 'Support base safety distance' has to be greater than "
"the 'Pad object gap' parameter to avoid this."
msgstr ""
-#: src/libslic3r/SLAPrint.cpp:660
+#: src/libslic3r/SLAPrint.cpp:661
msgid "Exposition time is out of printer profile bounds."
msgstr ""
-#: src/libslic3r/SLAPrint.cpp:667
+#: src/libslic3r/SLAPrint.cpp:668
msgid "Initial exposition time is out of printer profile bounds."
msgstr ""
-#: src/libslic3r/SLAPrint.cpp:780
+#: src/libslic3r/SLAPrint.cpp:784
msgid "Slicing done"
msgstr ""
@@ -7945,75 +8042,79 @@ msgid ""
msgstr ""
#: src/libslic3r/PrintConfig.cpp:114
+msgid "Name of the printer"
+msgstr ""
+
+#: src/libslic3r/PrintConfig.cpp:121
msgid ""
"Custom CA certificate file can be specified for HTTPS OctoPrint connections, "
"in crt/pem format. If left blank, the default OS CA certificate repository "
"is used."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:120
+#: src/libslic3r/PrintConfig.cpp:127
msgid "Elephant foot compensation"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:122
+#: src/libslic3r/PrintConfig.cpp:129
msgid ""
"The first layer will be shrunk in the XY plane by the configured value to "
"compensate for the 1st layer squish aka an Elephant Foot effect."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:138
+#: src/libslic3r/PrintConfig.cpp:145
msgid "Password"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:144
+#: src/libslic3r/PrintConfig.cpp:151
msgid "Printer preset name"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:145
+#: src/libslic3r/PrintConfig.cpp:152
msgid "Related printer preset name"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:150
+#: src/libslic3r/PrintConfig.cpp:157
msgid "Authorization Type"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:169
+#: src/libslic3r/PrintConfig.cpp:176
msgid "Avoid crossing perimeters"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:170
+#: src/libslic3r/PrintConfig.cpp:177
msgid ""
"Optimize travel moves in order to minimize the crossing of perimeters. This "
"is mostly useful with Bowden extruders which suffer from oozing. This "
"feature slows down both the print and the G-code generation."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:177 src/libslic3r/PrintConfig.cpp:2206
+#: src/libslic3r/PrintConfig.cpp:184 src/libslic3r/PrintConfig.cpp:2197
msgid "Other layers"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:178
+#: src/libslic3r/PrintConfig.cpp:185
msgid ""
"Bed temperature for layers after the first one. Set this to zero to disable "
"bed temperature control commands in the output."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:181
+#: src/libslic3r/PrintConfig.cpp:188
msgid "Bed temperature"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:188
+#: src/libslic3r/PrintConfig.cpp:195
msgid ""
"This custom code is inserted at every layer change, right before the Z move. "
"Note that you can use placeholder variables for all Slic3r settings as well "
"as [layer_num] and [layer_z]."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:198
+#: src/libslic3r/PrintConfig.cpp:205
msgid "Between objects G-code"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:199
+#: src/libslic3r/PrintConfig.cpp:206
msgid ""
"This code is inserted between objects when using sequential printing. By "
"default extruder and bed temperature are reset using non-wait command; "
@@ -8023,81 +8124,81 @@ msgid ""
"S[first_layer_temperature]\" command wherever you want."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:210
+#: src/libslic3r/PrintConfig.cpp:217
msgid "Number of solid layers to generate on bottom surfaces."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:211
+#: src/libslic3r/PrintConfig.cpp:218
msgid "Bottom solid layers"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:219
+#: src/libslic3r/PrintConfig.cpp:226
msgid ""
"The number of bottom solid layers is increased above bottom_solid_layers if "
"necessary to satisfy minimum thickness of bottom shell."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:221
+#: src/libslic3r/PrintConfig.cpp:228
msgid "Minimum bottom shell thickness"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:227
+#: src/libslic3r/PrintConfig.cpp:234
msgid "Bridge"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:228
+#: src/libslic3r/PrintConfig.cpp:235
msgid ""
"This is the acceleration your printer will use for bridges. Set zero to "
"disable acceleration control for bridges."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:230 src/libslic3r/PrintConfig.cpp:373
-#: src/libslic3r/PrintConfig.cpp:902 src/libslic3r/PrintConfig.cpp:1028
-#: src/libslic3r/PrintConfig.cpp:1260 src/libslic3r/PrintConfig.cpp:1309
-#: src/libslic3r/PrintConfig.cpp:1319 src/libslic3r/PrintConfig.cpp:1511
+#: src/libslic3r/PrintConfig.cpp:237 src/libslic3r/PrintConfig.cpp:380
+#: src/libslic3r/PrintConfig.cpp:909 src/libslic3r/PrintConfig.cpp:1037
+#: src/libslic3r/PrintConfig.cpp:1269 src/libslic3r/PrintConfig.cpp:1318
+#: src/libslic3r/PrintConfig.cpp:1328 src/libslic3r/PrintConfig.cpp:1522
msgid "mm/s²"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:236
+#: src/libslic3r/PrintConfig.cpp:243
msgid "Bridging angle"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:238
+#: src/libslic3r/PrintConfig.cpp:245
msgid ""
"Bridging angle override. If left to zero, the bridging angle will be "
"calculated automatically. Otherwise the provided angle will be used for all "
"bridges. Use 180° for zero angle."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:241 src/libslic3r/PrintConfig.cpp:816
-#: src/libslic3r/PrintConfig.cpp:1748 src/libslic3r/PrintConfig.cpp:1758
-#: src/libslic3r/PrintConfig.cpp:2036 src/libslic3r/PrintConfig.cpp:2191
-#: src/libslic3r/PrintConfig.cpp:2390 src/libslic3r/PrintConfig.cpp:2891
-#: src/libslic3r/PrintConfig.cpp:3012
+#: src/libslic3r/PrintConfig.cpp:248 src/libslic3r/PrintConfig.cpp:823
+#: src/libslic3r/PrintConfig.cpp:1759 src/libslic3r/PrintConfig.cpp:1769
+#: src/libslic3r/PrintConfig.cpp:2027 src/libslic3r/PrintConfig.cpp:2182
+#: src/libslic3r/PrintConfig.cpp:2381 src/libslic3r/PrintConfig.cpp:2882
+#: src/libslic3r/PrintConfig.cpp:3003
msgid "°"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:247
+#: src/libslic3r/PrintConfig.cpp:254
msgid "Bridges fan speed"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:248
+#: src/libslic3r/PrintConfig.cpp:255
msgid "This fan speed is enforced during all bridges and overhangs."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:249 src/libslic3r/PrintConfig.cpp:828
-#: src/libslic3r/PrintConfig.cpp:1148 src/libslic3r/PrintConfig.cpp:1327
-#: src/libslic3r/PrintConfig.cpp:1390 src/libslic3r/PrintConfig.cpp:1640
-#: src/libslic3r/PrintConfig.cpp:2568 src/libslic3r/PrintConfig.cpp:2805
-#: src/libslic3r/PrintConfig.cpp:2931
+#: src/libslic3r/PrintConfig.cpp:256 src/libslic3r/PrintConfig.cpp:835
+#: src/libslic3r/PrintConfig.cpp:1157 src/libslic3r/PrintConfig.cpp:1336
+#: src/libslic3r/PrintConfig.cpp:1399 src/libslic3r/PrintConfig.cpp:1651
+#: src/libslic3r/PrintConfig.cpp:2559 src/libslic3r/PrintConfig.cpp:2796
+#: src/libslic3r/PrintConfig.cpp:2922
msgid "%"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:256
+#: src/libslic3r/PrintConfig.cpp:263
msgid "Bridge flow ratio"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:258
+#: src/libslic3r/PrintConfig.cpp:265
msgid ""
"This factor affects the amount of plastic for bridging. You can decrease it "
"slightly to pull the extrudates and prevent sagging, although default "
@@ -8105,84 +8206,84 @@ msgid ""
"before tweaking this."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:268
+#: src/libslic3r/PrintConfig.cpp:275
msgid "Bridges"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:270
+#: src/libslic3r/PrintConfig.cpp:277
msgid "Speed for printing bridges."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:271 src/libslic3r/PrintConfig.cpp:645
-#: src/libslic3r/PrintConfig.cpp:653 src/libslic3r/PrintConfig.cpp:662
-#: src/libslic3r/PrintConfig.cpp:670 src/libslic3r/PrintConfig.cpp:697
-#: src/libslic3r/PrintConfig.cpp:716 src/libslic3r/PrintConfig.cpp:966
-#: src/libslic3r/PrintConfig.cpp:1094 src/libslic3r/PrintConfig.cpp:1167
-#: src/libslic3r/PrintConfig.cpp:1243 src/libslic3r/PrintConfig.cpp:1277
-#: src/libslic3r/PrintConfig.cpp:1289 src/libslic3r/PrintConfig.cpp:1299
-#: src/libslic3r/PrintConfig.cpp:1349 src/libslic3r/PrintConfig.cpp:1408
-#: src/libslic3r/PrintConfig.cpp:1541 src/libslic3r/PrintConfig.cpp:1715
-#: src/libslic3r/PrintConfig.cpp:1724 src/libslic3r/PrintConfig.cpp:2170
-#: src/libslic3r/PrintConfig.cpp:2297
+#: src/libslic3r/PrintConfig.cpp:278 src/libslic3r/PrintConfig.cpp:652
+#: src/libslic3r/PrintConfig.cpp:660 src/libslic3r/PrintConfig.cpp:669
+#: src/libslic3r/PrintConfig.cpp:677 src/libslic3r/PrintConfig.cpp:704
+#: src/libslic3r/PrintConfig.cpp:723 src/libslic3r/PrintConfig.cpp:973
+#: src/libslic3r/PrintConfig.cpp:1103 src/libslic3r/PrintConfig.cpp:1176
+#: src/libslic3r/PrintConfig.cpp:1252 src/libslic3r/PrintConfig.cpp:1286
+#: src/libslic3r/PrintConfig.cpp:1298 src/libslic3r/PrintConfig.cpp:1308
+#: src/libslic3r/PrintConfig.cpp:1358 src/libslic3r/PrintConfig.cpp:1417
+#: src/libslic3r/PrintConfig.cpp:1552 src/libslic3r/PrintConfig.cpp:1726
+#: src/libslic3r/PrintConfig.cpp:1735 src/libslic3r/PrintConfig.cpp:2161
+#: src/libslic3r/PrintConfig.cpp:2288
msgid "mm/s"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:278
+#: src/libslic3r/PrintConfig.cpp:285
msgid "Brim width"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:279
+#: src/libslic3r/PrintConfig.cpp:286
msgid ""
"Horizontal width of the brim that will be printed around each object on the "
"first layer."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:286
+#: src/libslic3r/PrintConfig.cpp:293
msgid "Clip multi-part objects"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:287
+#: src/libslic3r/PrintConfig.cpp:294
msgid ""
"When printing multi-material objects, this settings will make Slic3r to clip "
"the overlapping object parts one by the other (2nd part will be clipped by "
"the 1st, 3rd part will be clipped by the 1st and 2nd etc)."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:294
+#: src/libslic3r/PrintConfig.cpp:301
msgid "Colorprint height"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:295
+#: src/libslic3r/PrintConfig.cpp:302
msgid "Heights at which a filament change is to occur."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:305
+#: src/libslic3r/PrintConfig.cpp:312
msgid "Compatible printers condition"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:306
+#: src/libslic3r/PrintConfig.cpp:313
msgid ""
"A boolean expression using the configuration values of an active printer "
"profile. If this expression evaluates to true, this profile is considered "
"compatible with the active printer profile."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:320
+#: src/libslic3r/PrintConfig.cpp:327
msgid "Compatible print profiles condition"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:321
+#: src/libslic3r/PrintConfig.cpp:328
msgid ""
"A boolean expression using the configuration values of an active print "
"profile. If this expression evaluates to true, this profile is considered "
"compatible with the active print profile."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:338
+#: src/libslic3r/PrintConfig.cpp:345
msgid "Complete individual objects"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:339
+#: src/libslic3r/PrintConfig.cpp:346
msgid ""
"When printing multiple objects or copies, this feature will complete each "
"object before moving onto next one (and starting it from its bottom layer). "
@@ -8190,97 +8291,97 @@ msgid ""
"warn and prevent you from extruder collisions, but beware."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:347
+#: src/libslic3r/PrintConfig.cpp:354
msgid "Enable auto cooling"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:348
+#: src/libslic3r/PrintConfig.cpp:355
msgid ""
"This flag enables the automatic cooling logic that adjusts print speed and "
"fan speed according to layer printing time."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:353
+#: src/libslic3r/PrintConfig.cpp:360
msgid "Cooling tube position"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:354
+#: src/libslic3r/PrintConfig.cpp:361
msgid "Distance of the center-point of the cooling tube from the extruder tip."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:361
+#: src/libslic3r/PrintConfig.cpp:368
msgid "Cooling tube length"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:362
+#: src/libslic3r/PrintConfig.cpp:369
msgid "Length of the cooling tube to limit space for cooling moves inside it."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:370
+#: src/libslic3r/PrintConfig.cpp:377
msgid ""
"This is the acceleration your printer will be reset to after the role-"
"specific acceleration values are used (perimeter/infill). Set zero to "
"prevent resetting acceleration at all."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:379
+#: src/libslic3r/PrintConfig.cpp:386
msgid "Default filament profile"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:380
+#: src/libslic3r/PrintConfig.cpp:387
msgid ""
"Default filament profile associated with the current printer profile. On "
"selection of the current printer profile, this filament profile will be "
"activated."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:386
+#: src/libslic3r/PrintConfig.cpp:393
msgid "Default print profile"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:387 src/libslic3r/PrintConfig.cpp:2735
-#: src/libslic3r/PrintConfig.cpp:2746
+#: src/libslic3r/PrintConfig.cpp:394 src/libslic3r/PrintConfig.cpp:2726
+#: src/libslic3r/PrintConfig.cpp:2737
msgid ""
"Default print profile associated with the current printer profile. On "
"selection of the current printer profile, this print profile will be "
"activated."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:393
+#: src/libslic3r/PrintConfig.cpp:400
msgid "Disable fan for the first"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:394
+#: src/libslic3r/PrintConfig.cpp:401
msgid ""
"You can set this to a positive value to disable fan at all during the first "
"layers, so that it does not make adhesion worse."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:403
+#: src/libslic3r/PrintConfig.cpp:410
msgid "Don't support bridges"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:405
+#: src/libslic3r/PrintConfig.cpp:412
msgid ""
"Experimental option for preventing support material from being generated "
"under bridged areas."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:411
+#: src/libslic3r/PrintConfig.cpp:418
msgid "Distance between copies"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:412
+#: src/libslic3r/PrintConfig.cpp:419
msgid "Distance used for the auto-arrange feature of the plater."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:420
+#: src/libslic3r/PrintConfig.cpp:427
msgid ""
"This end procedure is inserted at the end of the output file. Note that you "
"can use placeholder variables for all PrusaSlicer settings."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:430
+#: src/libslic3r/PrintConfig.cpp:437
msgid ""
"This end procedure is inserted at the end of the output file, before the "
"printer end gcode (and before any toolchange from this filament in case of "
@@ -8289,66 +8390,66 @@ msgid ""
"in extruder order."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:441
+#: src/libslic3r/PrintConfig.cpp:448
msgid "Ensure vertical shell thickness"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:443
+#: src/libslic3r/PrintConfig.cpp:450
msgid ""
"Add solid infill near sloping surfaces to guarantee the vertical shell "
"thickness (top+bottom solid layers)."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:449
+#: src/libslic3r/PrintConfig.cpp:456
msgid "Top fill pattern"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:451
+#: src/libslic3r/PrintConfig.cpp:458
msgid ""
"Fill pattern for top infill. This only affects the top visible layer, and "
"not its adjacent solid shells."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:460 src/libslic3r/PrintConfig.cpp:881
-#: src/libslic3r/PrintConfig.cpp:2151
+#: src/libslic3r/PrintConfig.cpp:467 src/libslic3r/PrintConfig.cpp:888
+#: src/libslic3r/PrintConfig.cpp:2142
msgid "Rectilinear"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:461
+#: src/libslic3r/PrintConfig.cpp:468
msgid "Monotonic"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:462 src/libslic3r/PrintConfig.cpp:887
+#: src/libslic3r/PrintConfig.cpp:469 src/libslic3r/PrintConfig.cpp:894
msgid "Concentric"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:463 src/libslic3r/PrintConfig.cpp:891
+#: src/libslic3r/PrintConfig.cpp:470 src/libslic3r/PrintConfig.cpp:898
msgid "Hilbert Curve"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:464 src/libslic3r/PrintConfig.cpp:892
+#: src/libslic3r/PrintConfig.cpp:471 src/libslic3r/PrintConfig.cpp:899
msgid "Archimedean Chords"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:465 src/libslic3r/PrintConfig.cpp:893
+#: src/libslic3r/PrintConfig.cpp:472 src/libslic3r/PrintConfig.cpp:900
msgid "Octagram Spiral"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:471
+#: src/libslic3r/PrintConfig.cpp:478
msgid "Bottom fill pattern"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:473
+#: src/libslic3r/PrintConfig.cpp:480
msgid ""
"Fill pattern for bottom infill. This only affects the bottom external "
"visible layer, and not its adjacent solid shells."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:482 src/libslic3r/PrintConfig.cpp:493
+#: src/libslic3r/PrintConfig.cpp:489 src/libslic3r/PrintConfig.cpp:500
msgid "External perimeters"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:484
+#: src/libslic3r/PrintConfig.cpp:491
msgid ""
"Set this to a non-zero value to set a manual extrusion width for external "
"perimeters. If left zero, default extrusion width will be used if set, "
@@ -8356,43 +8457,43 @@ msgid ""
"(for example 200%), it will be computed over layer height."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:487 src/libslic3r/PrintConfig.cpp:596
-#: src/libslic3r/PrintConfig.cpp:924 src/libslic3r/PrintConfig.cpp:937
-#: src/libslic3r/PrintConfig.cpp:1059 src/libslic3r/PrintConfig.cpp:1085
-#: src/libslic3r/PrintConfig.cpp:1531 src/libslic3r/PrintConfig.cpp:1876
-#: src/libslic3r/PrintConfig.cpp:2025 src/libslic3r/PrintConfig.cpp:2093
-#: src/libslic3r/PrintConfig.cpp:2254
+#: src/libslic3r/PrintConfig.cpp:494 src/libslic3r/PrintConfig.cpp:603
+#: src/libslic3r/PrintConfig.cpp:931 src/libslic3r/PrintConfig.cpp:944
+#: src/libslic3r/PrintConfig.cpp:1068 src/libslic3r/PrintConfig.cpp:1094
+#: src/libslic3r/PrintConfig.cpp:1542 src/libslic3r/PrintConfig.cpp:1867
+#: src/libslic3r/PrintConfig.cpp:2016 src/libslic3r/PrintConfig.cpp:2084
+#: src/libslic3r/PrintConfig.cpp:2245
msgid "mm or %"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:495
+#: src/libslic3r/PrintConfig.cpp:502
msgid ""
"This separate setting will affect the speed of external perimeters (the "
"visible ones). If expressed as percentage (for example: 80%) it will be "
"calculated on the perimeters speed setting above. Set to zero for auto."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:498 src/libslic3r/PrintConfig.cpp:946
-#: src/libslic3r/PrintConfig.cpp:1835 src/libslic3r/PrintConfig.cpp:1887
-#: src/libslic3r/PrintConfig.cpp:2137 src/libslic3r/PrintConfig.cpp:2267
+#: src/libslic3r/PrintConfig.cpp:505 src/libslic3r/PrintConfig.cpp:953
+#: src/libslic3r/PrintConfig.cpp:1826 src/libslic3r/PrintConfig.cpp:1878
+#: src/libslic3r/PrintConfig.cpp:2128 src/libslic3r/PrintConfig.cpp:2258
msgid "mm/s or %"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:505
+#: src/libslic3r/PrintConfig.cpp:512
msgid "External perimeters first"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:507
+#: src/libslic3r/PrintConfig.cpp:514
msgid ""
"Print contour perimeters from the outermost one to the innermost one instead "
"of the default inverse order."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:513
+#: src/libslic3r/PrintConfig.cpp:520
msgid "Extra perimeters if needed"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:515
+#: src/libslic3r/PrintConfig.cpp:522
#, possible-c-format
msgid ""
"Add more perimeters when needed for avoiding gaps in sloping walls. Slic3r "
@@ -8400,14 +8501,14 @@ msgid ""
"is supported."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:525
+#: src/libslic3r/PrintConfig.cpp:532
msgid ""
"The extruder to use (unless more specific extruder settings are specified). "
"This value overrides perimeter and infill extruders, but not the support "
"extruders."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:537
+#: src/libslic3r/PrintConfig.cpp:544
msgid ""
"Set this to the vertical distance between your nozzle tip and (usually) the "
"X carriage rods. In other words, this is the height of the clearance "
@@ -8415,26 +8516,26 @@ msgid ""
"extruder can peek before colliding with other printed objects."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:548
+#: src/libslic3r/PrintConfig.cpp:555
msgid ""
"Set this to the clearance radius around your extruder. If the extruder is "
"not centered, choose the largest value for safety. This setting is used to "
"check for collisions and to display the graphical preview in the plater."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:558
+#: src/libslic3r/PrintConfig.cpp:565
msgid "Extruder Color"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:559 src/libslic3r/PrintConfig.cpp:619
+#: src/libslic3r/PrintConfig.cpp:566 src/libslic3r/PrintConfig.cpp:626
msgid "This is only used in the Slic3r interface as a visual help."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:565
+#: src/libslic3r/PrintConfig.cpp:572
msgid "Extruder offset"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:566
+#: src/libslic3r/PrintConfig.cpp:573
msgid ""
"If your firmware doesn't handle the extruder displacement you need the G-"
"code to take it into account. This option lets you specify the displacement "
@@ -8442,21 +8543,21 @@ msgid ""
"coordinates (they will be subtracted from the XY coordinate)."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:575
+#: src/libslic3r/PrintConfig.cpp:582
msgid "Extrusion axis"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:576
+#: src/libslic3r/PrintConfig.cpp:583
msgid ""
"Use this option to set the axis letter associated to your printer's extruder "
"(usually E but some printers use A)."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:581
+#: src/libslic3r/PrintConfig.cpp:588
msgid "Extrusion multiplier"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:582
+#: src/libslic3r/PrintConfig.cpp:589
msgid ""
"This factor changes the amount of flow proportionally. You may need to tweak "
"this setting to get nice surface finish and correct single wall widths. "
@@ -8464,11 +8565,11 @@ msgid ""
"more, check filament diameter and your firmware E steps."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:590
+#: src/libslic3r/PrintConfig.cpp:597
msgid "Default extrusion width"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:592
+#: src/libslic3r/PrintConfig.cpp:599
msgid ""
"Set this to a non-zero value to allow a manual extrusion width. If left to "
"zero, Slic3r derives extrusion widths from the nozzle diameter (see the "
@@ -8477,119 +8578,119 @@ msgid ""
"height."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:602
+#: src/libslic3r/PrintConfig.cpp:609
msgid "Keep fan always on"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:603
+#: src/libslic3r/PrintConfig.cpp:610
msgid ""
"If this is enabled, fan will never be disabled and will be kept running at "
"least at its minimum speed. Useful for PLA, harmful for ABS."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:608
+#: src/libslic3r/PrintConfig.cpp:615
msgid "Enable fan if layer print time is below"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:609
+#: src/libslic3r/PrintConfig.cpp:616
msgid ""
"If layer print time is estimated below this number of seconds, fan will be "
"enabled and its speed will be calculated by interpolating the minimum and "
"maximum speeds."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:611 src/libslic3r/PrintConfig.cpp:1823
+#: src/libslic3r/PrintConfig.cpp:618 src/libslic3r/PrintConfig.cpp:1814
msgid "approximate seconds"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:624
+#: src/libslic3r/PrintConfig.cpp:631
msgid "Filament notes"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:625
+#: src/libslic3r/PrintConfig.cpp:632
msgid "You can put your notes regarding the filament here."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:633 src/libslic3r/PrintConfig.cpp:1355
+#: src/libslic3r/PrintConfig.cpp:640 src/libslic3r/PrintConfig.cpp:1364
msgid "Max volumetric speed"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:634
+#: src/libslic3r/PrintConfig.cpp:641
msgid ""
"Maximum volumetric speed allowed for this filament. Limits the maximum "
"volumetric speed of a print to the minimum of print and filament volumetric "
"speed. Set to zero for no limit."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:643
+#: src/libslic3r/PrintConfig.cpp:650
msgid "Loading speed"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:644
+#: src/libslic3r/PrintConfig.cpp:651
msgid "Speed used for loading the filament on the wipe tower."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:651
+#: src/libslic3r/PrintConfig.cpp:658
msgid "Loading speed at the start"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:652
+#: src/libslic3r/PrintConfig.cpp:659
msgid "Speed used at the very beginning of loading phase."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:659
+#: src/libslic3r/PrintConfig.cpp:666
msgid "Unloading speed"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:660
+#: src/libslic3r/PrintConfig.cpp:667
msgid ""
"Speed used for unloading the filament on the wipe tower (does not affect "
"initial part of unloading just after ramming)."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:668
+#: src/libslic3r/PrintConfig.cpp:675
msgid "Unloading speed at the start"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:669
+#: src/libslic3r/PrintConfig.cpp:676
msgid ""
"Speed used for unloading the tip of the filament immediately after ramming."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:676
+#: src/libslic3r/PrintConfig.cpp:683
msgid "Delay after unloading"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:677
+#: src/libslic3r/PrintConfig.cpp:684
msgid ""
"Time to wait after the filament is unloaded. May help to get reliable "
"toolchanges with flexible materials that may need more time to shrink to "
"original dimensions."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:686
+#: src/libslic3r/PrintConfig.cpp:693
msgid "Number of cooling moves"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:687
+#: src/libslic3r/PrintConfig.cpp:694
msgid ""
"Filament is cooled by being moved back and forth in the cooling tubes. "
"Specify desired number of these moves."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:695
+#: src/libslic3r/PrintConfig.cpp:702
msgid "Speed of the first cooling move"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:696
+#: src/libslic3r/PrintConfig.cpp:703
msgid "Cooling moves are gradually accelerating beginning at this speed."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:703
+#: src/libslic3r/PrintConfig.cpp:710
msgid "Minimal purge on wipe tower"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:704
+#: src/libslic3r/PrintConfig.cpp:711
msgid ""
"After a tool change, the exact position of the newly loaded filament inside "
"the nozzle may not be known, and the filament pressure is likely not yet "
@@ -8598,63 +8699,63 @@ msgid ""
"to produce successive infill or sacrificial object extrusions reliably."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:708
+#: src/libslic3r/PrintConfig.cpp:715
msgid "mm³"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:714
+#: src/libslic3r/PrintConfig.cpp:721
msgid "Speed of the last cooling move"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:715
+#: src/libslic3r/PrintConfig.cpp:722
msgid "Cooling moves are gradually accelerating towards this speed."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:722
+#: src/libslic3r/PrintConfig.cpp:729
msgid "Filament load time"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:723
+#: src/libslic3r/PrintConfig.cpp:730
msgid ""
"Time for the printer firmware (or the Multi Material Unit 2.0) to load a new "
"filament during a tool change (when executing the T code). This time is "
"added to the total print time by the G-code time estimator."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:730
+#: src/libslic3r/PrintConfig.cpp:737
msgid "Ramming parameters"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:731
+#: src/libslic3r/PrintConfig.cpp:738
msgid ""
"This string is edited by RammingDialog and contains ramming specific "
"parameters."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:737
+#: src/libslic3r/PrintConfig.cpp:744
msgid "Filament unload time"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:738
+#: src/libslic3r/PrintConfig.cpp:745
msgid ""
"Time for the printer firmware (or the Multi Material Unit 2.0) to unload a "
"filament during a tool change (when executing the T code). This time is "
"added to the total print time by the G-code time estimator."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:746
+#: src/libslic3r/PrintConfig.cpp:753
msgid ""
"Enter your filament diameter here. Good precision is required, so use a "
"caliper and do multiple measurements along the filament, then compute the "
"average."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:753 src/libslic3r/PrintConfig.cpp:2646
-#: src/libslic3r/PrintConfig.cpp:2647
+#: src/libslic3r/PrintConfig.cpp:760 src/libslic3r/PrintConfig.cpp:2637
+#: src/libslic3r/PrintConfig.cpp:2638
msgid "Density"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:754
+#: src/libslic3r/PrintConfig.cpp:761
msgid ""
"Enter your filament density here. This is only for statistical information. "
"A decent way is to weigh a known length of filament and compute the ratio of "
@@ -8662,129 +8763,129 @@ msgid ""
"displacement."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:757
+#: src/libslic3r/PrintConfig.cpp:764
msgid "g/cm³"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:762
+#: src/libslic3r/PrintConfig.cpp:769
msgid "Filament type"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:763
+#: src/libslic3r/PrintConfig.cpp:770
msgid "The filament material type for use in custom G-codes."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:790
+#: src/libslic3r/PrintConfig.cpp:797
msgid "Soluble material"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:791
+#: src/libslic3r/PrintConfig.cpp:798
msgid "Soluble material is most likely used for a soluble support."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:797
+#: src/libslic3r/PrintConfig.cpp:804
msgid ""
"Enter your filament cost per kg here. This is only for statistical "
"information."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:798
+#: src/libslic3r/PrintConfig.cpp:805
msgid "money/kg"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:807 src/libslic3r/PrintConfig.cpp:2730
+#: src/libslic3r/PrintConfig.cpp:814 src/libslic3r/PrintConfig.cpp:2721
msgid "(Unknown)"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:811
+#: src/libslic3r/PrintConfig.cpp:818
msgid "Fill angle"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:813
+#: src/libslic3r/PrintConfig.cpp:820
msgid ""
"Default base angle for infill orientation. Cross-hatching will be applied to "
"this. Bridges will be infilled using the best direction Slic3r can detect, "
"so this setting does not affect them."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:825
+#: src/libslic3r/PrintConfig.cpp:832
msgid "Fill density"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:827
+#: src/libslic3r/PrintConfig.cpp:834
msgid "Density of internal infill, expressed in the range 0% - 100%."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:862
+#: src/libslic3r/PrintConfig.cpp:869
msgid "Fill pattern"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:864
+#: src/libslic3r/PrintConfig.cpp:871
msgid "Fill pattern for general low-density infill."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:882
+#: src/libslic3r/PrintConfig.cpp:889
msgid "Grid"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:883
+#: src/libslic3r/PrintConfig.cpp:890
msgid "Triangles"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:884
+#: src/libslic3r/PrintConfig.cpp:891
msgid "Stars"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:885
+#: src/libslic3r/PrintConfig.cpp:892
msgid "Cubic"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:886
+#: src/libslic3r/PrintConfig.cpp:893
msgid "Line"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:888 src/libslic3r/PrintConfig.cpp:2153
+#: src/libslic3r/PrintConfig.cpp:895 src/libslic3r/PrintConfig.cpp:2144
msgid "Honeycomb"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:889
+#: src/libslic3r/PrintConfig.cpp:896
msgid "3D Honeycomb"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:890
+#: src/libslic3r/PrintConfig.cpp:897
msgid "Gyroid"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:894
+#: src/libslic3r/PrintConfig.cpp:901
msgid "Adaptive Cubic"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:895
+#: src/libslic3r/PrintConfig.cpp:902
msgid "Support Cubic"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:899 src/libslic3r/PrintConfig.cpp:908
-#: src/libslic3r/PrintConfig.cpp:918 src/libslic3r/PrintConfig.cpp:952
+#: src/libslic3r/PrintConfig.cpp:906 src/libslic3r/PrintConfig.cpp:915
+#: src/libslic3r/PrintConfig.cpp:925 src/libslic3r/PrintConfig.cpp:959
msgid "First layer"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:900
+#: src/libslic3r/PrintConfig.cpp:907
msgid ""
"This is the acceleration your printer will use for first layer. Set zero to "
"disable acceleration control for first layer."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:909
+#: src/libslic3r/PrintConfig.cpp:916
msgid "First layer bed temperature"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:910
+#: src/libslic3r/PrintConfig.cpp:917
msgid ""
"Heated build plate temperature for the first layer. Set this to zero to "
"disable bed temperature control commands in the output."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:920
+#: src/libslic3r/PrintConfig.cpp:927
msgid ""
"Set this to a non-zero value to set a manual extrusion width for first "
"layer. You can use this to force fatter extrudates for better adhesion. If "
@@ -8792,7 +8893,7 @@ msgid ""
"layer height. If set to zero, it will use the default extrusion width."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:933
+#: src/libslic3r/PrintConfig.cpp:940
msgid ""
"When printing with very low layer heights, you might still want to print a "
"thicker bottom layer to improve adhesion and tolerance for non perfect build "
@@ -8800,51 +8901,51 @@ msgid ""
"example: 150%) over the default layer height."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:942
+#: src/libslic3r/PrintConfig.cpp:949
msgid "First layer speed"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:943
+#: src/libslic3r/PrintConfig.cpp:950
msgid ""
"If expressed as absolute value in mm/s, this speed will be applied to all "
"the print moves of the first layer, regardless of their type. If expressed "
"as a percentage (for example: 40%) it will scale the default speeds."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:953
-msgid "First layer extruder temperature"
+#: src/libslic3r/PrintConfig.cpp:960
+msgid "First layer nozzle temperature"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:954
+#: src/libslic3r/PrintConfig.cpp:961
msgid ""
-"Extruder temperature for first layer. If you want to control temperature "
+"Nozzle temperature for the first layer. If you want to control temperature "
"manually during print, set this to zero to disable temperature control "
-"commands in the output file."
+"commands in the output G-code."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:964
+#: src/libslic3r/PrintConfig.cpp:971
msgid ""
"Speed for filling small gaps using short zigzag moves. Keep this reasonably "
"low to avoid too much shaking and resonance issues. Set zero to disable gaps "
"filling."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:972
+#: src/libslic3r/PrintConfig.cpp:979
msgid "Verbose G-code"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:973
+#: src/libslic3r/PrintConfig.cpp:980
msgid ""
"Enable this to get a commented G-code file, with each line explained by a "
"descriptive text. If you print from SD card, the additional weight of the "
"file could make your firmware slow down."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:980
+#: src/libslic3r/PrintConfig.cpp:987
msgid "G-code flavor"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:981
+#: src/libslic3r/PrintConfig.cpp:988
msgid ""
"Some G/M-code commands, including temperature control and others, are not "
"universal. Set this option to your printer's firmware to get a compatible "
@@ -8852,15 +8953,15 @@ msgid ""
"extrusion value at all."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1004
+#: src/libslic3r/PrintConfig.cpp:1013
msgid "No extrusion"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1009
+#: src/libslic3r/PrintConfig.cpp:1018
msgid "Label objects"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1010
+#: src/libslic3r/PrintConfig.cpp:1019
msgid ""
"Enable this to add comments into the G-Code labeling print moves with what "
"object they belong to, which is useful for the Octoprint CancelObject "
@@ -8868,46 +8969,46 @@ msgid ""
"setup and Wipe into Object / Wipe into Infill."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1017
+#: src/libslic3r/PrintConfig.cpp:1026
msgid "High extruder current on filament swap"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1018
+#: src/libslic3r/PrintConfig.cpp:1027
msgid ""
"It may be beneficial to increase the extruder motor current during the "
"filament exchange sequence to allow for rapid ramming feed rates and to "
"overcome resistance when loading a filament with an ugly shaped tip."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1026
+#: src/libslic3r/PrintConfig.cpp:1035
msgid ""
"This is the acceleration your printer will use for infill. Set zero to "
"disable acceleration control for infill."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1034
+#: src/libslic3r/PrintConfig.cpp:1043
msgid "Combine infill every"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1036
+#: src/libslic3r/PrintConfig.cpp:1045
msgid ""
"This feature allows to combine infill and speed up your print by extruding "
"thicker infill layers while preserving thin perimeters, thus accuracy."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1039
+#: src/libslic3r/PrintConfig.cpp:1048
msgid "Combine infill every n layers"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1045
+#: src/libslic3r/PrintConfig.cpp:1054
msgid "Infill extruder"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1047
+#: src/libslic3r/PrintConfig.cpp:1056
msgid "The extruder to use when printing infill."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1055
+#: src/libslic3r/PrintConfig.cpp:1064
msgid ""
"Set this to a non-zero value to set a manual extrusion width for infill. If "
"left zero, default extrusion width will be used if set, otherwise 1.125 x "
@@ -8916,32 +9017,32 @@ msgid ""
"example 90%) it will be computed over layer height."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1065
+#: src/libslic3r/PrintConfig.cpp:1074
msgid "Infill before perimeters"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1066
+#: src/libslic3r/PrintConfig.cpp:1075
msgid ""
"This option will switch the print order of perimeters and infill, making the "
"latter first."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1071
+#: src/libslic3r/PrintConfig.cpp:1080
msgid "Only infill where needed"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1073
+#: src/libslic3r/PrintConfig.cpp:1082
msgid ""
"This option will limit infill to the areas actually needed for supporting "
"ceilings (it will act as internal support material). If enabled, slows down "
"the G-code generation due to the multiple checks involved."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1080
+#: src/libslic3r/PrintConfig.cpp:1089
msgid "Infill/perimeters overlap"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1082
+#: src/libslic3r/PrintConfig.cpp:1091
msgid ""
"This setting applies an additional overlap between infill and perimeters for "
"better bonding. Theoretically this shouldn't be needed, but backlash might "
@@ -8949,63 +9050,59 @@ msgid ""
"perimeter extrusion width."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1093
+#: src/libslic3r/PrintConfig.cpp:1102
msgid "Speed for printing the internal fill. Set to zero for auto."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1101
+#: src/libslic3r/PrintConfig.cpp:1110
msgid "Inherits profile"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1102
+#: src/libslic3r/PrintConfig.cpp:1111
msgid "Name of the profile, from which this profile inherits."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1115
+#: src/libslic3r/PrintConfig.cpp:1124
msgid "Interface shells"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1116
+#: src/libslic3r/PrintConfig.cpp:1125
msgid ""
"Force the generation of solid shells between adjacent materials/volumes. "
"Useful for multi-extruder prints with translucent materials or manual "
"soluble support material."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1124
+#: src/libslic3r/PrintConfig.cpp:1133
msgid "Enable ironing"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1125
+#: src/libslic3r/PrintConfig.cpp:1134
msgid ""
"Enable ironing of the top layers with the hot print head for smooth surface"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1131 src/libslic3r/PrintConfig.cpp:1133
+#: src/libslic3r/PrintConfig.cpp:1140 src/libslic3r/PrintConfig.cpp:1142
msgid "Ironing Type"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1145
+#: src/libslic3r/PrintConfig.cpp:1154
msgid "Flow rate"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1147
+#: src/libslic3r/PrintConfig.cpp:1156
msgid "Percent of a flow rate relative to object's normal layer height."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1155
+#: src/libslic3r/PrintConfig.cpp:1164
msgid "Spacing between ironing passes"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1157
+#: src/libslic3r/PrintConfig.cpp:1166
msgid "Distance between ironing lines"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1164 src/libslic3r/PrintConfig.cpp:1166
-msgid "Ironing speed"
-msgstr ""
-
-#: src/libslic3r/PrintConfig.cpp:1174
+#: src/libslic3r/PrintConfig.cpp:1183
msgid ""
"This custom code is inserted at every layer change, right after the Z move "
"and before the extruder moves to the first layer point. Note that you can "
@@ -9013,11 +9110,11 @@ msgid ""
"[layer_z]."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1185
+#: src/libslic3r/PrintConfig.cpp:1194
msgid "Supports remaining times"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1186
+#: src/libslic3r/PrintConfig.cpp:1195
msgid ""
"Emit M73 P[percent printed] R[remaining time in minutes] at 1 minute "
"intervals into the G-code to let the firmware show accurate remaining time. "
@@ -9025,163 +9122,163 @@ msgid ""
"firmware supports M73 Qxx Sxx for the silent mode."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1194
+#: src/libslic3r/PrintConfig.cpp:1203
msgid "Supports stealth mode"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1195
+#: src/libslic3r/PrintConfig.cpp:1204
msgid "The firmware supports stealth mode"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1200
-msgid "How to apply"
+#: src/libslic3r/PrintConfig.cpp:1209
+msgid "How to apply limits"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1201
+#: src/libslic3r/PrintConfig.cpp:1210
msgid "Purpose of Machine Limits"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1203
+#: src/libslic3r/PrintConfig.cpp:1212
msgid "How to apply the Machine Limits"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1233
+#: src/libslic3r/PrintConfig.cpp:1242
msgid "Maximum feedrate X"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1234
+#: src/libslic3r/PrintConfig.cpp:1243
msgid "Maximum feedrate Y"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1235
+#: src/libslic3r/PrintConfig.cpp:1244
msgid "Maximum feedrate Z"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1236
+#: src/libslic3r/PrintConfig.cpp:1245
msgid "Maximum feedrate E"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1239
+#: src/libslic3r/PrintConfig.cpp:1248
msgid "Maximum feedrate of the X axis"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1240
+#: src/libslic3r/PrintConfig.cpp:1249
msgid "Maximum feedrate of the Y axis"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1241
+#: src/libslic3r/PrintConfig.cpp:1250
msgid "Maximum feedrate of the Z axis"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1242
+#: src/libslic3r/PrintConfig.cpp:1251
msgid "Maximum feedrate of the E axis"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1250
+#: src/libslic3r/PrintConfig.cpp:1259
msgid "Maximum acceleration X"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1251
+#: src/libslic3r/PrintConfig.cpp:1260
msgid "Maximum acceleration Y"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1252
+#: src/libslic3r/PrintConfig.cpp:1261
msgid "Maximum acceleration Z"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1253
+#: src/libslic3r/PrintConfig.cpp:1262
msgid "Maximum acceleration E"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1256
+#: src/libslic3r/PrintConfig.cpp:1265
msgid "Maximum acceleration of the X axis"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1257
+#: src/libslic3r/PrintConfig.cpp:1266
msgid "Maximum acceleration of the Y axis"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1258
+#: src/libslic3r/PrintConfig.cpp:1267
msgid "Maximum acceleration of the Z axis"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1259
+#: src/libslic3r/PrintConfig.cpp:1268
msgid "Maximum acceleration of the E axis"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1267
+#: src/libslic3r/PrintConfig.cpp:1276
msgid "Maximum jerk X"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1268
+#: src/libslic3r/PrintConfig.cpp:1277
msgid "Maximum jerk Y"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1269
+#: src/libslic3r/PrintConfig.cpp:1278
msgid "Maximum jerk Z"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1270
+#: src/libslic3r/PrintConfig.cpp:1279
msgid "Maximum jerk E"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1273
+#: src/libslic3r/PrintConfig.cpp:1282
msgid "Maximum jerk of the X axis"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1274
+#: src/libslic3r/PrintConfig.cpp:1283
msgid "Maximum jerk of the Y axis"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1275
+#: src/libslic3r/PrintConfig.cpp:1284
msgid "Maximum jerk of the Z axis"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1276
+#: src/libslic3r/PrintConfig.cpp:1285
msgid "Maximum jerk of the E axis"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1286
+#: src/libslic3r/PrintConfig.cpp:1295
msgid "Minimum feedrate when extruding"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1288
+#: src/libslic3r/PrintConfig.cpp:1297
msgid "Minimum feedrate when extruding (M205 S)"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1296
+#: src/libslic3r/PrintConfig.cpp:1305
msgid "Minimum travel feedrate"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1298
+#: src/libslic3r/PrintConfig.cpp:1307
msgid "Minimum travel feedrate (M205 T)"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1306
+#: src/libslic3r/PrintConfig.cpp:1315
msgid "Maximum acceleration when extruding"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1308
+#: src/libslic3r/PrintConfig.cpp:1317
msgid "Maximum acceleration when extruding (M204 S)"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1316
+#: src/libslic3r/PrintConfig.cpp:1325
msgid "Maximum acceleration when retracting"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1318
+#: src/libslic3r/PrintConfig.cpp:1327
msgid "Maximum acceleration when retracting (M204 T)"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1325 src/libslic3r/PrintConfig.cpp:1334
+#: src/libslic3r/PrintConfig.cpp:1334 src/libslic3r/PrintConfig.cpp:1343
msgid "Max"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1326
+#: src/libslic3r/PrintConfig.cpp:1335
msgid "This setting represents the maximum speed of your fan."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1335
+#: src/libslic3r/PrintConfig.cpp:1344
#, possible-c-format
msgid ""
"This is the highest printable layer height for this extruder, used to cap "
@@ -9190,28 +9287,28 @@ msgid ""
"adhesion. If set to 0, layer height is limited to 75% of the nozzle diameter."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1345
+#: src/libslic3r/PrintConfig.cpp:1354
msgid "Max print speed"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1346
+#: src/libslic3r/PrintConfig.cpp:1355
msgid ""
"When setting other speed settings to 0 Slic3r will autocalculate the optimal "
"speed in order to keep constant extruder pressure. This experimental setting "
"is used to set the highest print speed you want to allow."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1356
+#: src/libslic3r/PrintConfig.cpp:1365
msgid ""
"This experimental setting is used to set the maximum volumetric speed your "
"extruder supports."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1365
+#: src/libslic3r/PrintConfig.cpp:1374
msgid "Max volumetric slope positive"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1366 src/libslic3r/PrintConfig.cpp:1377
+#: src/libslic3r/PrintConfig.cpp:1375 src/libslic3r/PrintConfig.cpp:1386
msgid ""
"This experimental setting is used to limit the speed of change in extrusion "
"rate. A value of 1.8 mm³/s² ensures, that a change from the extrusion rate "
@@ -9219,95 +9316,95 @@ msgid ""
"s) to 5.4 mm³/s (feedrate 60 mm/s) will take at least 2 seconds."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1370 src/libslic3r/PrintConfig.cpp:1381
+#: src/libslic3r/PrintConfig.cpp:1379 src/libslic3r/PrintConfig.cpp:1390
msgid "mm³/s²"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1376
+#: src/libslic3r/PrintConfig.cpp:1385
msgid "Max volumetric slope negative"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1388 src/libslic3r/PrintConfig.cpp:1397
+#: src/libslic3r/PrintConfig.cpp:1397 src/libslic3r/PrintConfig.cpp:1406
msgid "Min"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1389
+#: src/libslic3r/PrintConfig.cpp:1398
msgid "This setting represents the minimum PWM your fan needs to work."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1398
+#: src/libslic3r/PrintConfig.cpp:1407
msgid ""
"This is the lowest printable layer height for this extruder and limits the "
"resolution for variable layer height. Typical values are between 0.05 mm and "
"0.1 mm."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1406
+#: src/libslic3r/PrintConfig.cpp:1415
msgid "Min print speed"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1407
+#: src/libslic3r/PrintConfig.cpp:1416
msgid "Slic3r will not scale speed down below this speed."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1414
+#: src/libslic3r/PrintConfig.cpp:1423
msgid "Minimal filament extrusion length"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1415
+#: src/libslic3r/PrintConfig.cpp:1424
msgid ""
"Generate no less than the number of skirt loops required to consume the "
"specified amount of filament on the bottom layer. For multi-extruder "
"machines, this minimum applies to each extruder."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1424
+#: src/libslic3r/PrintConfig.cpp:1433
msgid "Configuration notes"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1425
+#: src/libslic3r/PrintConfig.cpp:1434
msgid ""
"You can put here your personal notes. This text will be added to the G-code "
"header comments."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1435
+#: src/libslic3r/PrintConfig.cpp:1444
msgid ""
"This is the diameter of your extruder nozzle (for example: 0.5, 0.35 etc.)"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1440
+#: src/libslic3r/PrintConfig.cpp:1449
msgid "Host Type"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1441
+#: src/libslic3r/PrintConfig.cpp:1450
msgid ""
"Slic3r can upload G-code files to a printer host. This field must contain "
"the kind of the host."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1456
+#: src/libslic3r/PrintConfig.cpp:1467
msgid "Only retract when crossing perimeters"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1457
+#: src/libslic3r/PrintConfig.cpp:1468
msgid ""
"Disables retraction when the travel path does not exceed the upper layer's "
"perimeters (and thus any ooze will be probably invisible)."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1464
+#: src/libslic3r/PrintConfig.cpp:1475
msgid ""
"This option will drop the temperature of the inactive extruders to prevent "
"oozing. It will enable a tall skirt automatically and move extruders outside "
"such skirt when changing temperatures."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1471
+#: src/libslic3r/PrintConfig.cpp:1482
msgid "Output filename format"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1472
+#: src/libslic3r/PrintConfig.cpp:1483
msgid ""
"You can use all configuration options as variables inside this template. For "
"example: [layer_height], [fill_density] etc. You can also use [timestamp], "
@@ -9315,31 +9412,31 @@ msgid ""
"[input_filename], [input_filename_base]."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1481
+#: src/libslic3r/PrintConfig.cpp:1492
msgid "Detect bridging perimeters"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1483
+#: src/libslic3r/PrintConfig.cpp:1494
msgid ""
"Experimental option to adjust flow for overhangs (bridge flow will be used), "
"to apply bridge speed to them and enable fan."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1489
+#: src/libslic3r/PrintConfig.cpp:1500
msgid "Filament parking position"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1490
+#: src/libslic3r/PrintConfig.cpp:1501
msgid ""
"Distance of the extruder tip from the position where the filament is parked "
"when unloaded. This should match the value in printer firmware."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1498
+#: src/libslic3r/PrintConfig.cpp:1509
msgid "Extra loading distance"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1499
+#: src/libslic3r/PrintConfig.cpp:1510
msgid ""
"When set to zero, the distance the filament is moved from parking position "
"during load is exactly the same as it was moved back during unload. When "
@@ -9347,28 +9444,28 @@ msgid ""
"than unloading."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1507 src/libslic3r/PrintConfig.cpp:1525
-#: src/libslic3r/PrintConfig.cpp:1538 src/libslic3r/PrintConfig.cpp:1548
+#: src/libslic3r/PrintConfig.cpp:1518 src/libslic3r/PrintConfig.cpp:1536
+#: src/libslic3r/PrintConfig.cpp:1549 src/libslic3r/PrintConfig.cpp:1559
msgid "Perimeters"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1508
+#: src/libslic3r/PrintConfig.cpp:1519
msgid ""
"This is the acceleration your printer will use for perimeters. A high value "
"like 9000 usually gives good results if your hardware is up to the job. Set "
"zero to disable acceleration control for perimeters."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1516
+#: src/libslic3r/PrintConfig.cpp:1527
msgid "Perimeter extruder"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1518
+#: src/libslic3r/PrintConfig.cpp:1529
msgid ""
"The extruder to use when printing perimeters and brim. First extruder is 1."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1527
+#: src/libslic3r/PrintConfig.cpp:1538
msgid ""
"Set this to a non-zero value to set a manual extrusion width for perimeters. "
"You may want to use thinner extrudates to get more accurate surfaces. If "
@@ -9377,12 +9474,12 @@ msgid ""
"it will be computed over layer height."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1540
+#: src/libslic3r/PrintConfig.cpp:1551
msgid ""
"Speed for perimeters (contours, aka vertical shells). Set to zero for auto."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1550
+#: src/libslic3r/PrintConfig.cpp:1561
msgid ""
"This option sets the number of perimeters to generate for each layer. Note "
"that Slic3r may increase this number automatically when it detects sloping "
@@ -9390,11 +9487,11 @@ msgid ""
"Perimeters option is enabled."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1554
+#: src/libslic3r/PrintConfig.cpp:1565
msgid "(minimum)"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1562
+#: src/libslic3r/PrintConfig.cpp:1573
msgid ""
"If you want to process the output G-code through custom scripts, just list "
"their absolute paths here. Separate multiple scripts with a semicolon. "
@@ -9403,55 +9500,55 @@ msgid ""
"environment variables."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1574
+#: src/libslic3r/PrintConfig.cpp:1585
msgid "Printer type"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1575
+#: src/libslic3r/PrintConfig.cpp:1586
msgid "Type of the printer."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1580
+#: src/libslic3r/PrintConfig.cpp:1591
msgid "Printer notes"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1581
+#: src/libslic3r/PrintConfig.cpp:1592
msgid "You can put your notes regarding the printer here."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1589
+#: src/libslic3r/PrintConfig.cpp:1600
msgid "Printer vendor"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1590
+#: src/libslic3r/PrintConfig.cpp:1601
msgid "Name of the printer vendor."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1595
+#: src/libslic3r/PrintConfig.cpp:1606
msgid "Printer variant"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1596
+#: src/libslic3r/PrintConfig.cpp:1607
msgid ""
"Name of the printer variant. For example, the printer variants may be "
"differentiated by a nozzle diameter."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1609
+#: src/libslic3r/PrintConfig.cpp:1620
msgid "Raft layers"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1611
+#: src/libslic3r/PrintConfig.cpp:1622
msgid ""
"The object will be raised by this number of layers, and support material "
"will be generated under it."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1619
+#: src/libslic3r/PrintConfig.cpp:1630
msgid "Resolution"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1620
+#: src/libslic3r/PrintConfig.cpp:1631
msgid ""
"Minimum detail resolution, used to simplify the input file for speeding up "
"the slicing job and reducing memory usage. High-resolution models often "
@@ -9459,293 +9556,277 @@ msgid ""
"simplification and use full resolution from input."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1630
+#: src/libslic3r/PrintConfig.cpp:1641
msgid "Minimum travel after retraction"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1631
+#: src/libslic3r/PrintConfig.cpp:1642
msgid ""
"Retraction is not triggered when travel moves are shorter than this length."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1637
+#: src/libslic3r/PrintConfig.cpp:1648
msgid "Retract amount before wipe"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1638
+#: src/libslic3r/PrintConfig.cpp:1649
msgid ""
"With bowden extruders, it may be wise to do some amount of quick retract "
"before doing the wipe movement."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1645
+#: src/libslic3r/PrintConfig.cpp:1656
msgid "Retract on layer change"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1646
+#: src/libslic3r/PrintConfig.cpp:1657
msgid "This flag enforces a retraction whenever a Z move is done."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1651 src/libslic3r/PrintConfig.cpp:1659
+#: src/libslic3r/PrintConfig.cpp:1662 src/libslic3r/PrintConfig.cpp:1670
msgid "Length"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1652
+#: src/libslic3r/PrintConfig.cpp:1663
msgid "Retraction Length"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1653
+#: src/libslic3r/PrintConfig.cpp:1664
msgid ""
"When retraction is triggered, filament is pulled back by the specified "
"amount (the length is measured on raw filament, before it enters the "
"extruder)."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1655 src/libslic3r/PrintConfig.cpp:1664
+#: src/libslic3r/PrintConfig.cpp:1666 src/libslic3r/PrintConfig.cpp:1675
msgid "mm (zero to disable)"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1660
+#: src/libslic3r/PrintConfig.cpp:1671
msgid "Retraction Length (Toolchange)"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1661
+#: src/libslic3r/PrintConfig.cpp:1672
msgid ""
"When retraction is triggered before changing tool, filament is pulled back "
"by the specified amount (the length is measured on raw filament, before it "
"enters the extruder)."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1669
+#: src/libslic3r/PrintConfig.cpp:1680
msgid "Lift Z"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1670
+#: src/libslic3r/PrintConfig.cpp:1681
msgid ""
"If you set this to a positive value, Z is quickly raised every time a "
"retraction is triggered. When using multiple extruders, only the setting for "
"the first extruder will be considered."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1677
+#: src/libslic3r/PrintConfig.cpp:1688
msgid "Above Z"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1678
+#: src/libslic3r/PrintConfig.cpp:1689
msgid "Only lift Z above"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1679
+#: src/libslic3r/PrintConfig.cpp:1690
msgid ""
"If you set this to a positive value, Z lift will only take place above the "
"specified absolute Z. You can tune this setting for skipping lift on the "
"first layers."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1686
+#: src/libslic3r/PrintConfig.cpp:1697
msgid "Below Z"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1687
+#: src/libslic3r/PrintConfig.cpp:1698
msgid "Only lift Z below"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1688
+#: src/libslic3r/PrintConfig.cpp:1699
msgid ""
"If you set this to a positive value, Z lift will only take place below the "
"specified absolute Z. You can tune this setting for limiting lift to the "
"first layers."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1696 src/libslic3r/PrintConfig.cpp:1704
+#: src/libslic3r/PrintConfig.cpp:1707 src/libslic3r/PrintConfig.cpp:1715
msgid "Extra length on restart"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1697
+#: src/libslic3r/PrintConfig.cpp:1708
msgid ""
"When the retraction is compensated after the travel move, the extruder will "
"push this additional amount of filament. This setting is rarely needed."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1705
+#: src/libslic3r/PrintConfig.cpp:1716
msgid ""
"When the retraction is compensated after changing tool, the extruder will "
"push this additional amount of filament."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1712 src/libslic3r/PrintConfig.cpp:1713
+#: src/libslic3r/PrintConfig.cpp:1723 src/libslic3r/PrintConfig.cpp:1724
msgid "Retraction Speed"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1714
+#: src/libslic3r/PrintConfig.cpp:1725
msgid "The speed for retractions (it only applies to the extruder motor)."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1720 src/libslic3r/PrintConfig.cpp:1721
+#: src/libslic3r/PrintConfig.cpp:1731 src/libslic3r/PrintConfig.cpp:1732
msgid "Deretraction Speed"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1722
+#: src/libslic3r/PrintConfig.cpp:1733
msgid ""
"The speed for loading of a filament into extruder after retraction (it only "
"applies to the extruder motor). If left to zero, the retraction speed is "
"used."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1729
+#: src/libslic3r/PrintConfig.cpp:1740
msgid "Seam position"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1731
+#: src/libslic3r/PrintConfig.cpp:1742
msgid "Position of perimeters starting points."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1737
+#: src/libslic3r/PrintConfig.cpp:1748
msgid "Random"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1738
+#: src/libslic3r/PrintConfig.cpp:1749
msgid "Nearest"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1739
+#: src/libslic3r/PrintConfig.cpp:1750
msgid "Aligned"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1747
+#: src/libslic3r/PrintConfig.cpp:1758
msgid "Direction"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1749
+#: src/libslic3r/PrintConfig.cpp:1760
msgid "Preferred direction of the seam"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1750
+#: src/libslic3r/PrintConfig.cpp:1761
msgid "Seam preferred direction"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1757
+#: src/libslic3r/PrintConfig.cpp:1768
msgid "Jitter"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1759
+#: src/libslic3r/PrintConfig.cpp:1770
msgid "Seam preferred direction jitter"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1760
+#: src/libslic3r/PrintConfig.cpp:1771
msgid "Preferred direction of the seam - jitter"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1769
-msgid "Serial port"
-msgstr ""
-
-#: src/libslic3r/PrintConfig.cpp:1770
-msgid "USB/serial port for printer connection."
-msgstr ""
-
-#: src/libslic3r/PrintConfig.cpp:1777
-msgid "Serial port speed"
-msgstr ""
-
#: src/libslic3r/PrintConfig.cpp:1778
-msgid "Speed (baud) of USB/serial port for printer connection."
-msgstr ""
-
-#: src/libslic3r/PrintConfig.cpp:1787
msgid "Distance from object"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1788
+#: src/libslic3r/PrintConfig.cpp:1779
msgid ""
"Distance between skirt and object(s). Set this to zero to attach the skirt "
"to the object(s) and get a brim for better adhesion."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1795
+#: src/libslic3r/PrintConfig.cpp:1786
msgid "Skirt height"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1796
+#: src/libslic3r/PrintConfig.cpp:1787
msgid ""
"Height of skirt expressed in layers. Set this to a tall value to use skirt "
"as a shield against drafts."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1803
+#: src/libslic3r/PrintConfig.cpp:1794
msgid "Draft shield"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1804
+#: src/libslic3r/PrintConfig.cpp:1795
msgid ""
"If enabled, the skirt will be as tall as a highest printed object. This is "
"useful to protect an ABS or ASA print from warping and detaching from print "
"bed due to wind draft."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1810
+#: src/libslic3r/PrintConfig.cpp:1801
msgid "Loops (minimum)"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1811
+#: src/libslic3r/PrintConfig.cpp:1802
msgid "Skirt Loops"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1812
+#: src/libslic3r/PrintConfig.cpp:1803
msgid ""
"Number of loops for the skirt. If the Minimum Extrusion Length option is "
"set, the number of loops might be greater than the one configured here. Set "
"this to zero to disable skirt completely."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1820
+#: src/libslic3r/PrintConfig.cpp:1811
msgid "Slow down if layer print time is below"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1821
+#: src/libslic3r/PrintConfig.cpp:1812
msgid ""
"If layer print time is estimated below this number of seconds, print moves "
"speed will be scaled down to extend duration to this value."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1830
+#: src/libslic3r/PrintConfig.cpp:1821
msgid "Small perimeters"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1832
+#: src/libslic3r/PrintConfig.cpp:1823
msgid ""
"This separate setting will affect the speed of perimeters having radius <= "
"6.5mm (usually holes). If expressed as percentage (for example: 80%) it will "
"be calculated on the perimeters speed setting above. Set to zero for auto."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1842
+#: src/libslic3r/PrintConfig.cpp:1833
msgid "Solid infill threshold area"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1844
+#: src/libslic3r/PrintConfig.cpp:1835
msgid ""
"Force solid infill for regions having a smaller area than the specified "
"threshold."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1845
+#: src/libslic3r/PrintConfig.cpp:1836
msgid "mm²"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1851
+#: src/libslic3r/PrintConfig.cpp:1842
msgid "Solid infill extruder"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1853
+#: src/libslic3r/PrintConfig.cpp:1844
msgid "The extruder to use when printing solid infill."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1859
+#: src/libslic3r/PrintConfig.cpp:1850
msgid "Solid infill every"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1861
+#: src/libslic3r/PrintConfig.cpp:1852
msgid ""
"This feature allows to force a solid layer every given number of layers. "
"Zero to disable. You can set this to any value (for example 9999); Slic3r "
@@ -9753,7 +9834,7 @@ msgid ""
"according to nozzle diameter and layer height."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1873
+#: src/libslic3r/PrintConfig.cpp:1864
msgid ""
"Set this to a non-zero value to set a manual extrusion width for infill for "
"solid surfaces. If left zero, default extrusion width will be used if set, "
@@ -9761,26 +9842,26 @@ msgid ""
"(for example 90%) it will be computed over layer height."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1884
+#: src/libslic3r/PrintConfig.cpp:1875
msgid ""
"Speed for printing solid regions (top/bottom/internal horizontal shells). "
"This can be expressed as a percentage (for example: 80%) over the default "
"infill speed above. Set to zero for auto."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1896
+#: src/libslic3r/PrintConfig.cpp:1887
msgid "Number of solid layers to generate on top and bottom surfaces."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1902 src/libslic3r/PrintConfig.cpp:1903
+#: src/libslic3r/PrintConfig.cpp:1893 src/libslic3r/PrintConfig.cpp:1894
msgid "Minimum thickness of a top / bottom shell"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1909
+#: src/libslic3r/PrintConfig.cpp:1900
msgid "Spiral vase"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1910
+#: src/libslic3r/PrintConfig.cpp:1901
msgid ""
"This feature will raise Z gradually while printing a single-walled object in "
"order to remove any visible seam. This option requires a single perimeter, "
@@ -9789,18 +9870,18 @@ msgid ""
"when printing more than an object."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1918
+#: src/libslic3r/PrintConfig.cpp:1909
msgid "Temperature variation"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1919
+#: src/libslic3r/PrintConfig.cpp:1910
msgid ""
"Temperature difference to be applied when an extruder is not active. Enables "
"a full-height \"sacrificial\" skirt on which the nozzles are periodically "
"wiped."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1929
+#: src/libslic3r/PrintConfig.cpp:1920
msgid ""
"This start procedure is inserted at the beginning, after bed has reached the "
"target temperature and extruder just started heating, and before extruder "
@@ -9811,7 +9892,7 @@ msgid ""
"put a \"M109 S[first_layer_temperature]\" command wherever you want."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1944
+#: src/libslic3r/PrintConfig.cpp:1935
msgid ""
"This start procedure is inserted at the beginning, after any printer start "
"gcode (and after any toolchange to this filament in case of multi-material "
@@ -9824,45 +9905,45 @@ msgid ""
"extruders, the gcode is processed in extruder order."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1960
+#: src/libslic3r/PrintConfig.cpp:1951
msgid "Color change G-code"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1961
+#: src/libslic3r/PrintConfig.cpp:1952
msgid "This G-code will be used as a code for the color change"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1970
+#: src/libslic3r/PrintConfig.cpp:1961
msgid "This G-code will be used as a code for the pause print"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1979
+#: src/libslic3r/PrintConfig.cpp:1970
msgid "This G-code will be used as a custom code"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1987
+#: src/libslic3r/PrintConfig.cpp:1978
msgid "Single Extruder Multi Material"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1988
+#: src/libslic3r/PrintConfig.cpp:1979
msgid "The printer multiplexes filaments into a single hot end."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1993
+#: src/libslic3r/PrintConfig.cpp:1984
msgid "Prime all printing extruders"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1994
+#: src/libslic3r/PrintConfig.cpp:1985
msgid ""
"If enabled, all printing extruders will be primed at the front edge of the "
"print bed at the start of the print."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:1999
+#: src/libslic3r/PrintConfig.cpp:1990
msgid "No sparse layers (EXPERIMENTAL)"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2000
+#: src/libslic3r/PrintConfig.cpp:1991
msgid ""
"If enabled, the wipe tower will not be printed on layers with no "
"toolchanges. On layers with a toolchange, extruder will travel downward to "
@@ -9870,75 +9951,75 @@ msgid ""
"with the print."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2007
+#: src/libslic3r/PrintConfig.cpp:1998
msgid "Generate support material"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2009
+#: src/libslic3r/PrintConfig.cpp:2000
msgid "Enable support material generation."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2013
+#: src/libslic3r/PrintConfig.cpp:2004
msgid "Auto generated supports"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2015
+#: src/libslic3r/PrintConfig.cpp:2006
msgid ""
"If checked, supports will be generated automatically based on the overhang "
"threshold value. If unchecked, supports will be generated inside the "
"\"Support Enforcer\" volumes only."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2021
+#: src/libslic3r/PrintConfig.cpp:2012
msgid "XY separation between an object and its support"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2023
+#: src/libslic3r/PrintConfig.cpp:2014
msgid ""
"XY separation between an object and its support. If expressed as percentage "
"(for example 50%), it will be calculated over external perimeter width."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2033
+#: src/libslic3r/PrintConfig.cpp:2024
msgid "Pattern angle"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2035
+#: src/libslic3r/PrintConfig.cpp:2026
msgid ""
"Use this setting to rotate the support material pattern on the horizontal "
"plane."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2045 src/libslic3r/PrintConfig.cpp:2840
+#: src/libslic3r/PrintConfig.cpp:2036 src/libslic3r/PrintConfig.cpp:2831
msgid ""
"Only create support if it lies on a build plate. Don't create support on a "
"print."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2051
+#: src/libslic3r/PrintConfig.cpp:2042
msgid "Contact Z distance"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2053
+#: src/libslic3r/PrintConfig.cpp:2044
msgid ""
"The vertical distance between object and support material interface. Setting "
"this to 0 will also prevent Slic3r from using bridge flow and speed for the "
"first object layer."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2060
+#: src/libslic3r/PrintConfig.cpp:2051
msgid "0 (soluble)"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2061
+#: src/libslic3r/PrintConfig.cpp:2052
msgid "0.2 (detachable)"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2066
+#: src/libslic3r/PrintConfig.cpp:2057
msgid "Enforce support for the first"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2068
+#: src/libslic3r/PrintConfig.cpp:2059
msgid ""
"Generate support material for the specified number of layers counting from "
"bottom, regardless of whether normal support material is enabled or not and "
@@ -9946,21 +10027,21 @@ msgid ""
"of objects having a very thin or poor footprint on the build plate."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2073
+#: src/libslic3r/PrintConfig.cpp:2064
msgid "Enforce support for the first n layers"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2079
+#: src/libslic3r/PrintConfig.cpp:2070
msgid "Support material/raft/skirt extruder"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2081
+#: src/libslic3r/PrintConfig.cpp:2072
msgid ""
"The extruder to use when printing support material, raft and skirt (1+, 0 to "
"use the current extruder to minimize tool changes)."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2090
+#: src/libslic3r/PrintConfig.cpp:2081
msgid ""
"Set this to a non-zero value to set a manual extrusion width for support "
"material. If left zero, default extrusion width will be used if set, "
@@ -9968,89 +10049,89 @@ msgid ""
"example 90%) it will be computed over layer height."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2099
+#: src/libslic3r/PrintConfig.cpp:2090
msgid "Interface loops"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2101
+#: src/libslic3r/PrintConfig.cpp:2092
msgid ""
"Cover the top contact layer of the supports with loops. Disabled by default."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2106
+#: src/libslic3r/PrintConfig.cpp:2097
msgid "Support material/raft interface extruder"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2108
+#: src/libslic3r/PrintConfig.cpp:2099
msgid ""
"The extruder to use when printing support material interface (1+, 0 to use "
"the current extruder to minimize tool changes). This affects raft too."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2115
+#: src/libslic3r/PrintConfig.cpp:2106
msgid "Interface layers"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2117
+#: src/libslic3r/PrintConfig.cpp:2108
msgid ""
"Number of interface layers to insert between the object(s) and support "
"material."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2124
+#: src/libslic3r/PrintConfig.cpp:2115
msgid "Interface pattern spacing"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2126
+#: src/libslic3r/PrintConfig.cpp:2117
msgid "Spacing between interface lines. Set zero to get a solid interface."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2135
+#: src/libslic3r/PrintConfig.cpp:2126
msgid ""
"Speed for printing support material interface layers. If expressed as "
"percentage (for example 50%) it will be calculated over support material "
"speed."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2144
+#: src/libslic3r/PrintConfig.cpp:2135
msgid "Pattern"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2146
+#: src/libslic3r/PrintConfig.cpp:2137
msgid "Pattern used to generate support material."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2152
+#: src/libslic3r/PrintConfig.cpp:2143
msgid "Rectilinear grid"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2158
+#: src/libslic3r/PrintConfig.cpp:2149
msgid "Pattern spacing"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2160
+#: src/libslic3r/PrintConfig.cpp:2151
msgid "Spacing between support material lines."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2169
+#: src/libslic3r/PrintConfig.cpp:2160
msgid "Speed for printing support material."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2176
+#: src/libslic3r/PrintConfig.cpp:2167
msgid "Synchronize with object layers"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2178
+#: src/libslic3r/PrintConfig.cpp:2169
msgid ""
"Synchronize support layers with the object print layers. This is useful with "
"multi-material printers, where the extruder switch is expensive."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2184
+#: src/libslic3r/PrintConfig.cpp:2175
msgid "Overhang threshold"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2186
+#: src/libslic3r/PrintConfig.cpp:2177
msgid ""
"Support material will not be generated for overhangs whose slope angle (90° "
"= vertical) is above the given threshold. In other words, this value "
@@ -10059,47 +10140,47 @@ msgid ""
"detection (recommended)."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2198
+#: src/libslic3r/PrintConfig.cpp:2189
msgid "With sheath around the support"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2200
+#: src/libslic3r/PrintConfig.cpp:2191
msgid ""
"Add a sheath (a single perimeter line) around the base support. This makes "
"the support more reliable, but also more difficult to remove."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2207
+#: src/libslic3r/PrintConfig.cpp:2198
msgid ""
-"Extruder temperature for layers after the first one. Set this to zero to "
-"disable temperature control commands in the output."
+"Nozzle temperature for layers after the first one. Set this to zero to "
+"disable temperature control commands in the output G-code."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2210
-msgid "Extruder temperature"
+#: src/libslic3r/PrintConfig.cpp:2201
+msgid "Nozzle temperature"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2216
+#: src/libslic3r/PrintConfig.cpp:2207
msgid "Detect thin walls"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2218
+#: src/libslic3r/PrintConfig.cpp:2209
msgid ""
"Detect single-width walls (parts where two extrusions don't fit and we need "
"to collapse them into a single trace)."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2224
+#: src/libslic3r/PrintConfig.cpp:2215
msgid "Threads"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2225
+#: src/libslic3r/PrintConfig.cpp:2216
msgid ""
"Threads are used to parallelize long-running tasks. Optimal threads number "
"is slightly above the number of available cores/processors."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2237
+#: src/libslic3r/PrintConfig.cpp:2228
msgid ""
"This custom code is inserted before every toolchange. Placeholder variables "
"for all PrusaSlicer settings as well as {previous_extruder} and "
@@ -10109,7 +10190,7 @@ msgid ""
"behaviour both before and after the toolchange."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2250
+#: src/libslic3r/PrintConfig.cpp:2241
msgid ""
"Set this to a non-zero value to set a manual extrusion width for infill for "
"top surfaces. You may want to use thinner extrudates to fill all narrow "
@@ -10118,7 +10199,7 @@ msgid ""
"percentage (for example 90%) it will be computed over layer height."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2262
+#: src/libslic3r/PrintConfig.cpp:2253
msgid ""
"Speed for printing top solid layers (it only applies to the uppermost "
"external layers and not to their internal solid layers). You may want to "
@@ -10127,54 +10208,54 @@ msgid ""
"for auto."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2277
+#: src/libslic3r/PrintConfig.cpp:2268
msgid "Number of solid layers to generate on top surfaces."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2278
+#: src/libslic3r/PrintConfig.cpp:2269
msgid "Top solid layers"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2286
+#: src/libslic3r/PrintConfig.cpp:2277
msgid ""
"The number of top solid layers is increased above top_solid_layers if "
"necessary to satisfy minimum thickness of top shell. This is useful to "
"prevent pillowing effect when printing with variable layer height."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2289
+#: src/libslic3r/PrintConfig.cpp:2280
msgid "Minimum top shell thickness"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2296
+#: src/libslic3r/PrintConfig.cpp:2287
msgid "Speed for travel moves (jumps between distant extrusion points)."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2304
+#: src/libslic3r/PrintConfig.cpp:2295
msgid "Use firmware retraction"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2305
+#: src/libslic3r/PrintConfig.cpp:2296
msgid ""
"This experimental setting uses G10 and G11 commands to have the firmware "
"handle the retraction. This is only supported in recent Marlin."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2311
+#: src/libslic3r/PrintConfig.cpp:2302
msgid "Use relative E distances"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2312
+#: src/libslic3r/PrintConfig.cpp:2303
msgid ""
"If your firmware requires relative E values, check this, otherwise leave it "
"unchecked. Most firmwares use absolute values."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2318
+#: src/libslic3r/PrintConfig.cpp:2309
msgid "Use volumetric E"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2319
+#: src/libslic3r/PrintConfig.cpp:2310
msgid ""
"This experimental setting uses outputs the E values in cubic millimeters "
"instead of linear millimeters. If your firmware doesn't already know "
@@ -10184,127 +10265,127 @@ msgid ""
"only supported in recent Marlin."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2329
+#: src/libslic3r/PrintConfig.cpp:2320
msgid "Enable variable layer height feature"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2330
+#: src/libslic3r/PrintConfig.cpp:2321
msgid ""
"Some printers or printer setups may have difficulties printing with a "
"variable layer height. Enabled by default."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2336
+#: src/libslic3r/PrintConfig.cpp:2327
msgid "Wipe while retracting"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2337
+#: src/libslic3r/PrintConfig.cpp:2328
msgid ""
"This flag will move the nozzle while retracting to minimize the possible "
"blob on leaky extruders."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2344
+#: src/libslic3r/PrintConfig.cpp:2335
msgid ""
"Multi material printers may need to prime or purge extruders on tool "
"changes. Extrude the excess material into the wipe tower."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2350
+#: src/libslic3r/PrintConfig.cpp:2341
msgid "Purging volumes - load/unload volumes"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2351
+#: src/libslic3r/PrintConfig.cpp:2342
msgid ""
"This vector saves required volumes to change from/to each tool used on the "
"wipe tower. These values are used to simplify creation of the full purging "
"volumes below."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2357
+#: src/libslic3r/PrintConfig.cpp:2348
msgid "Purging volumes - matrix"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2358
+#: src/libslic3r/PrintConfig.cpp:2349
msgid ""
"This matrix describes volumes (in cubic milimetres) required to purge the "
"new filament on the wipe tower for any given pair of tools."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2367
+#: src/libslic3r/PrintConfig.cpp:2358
msgid "Position X"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2368
+#: src/libslic3r/PrintConfig.cpp:2359
msgid "X coordinate of the left front corner of a wipe tower"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2374
+#: src/libslic3r/PrintConfig.cpp:2365
msgid "Position Y"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2375
+#: src/libslic3r/PrintConfig.cpp:2366
msgid "Y coordinate of the left front corner of a wipe tower"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2382
+#: src/libslic3r/PrintConfig.cpp:2373
msgid "Width of a wipe tower"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2388
+#: src/libslic3r/PrintConfig.cpp:2379
msgid "Wipe tower rotation angle"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2389
+#: src/libslic3r/PrintConfig.cpp:2380
msgid "Wipe tower rotation angle with respect to x-axis."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2396
+#: src/libslic3r/PrintConfig.cpp:2387
msgid "Wipe into this object's infill"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2397
+#: src/libslic3r/PrintConfig.cpp:2388
msgid ""
"Purging after toolchange will done inside this object's infills. This lowers "
"the amount of waste but may result in longer print time due to additional "
"travel moves."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2404
+#: src/libslic3r/PrintConfig.cpp:2395
msgid "Wipe into this object"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2405
+#: src/libslic3r/PrintConfig.cpp:2396
msgid ""
"Object will be used to purge the nozzle after a toolchange to save material "
"that would otherwise end up in the wipe tower and decrease print time. "
"Colours of the objects will be mixed as a result."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2411
+#: src/libslic3r/PrintConfig.cpp:2402
msgid "Maximal bridging distance"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2412
+#: src/libslic3r/PrintConfig.cpp:2403
msgid "Maximal distance between supports on sparse infill sections."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2418
+#: src/libslic3r/PrintConfig.cpp:2409
msgid "XY Size Compensation"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2420
+#: src/libslic3r/PrintConfig.cpp:2411
msgid ""
"The object will be grown/shrunk in the XY plane by the configured value "
"(negative = inwards, positive = outwards). This might be useful for fine-"
"tuning hole sizes."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2428
+#: src/libslic3r/PrintConfig.cpp:2419
msgid "Z offset"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2429
+#: src/libslic3r/PrintConfig.cpp:2420
msgid ""
"This value will be added (or subtracted) from all the Z coordinates in the "
"output G-code. It is used to compensate for bad Z endstop position: for "
@@ -10312,414 +10393,414 @@ msgid ""
"print bed, set this to -0.3 (or fix your endstop)."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2496
+#: src/libslic3r/PrintConfig.cpp:2487
msgid "Display width"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2497
+#: src/libslic3r/PrintConfig.cpp:2488
msgid "Width of the display"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2502
+#: src/libslic3r/PrintConfig.cpp:2493
msgid "Display height"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2503
+#: src/libslic3r/PrintConfig.cpp:2494
msgid "Height of the display"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2508
+#: src/libslic3r/PrintConfig.cpp:2499
msgid "Number of pixels in"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2510
+#: src/libslic3r/PrintConfig.cpp:2501
msgid "Number of pixels in X"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2516
+#: src/libslic3r/PrintConfig.cpp:2507
msgid "Number of pixels in Y"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2521
+#: src/libslic3r/PrintConfig.cpp:2512
msgid "Display horizontal mirroring"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2522
+#: src/libslic3r/PrintConfig.cpp:2513
msgid "Mirror horizontally"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2523
+#: src/libslic3r/PrintConfig.cpp:2514
msgid "Enable horizontal mirroring of output images"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2528
+#: src/libslic3r/PrintConfig.cpp:2519
msgid "Display vertical mirroring"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2529
+#: src/libslic3r/PrintConfig.cpp:2520
msgid "Mirror vertically"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2530
+#: src/libslic3r/PrintConfig.cpp:2521
msgid "Enable vertical mirroring of output images"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2535
+#: src/libslic3r/PrintConfig.cpp:2526
msgid "Display orientation"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2536
+#: src/libslic3r/PrintConfig.cpp:2527
msgid ""
"Set the actual LCD display orientation inside the SLA printer. Portrait mode "
"will flip the meaning of display width and height parameters and the output "
"images will be rotated by 90 degrees."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2542
+#: src/libslic3r/PrintConfig.cpp:2533
msgid "Landscape"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2543
+#: src/libslic3r/PrintConfig.cpp:2534
msgid "Portrait"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2548
+#: src/libslic3r/PrintConfig.cpp:2539
msgid "Fast"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2549
+#: src/libslic3r/PrintConfig.cpp:2540
msgid "Fast tilt"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2550
+#: src/libslic3r/PrintConfig.cpp:2541
msgid "Time of the fast tilt"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2557
+#: src/libslic3r/PrintConfig.cpp:2548
msgid "Slow"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2558
+#: src/libslic3r/PrintConfig.cpp:2549
msgid "Slow tilt"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2559
+#: src/libslic3r/PrintConfig.cpp:2550
msgid "Time of the slow tilt"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2566
+#: src/libslic3r/PrintConfig.cpp:2557
msgid "Area fill"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2567
+#: src/libslic3r/PrintConfig.cpp:2558
msgid ""
"The percentage of the bed area. \n"
"If the print area exceeds the specified value, \n"
"then a slow tilt will be used, otherwise - a fast tilt"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2574 src/libslic3r/PrintConfig.cpp:2575
-#: src/libslic3r/PrintConfig.cpp:2576
+#: src/libslic3r/PrintConfig.cpp:2565 src/libslic3r/PrintConfig.cpp:2566
+#: src/libslic3r/PrintConfig.cpp:2567
msgid "Printer scaling correction"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2582 src/libslic3r/PrintConfig.cpp:2583
+#: src/libslic3r/PrintConfig.cpp:2573 src/libslic3r/PrintConfig.cpp:2574
msgid "Printer absolute correction"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2584
+#: src/libslic3r/PrintConfig.cpp:2575
msgid ""
"Will inflate or deflate the sliced 2D polygons according to the sign of the "
"correction."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2590
+#: src/libslic3r/PrintConfig.cpp:2581
msgid "Elephant foot minimum width"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2592
+#: src/libslic3r/PrintConfig.cpp:2583
msgid ""
"Minimum width of features to maintain when doing elephant foot compensation."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2599 src/libslic3r/PrintConfig.cpp:2600
+#: src/libslic3r/PrintConfig.cpp:2590 src/libslic3r/PrintConfig.cpp:2591
msgid "Printer gamma correction"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2601
+#: src/libslic3r/PrintConfig.cpp:2592
msgid ""
"This will apply a gamma correction to the rasterized 2D polygons. A gamma "
"value of zero means thresholding with the threshold in the middle. This "
"behaviour eliminates antialiasing without losing holes in polygons."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2613 src/libslic3r/PrintConfig.cpp:2614
+#: src/libslic3r/PrintConfig.cpp:2604 src/libslic3r/PrintConfig.cpp:2605
msgid "SLA material type"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2625 src/libslic3r/PrintConfig.cpp:2626
+#: src/libslic3r/PrintConfig.cpp:2616 src/libslic3r/PrintConfig.cpp:2617
msgid "Initial layer height"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2632 src/libslic3r/PrintConfig.cpp:2633
+#: src/libslic3r/PrintConfig.cpp:2623 src/libslic3r/PrintConfig.cpp:2624
msgid "Bottle volume"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2634
+#: src/libslic3r/PrintConfig.cpp:2625
msgid "ml"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2639 src/libslic3r/PrintConfig.cpp:2640
+#: src/libslic3r/PrintConfig.cpp:2630 src/libslic3r/PrintConfig.cpp:2631
msgid "Bottle weight"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2641
+#: src/libslic3r/PrintConfig.cpp:2632
msgid "kg"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2648
+#: src/libslic3r/PrintConfig.cpp:2639
msgid "g/ml"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2655
+#: src/libslic3r/PrintConfig.cpp:2646
msgid "money/bottle"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2660
+#: src/libslic3r/PrintConfig.cpp:2651
msgid "Faded layers"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2661
+#: src/libslic3r/PrintConfig.cpp:2652
msgid ""
"Number of the layers needed for the exposure time fade from initial exposure "
"time to the exposure time"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2668 src/libslic3r/PrintConfig.cpp:2669
+#: src/libslic3r/PrintConfig.cpp:2659 src/libslic3r/PrintConfig.cpp:2660
msgid "Minimum exposure time"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2676 src/libslic3r/PrintConfig.cpp:2677
+#: src/libslic3r/PrintConfig.cpp:2667 src/libslic3r/PrintConfig.cpp:2668
msgid "Maximum exposure time"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2684 src/libslic3r/PrintConfig.cpp:2685
+#: src/libslic3r/PrintConfig.cpp:2675 src/libslic3r/PrintConfig.cpp:2676
msgid "Exposure time"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2691 src/libslic3r/PrintConfig.cpp:2692
+#: src/libslic3r/PrintConfig.cpp:2682 src/libslic3r/PrintConfig.cpp:2683
msgid "Minimum initial exposure time"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2699 src/libslic3r/PrintConfig.cpp:2700
+#: src/libslic3r/PrintConfig.cpp:2690 src/libslic3r/PrintConfig.cpp:2691
msgid "Maximum initial exposure time"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2707 src/libslic3r/PrintConfig.cpp:2708
+#: src/libslic3r/PrintConfig.cpp:2698 src/libslic3r/PrintConfig.cpp:2699
msgid "Initial exposure time"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2714 src/libslic3r/PrintConfig.cpp:2715
+#: src/libslic3r/PrintConfig.cpp:2705 src/libslic3r/PrintConfig.cpp:2706
msgid "Correction for expansion"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2721
+#: src/libslic3r/PrintConfig.cpp:2712
msgid "SLA print material notes"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2722
+#: src/libslic3r/PrintConfig.cpp:2713
msgid "You can put your notes regarding the SLA print material here."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2734 src/libslic3r/PrintConfig.cpp:2745
+#: src/libslic3r/PrintConfig.cpp:2725 src/libslic3r/PrintConfig.cpp:2736
msgid "Default SLA material profile"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2756
+#: src/libslic3r/PrintConfig.cpp:2747
msgid "Generate supports"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2758
+#: src/libslic3r/PrintConfig.cpp:2749
msgid "Generate supports for the models"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2763
+#: src/libslic3r/PrintConfig.cpp:2754
msgid "Pinhead front diameter"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2765
+#: src/libslic3r/PrintConfig.cpp:2756
msgid "Diameter of the pointing side of the head"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2772
+#: src/libslic3r/PrintConfig.cpp:2763
msgid "Head penetration"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2774
+#: src/libslic3r/PrintConfig.cpp:2765
msgid "How much the pinhead has to penetrate the model surface"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2781
+#: src/libslic3r/PrintConfig.cpp:2772
msgid "Pinhead width"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2783
+#: src/libslic3r/PrintConfig.cpp:2774
msgid "Width from the back sphere center to the front sphere center"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2791
+#: src/libslic3r/PrintConfig.cpp:2782
msgid "Pillar diameter"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2793
+#: src/libslic3r/PrintConfig.cpp:2784
msgid "Diameter in mm of the support pillars"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2801
+#: src/libslic3r/PrintConfig.cpp:2792
msgid "Small pillar diameter percent"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2803
+#: src/libslic3r/PrintConfig.cpp:2794
msgid ""
"The percentage of smaller pillars compared to the normal pillar diameter "
"which are used in problematic areas where a normal pilla cannot fit."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2812
+#: src/libslic3r/PrintConfig.cpp:2803
msgid "Max bridges on a pillar"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2814
+#: src/libslic3r/PrintConfig.cpp:2805
msgid ""
"Maximum number of bridges that can be placed on a pillar. Bridges hold "
"support point pinheads and connect to pillars as small branches."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2822
+#: src/libslic3r/PrintConfig.cpp:2813
msgid "Pillar connection mode"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2823
+#: src/libslic3r/PrintConfig.cpp:2814
msgid ""
"Controls the bridge type between two neighboring pillars. Can be zig-zag, "
"cross (double zig-zag) or dynamic which will automatically switch between "
"the first two depending on the distance of the two pillars."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2831
+#: src/libslic3r/PrintConfig.cpp:2822
msgid "Zig-Zag"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2832
+#: src/libslic3r/PrintConfig.cpp:2823
msgid "Cross"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2833
+#: src/libslic3r/PrintConfig.cpp:2824
msgid "Dynamic"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2845
+#: src/libslic3r/PrintConfig.cpp:2836
msgid "Pillar widening factor"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2847
+#: src/libslic3r/PrintConfig.cpp:2838
msgid ""
"Merging bridges or pillars into another pillars can increase the radius. "
"Zero means no increase, one means full increase."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2856
+#: src/libslic3r/PrintConfig.cpp:2847
msgid "Support base diameter"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2858
+#: src/libslic3r/PrintConfig.cpp:2849
msgid "Diameter in mm of the pillar base"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2866
+#: src/libslic3r/PrintConfig.cpp:2857
msgid "Support base height"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2868
+#: src/libslic3r/PrintConfig.cpp:2859
msgid "The height of the pillar base cone"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2875
+#: src/libslic3r/PrintConfig.cpp:2866
msgid "Support base safety distance"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2878
+#: src/libslic3r/PrintConfig.cpp:2869
msgid ""
"The minimum distance of the pillar base from the model in mm. Makes sense in "
"zero elevation mode where a gap according to this parameter is inserted "
"between the model and the pad."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2888
+#: src/libslic3r/PrintConfig.cpp:2879
msgid "Critical angle"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2890
+#: src/libslic3r/PrintConfig.cpp:2881
msgid "The default angle for connecting support sticks and junctions."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2898
+#: src/libslic3r/PrintConfig.cpp:2889
msgid "Max bridge length"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2900
+#: src/libslic3r/PrintConfig.cpp:2891
msgid "The max length of a bridge"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2907
+#: src/libslic3r/PrintConfig.cpp:2898
msgid "Max pillar linking distance"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2909
+#: src/libslic3r/PrintConfig.cpp:2900
msgid ""
"The max distance of two pillars to get linked with each other. A zero value "
"will prohibit pillar cascading."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2919
+#: src/libslic3r/PrintConfig.cpp:2910
msgid ""
"How much the supports should lift up the supported object. If \"Pad around "
"object\" is enabled, this value is ignored."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2930
+#: src/libslic3r/PrintConfig.cpp:2921
msgid "This is a relative measure of support points density."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2936
+#: src/libslic3r/PrintConfig.cpp:2927
msgid "Minimal distance of the support points"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2938
+#: src/libslic3r/PrintConfig.cpp:2929
msgid "No support points will be placed closer than this threshold."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2944
+#: src/libslic3r/PrintConfig.cpp:2935
msgid "Use pad"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2946
+#: src/libslic3r/PrintConfig.cpp:2937
msgid "Add a pad underneath the supported model"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2951
+#: src/libslic3r/PrintConfig.cpp:2942
msgid "Pad wall thickness"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2953
+#: src/libslic3r/PrintConfig.cpp:2944
msgid "The thickness of the pad and its optional cavity walls."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2961
+#: src/libslic3r/PrintConfig.cpp:2952
msgid "Pad wall height"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2962
+#: src/libslic3r/PrintConfig.cpp:2953
msgid ""
"Defines the pad cavity depth. Set to zero to disable the cavity. Be careful "
"when enabling this feature, as some resins may produce an extreme suction "
@@ -10727,107 +10808,107 @@ msgid ""
"difficult."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2975
+#: src/libslic3r/PrintConfig.cpp:2966
msgid "Pad brim size"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2976
+#: src/libslic3r/PrintConfig.cpp:2967
msgid "How far should the pad extend around the contained geometry"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2986
+#: src/libslic3r/PrintConfig.cpp:2977
msgid "Max merge distance"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:2988
+#: src/libslic3r/PrintConfig.cpp:2979
msgid ""
"Some objects can get along with a few smaller pads instead of a single big "
"one. This parameter defines how far the center of two smaller pads should "
"be. If theyare closer, they will get merged into one pad."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3008
+#: src/libslic3r/PrintConfig.cpp:2999
msgid "Pad wall slope"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3010
+#: src/libslic3r/PrintConfig.cpp:3001
msgid ""
"The slope of the pad wall relative to the bed plane. 90 degrees means "
"straight walls."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3021
+#: src/libslic3r/PrintConfig.cpp:3012
msgid "Create pad around object and ignore the support elevation"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3026
+#: src/libslic3r/PrintConfig.cpp:3017
msgid "Pad around object everywhere"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3028
+#: src/libslic3r/PrintConfig.cpp:3019
msgid "Force pad around object everywhere"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3033
+#: src/libslic3r/PrintConfig.cpp:3024
msgid "Pad object gap"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3035
+#: src/libslic3r/PrintConfig.cpp:3026
msgid ""
"The gap between the object bottom and the generated pad in zero elevation "
"mode."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3044
+#: src/libslic3r/PrintConfig.cpp:3035
msgid "Pad object connector stride"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3046
+#: src/libslic3r/PrintConfig.cpp:3037
msgid ""
"Distance between two connector sticks which connect the object and the "
"generated pad."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3053
+#: src/libslic3r/PrintConfig.cpp:3044
msgid "Pad object connector width"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3055
+#: src/libslic3r/PrintConfig.cpp:3046
msgid ""
"Width of the connector sticks which connect the object and the generated pad."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3062
+#: src/libslic3r/PrintConfig.cpp:3053
msgid "Pad object connector penetration"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3065
+#: src/libslic3r/PrintConfig.cpp:3056
msgid "How much should the tiny connectors penetrate into the model body."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3072
+#: src/libslic3r/PrintConfig.cpp:3063
msgid "Enable hollowing"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3074
+#: src/libslic3r/PrintConfig.cpp:3065
msgid "Hollow out a model to have an empty interior"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3079
+#: src/libslic3r/PrintConfig.cpp:3070
msgid "Wall thickness"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3081
+#: src/libslic3r/PrintConfig.cpp:3072
msgid "Minimum wall thickness of a hollowed model."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3091
+#: src/libslic3r/PrintConfig.cpp:3082
msgid ""
"Performance vs accuracy of calculation. Lower values may produce unwanted "
"artifacts."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3101
+#: src/libslic3r/PrintConfig.cpp:3092
msgid ""
"Hollowing is done in two steps: first, an imaginary interior is calculated "
"deeper (offset plus the closing distance) in the object and then it's "
@@ -10836,266 +10917,266 @@ msgid ""
"most."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3513
+#: src/libslic3r/PrintConfig.cpp:3505
msgid "Export OBJ"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3514
+#: src/libslic3r/PrintConfig.cpp:3506
msgid "Export the model(s) as OBJ."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3525
+#: src/libslic3r/PrintConfig.cpp:3517
msgid "Export SLA"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3526
+#: src/libslic3r/PrintConfig.cpp:3518
msgid "Slice the model and export SLA printing layers as PNG."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3531
+#: src/libslic3r/PrintConfig.cpp:3523
msgid "Export 3MF"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3532
+#: src/libslic3r/PrintConfig.cpp:3524
msgid "Export the model(s) as 3MF."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3536
+#: src/libslic3r/PrintConfig.cpp:3528
msgid "Export AMF"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3537
+#: src/libslic3r/PrintConfig.cpp:3529
msgid "Export the model(s) as AMF."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3541
+#: src/libslic3r/PrintConfig.cpp:3533
msgid "Export STL"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3542
+#: src/libslic3r/PrintConfig.cpp:3534
msgid "Export the model(s) as STL."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3547
+#: src/libslic3r/PrintConfig.cpp:3539
msgid "Slice the model and export toolpaths as G-code."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3552
+#: src/libslic3r/PrintConfig.cpp:3544
msgid "G-code viewer"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3553
+#: src/libslic3r/PrintConfig.cpp:3545
msgid "Visualize an already sliced and saved G-code"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3558
+#: src/libslic3r/PrintConfig.cpp:3550
msgid "Slice"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3559
+#: src/libslic3r/PrintConfig.cpp:3551
msgid ""
"Slice the model as FFF or SLA based on the printer_technology configuration "
"value."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3564
+#: src/libslic3r/PrintConfig.cpp:3556
msgid "Help"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3565
+#: src/libslic3r/PrintConfig.cpp:3557
msgid "Show this help."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3570
+#: src/libslic3r/PrintConfig.cpp:3562
msgid "Help (FFF options)"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3571
+#: src/libslic3r/PrintConfig.cpp:3563
msgid "Show the full list of print/G-code configuration options."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3575
+#: src/libslic3r/PrintConfig.cpp:3567
msgid "Help (SLA options)"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3576
+#: src/libslic3r/PrintConfig.cpp:3568
msgid "Show the full list of SLA print configuration options."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3580
+#: src/libslic3r/PrintConfig.cpp:3572
msgid "Output Model Info"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3581
+#: src/libslic3r/PrintConfig.cpp:3573
msgid "Write information about the model to the console."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3585
+#: src/libslic3r/PrintConfig.cpp:3577
msgid "Save config file"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3586
+#: src/libslic3r/PrintConfig.cpp:3578
msgid "Save configuration to the specified file."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3596
+#: src/libslic3r/PrintConfig.cpp:3588
msgid "Align XY"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3597
+#: src/libslic3r/PrintConfig.cpp:3589
msgid "Align the model to the given point."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3602
+#: src/libslic3r/PrintConfig.cpp:3594
msgid "Cut model at the given Z."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3623
+#: src/libslic3r/PrintConfig.cpp:3615
msgid "Center"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3624
+#: src/libslic3r/PrintConfig.cpp:3616
msgid "Center the print around the given center."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3628
+#: src/libslic3r/PrintConfig.cpp:3620
msgid "Don't arrange"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3629
+#: src/libslic3r/PrintConfig.cpp:3621
msgid ""
"Do not rearrange the given models before merging and keep their original XY "
"coordinates."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3632
+#: src/libslic3r/PrintConfig.cpp:3624
msgid "Duplicate"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3633
+#: src/libslic3r/PrintConfig.cpp:3625
msgid "Multiply copies by this factor."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3637
+#: src/libslic3r/PrintConfig.cpp:3629
msgid "Duplicate by grid"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3638
+#: src/libslic3r/PrintConfig.cpp:3630
msgid "Multiply copies by creating a grid."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3642
+#: src/libslic3r/PrintConfig.cpp:3634
msgid ""
"Arrange the supplied models in a plate and merge them in a single model in "
"order to perform actions once."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3647
+#: src/libslic3r/PrintConfig.cpp:3639
msgid ""
"Try to repair any non-manifold meshes (this option is implicitly added "
"whenever we need to slice the model to perform the requested action)."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3651
+#: src/libslic3r/PrintConfig.cpp:3643
msgid "Rotation angle around the Z axis in degrees."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3655
+#: src/libslic3r/PrintConfig.cpp:3647
msgid "Rotate around X"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3656
+#: src/libslic3r/PrintConfig.cpp:3648
msgid "Rotation angle around the X axis in degrees."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3660
+#: src/libslic3r/PrintConfig.cpp:3652
msgid "Rotate around Y"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3661
+#: src/libslic3r/PrintConfig.cpp:3653
msgid "Rotation angle around the Y axis in degrees."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3666
+#: src/libslic3r/PrintConfig.cpp:3658
msgid "Scaling factor or percentage."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3671
+#: src/libslic3r/PrintConfig.cpp:3663
msgid ""
"Detect unconnected parts in the given model(s) and split them into separate "
"objects."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3674
+#: src/libslic3r/PrintConfig.cpp:3666
msgid "Scale to Fit"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3675
+#: src/libslic3r/PrintConfig.cpp:3667
msgid "Scale to fit the given volume."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3684
+#: src/libslic3r/PrintConfig.cpp:3676
msgid "Ignore non-existent config files"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3685
+#: src/libslic3r/PrintConfig.cpp:3677
msgid "Do not fail if a file supplied to --load does not exist."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3688
+#: src/libslic3r/PrintConfig.cpp:3680
msgid "Load config file"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3689
+#: src/libslic3r/PrintConfig.cpp:3681
msgid ""
"Load configuration from the specified file. It can be used more than once to "
"load options from multiple files."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3692
+#: src/libslic3r/PrintConfig.cpp:3684
msgid "Output File"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3693
+#: src/libslic3r/PrintConfig.cpp:3685
msgid ""
"The file where the output will be written (if not specified, it will be "
"based on the input file)."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3698
+#: src/libslic3r/PrintConfig.cpp:3690
msgid ""
"If enabled, the command line arguments are sent to an existing instance of "
"GUI PrusaSlicer, or an existing PrusaSlicer window is activated. Overrides "
"the \"single_instance\" configuration value from application preferences."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3709
+#: src/libslic3r/PrintConfig.cpp:3701
msgid "Data directory"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3710
+#: src/libslic3r/PrintConfig.cpp:3702
msgid ""
"Load and store settings at the given directory. This is useful for "
"maintaining different profiles or including configurations from a network "
"storage."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3713
+#: src/libslic3r/PrintConfig.cpp:3705
msgid "Logging level"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3714
+#: src/libslic3r/PrintConfig.cpp:3706
msgid ""
"Sets logging sensitivity. 0:fatal, 1:error, 2:warning, 3:info, 4:debug, 5:"
"trace\n"
"For example. loglevel=2 logs fatal, error and warning level messages."
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3720
+#: src/libslic3r/PrintConfig.cpp:3712
msgid "Render with a software renderer"
msgstr ""
-#: src/libslic3r/PrintConfig.cpp:3721
+#: src/libslic3r/PrintConfig.cpp:3713
msgid ""
"Render with a software renderer. The bundled MESA software renderer is "
"loaded instead of the default OpenGL driver."
diff --git a/resources/profiles/Anycubic.idx b/resources/profiles/Anycubic.idx
index d55dbb5f6..a276514e3 100644
--- a/resources/profiles/Anycubic.idx
+++ b/resources/profiles/Anycubic.idx
@@ -1,4 +1,5 @@
min_slic3r_version = 2.3.0-alpha2
+0.0.3 Fixed infill_overlap, start_gcode, end_gcode for Anycubic Predator
0.0.2 Added Anycubic Predator
min_slic3r_version = 2.3.0-alpha0
0.0.1 Initial Version
diff --git a/resources/profiles/Anycubic.ini b/resources/profiles/Anycubic.ini
index 0f231f968..f1f432bd3 100644
--- a/resources/profiles/Anycubic.ini
+++ b/resources/profiles/Anycubic.ini
@@ -5,7 +5,7 @@
name = Anycubic
# Configuration version of this file. Config file will only be installed, if the config_version differs.
# This means, the server may force the PrusaSlicer configuration to be downgraded.
-config_version = 0.0.2
+config_version = 0.0.3
# Where to get the updates from?
config_update_url = https://files.prusa3d.com/wp-content/uploads/repository/PrusaSlicer-settings-master/live/Anycubic/
# changelog_url = https://files.prusa3d.com/?latest=slicer-profiles&lng=%1%
@@ -1169,7 +1169,7 @@ wipe_tower_width = 60
wipe_tower_rotation_angle = 0
wipe_tower_bridging = 10
interface_shells = 0
-infill_overlap = 20%
+infill_overlap = 25%
bridge_flow_ratio = 0.8
resolution = 0
xy_size_compensation = 0
@@ -1704,8 +1704,8 @@ use_relative_e_distances = 0
use_firmware_retraction = 0
use_volumetric_e = 0
variable_layer_height = 1
-start_gcode = "; start_gcode | start\n\n; v11 2020-09-02_14-27 tillverka\n\n; set metric values\n\nG21\n\n; use absolute positioning\n\nG90\n\n; set extruder to absolute mode\n\nM82\n\n; start with fan off\n\nM107\n\n; set e-steps for bondtech bmg and force store in eeprom\n; mm/step for chitu\n; 1/415 for bondtech bmg\n\nM8011 S0.0024096394\nM8500\n\n; set temps\n\nM104 S[first_layer_temperature]\nM140 S[first_layer_bed_temperature]\n\n; home xy\n\nG28 X0 Y0\n\n; home z\n\nG28 Z0\n\n; move the head down to Z 94mm\n\nG1 Z94.0 F2394\n\n; set and wait for temps\n\nM109 S[first_layer_temperature]\nM190 S[first_layer_bed_temperature]\n\n; zero the extruded length\n\nG92 E0\n\n; extrude 3mm of feed stock\n\nG1 F200 E3\n\n; zero the extruded length again\n\nG92 E0\n\n; set speed\n\nG1 F{travel_speed}\n\n; print preskirt\n\nG92 E0\nG1 E3.94000 F2520.00000\n\nG1 X125.464 Y-139.310\nG1 Z0.329 F3994.000\n\nG1 F994.000\n\nG1 X125.464 Y-139.310 E4.19679\nG1 X130.218 Y-134.876 E4.70359\nG1 X132.569 Y-132.567 E4.96053\nG1 X137.099 Y-127.877 E5.46890\nG1 X139.325 Y-125.447 E5.72585\nG1 X141.507 Y-122.981 E5.98254\nG1 X145.685 Y-118.002 E6.48934\nG1 X149.741 Y-112.810 E7.00296\nG1 X153.561 Y-107.552 E7.50975\nG1 X155.440 Y-104.819 E7.76827\nG1 X158.980 Y-99.367 E8.27506\nG1 X160.702 Y-96.558 E8.53201\nG1 X163.962 Y-90.911 E9.04038\nG1 X165.535 Y-88.015 E9.29732\nG1 X168.496 Y-82.205 E9.80570\nG1 X169.915 Y-79.231 E10.06264\nG1 X171.280 Y-76.235 E10.31934\nG1 X173.819 Y-70.251 E10.82613\nG1 X176.180 Y-64.101 E11.33975\nG1 X178.297 Y-57.955 E11.84654\nG1 X179.294 Y-54.793 E12.10507\nG1 X181.085 Y-48.544 E12.61186\nG1 X181.911 Y-45.354 E12.86880\nG1 X183.378 Y-39.001 E13.37718\nG1 X184.035 Y-35.771 E13.63412\nG1 X185.168 Y-29.350 E14.14250\nG1 X185.655 Y-26.091 E14.39944\nG1 X186.084 Y-22.826 E14.65614\nG1 X186.764 Y-16.362 E15.16293\nG1 X187.223 Y-9.790 E15.67655\nG1 X187.450 Y-3.294 E16.18334\nG1 X187.479 Y0.002 E16.44028\nG1 X187.450 Y3.294 E16.69698\nG1 X187.223 Y9.810 E17.20529\nG1 X187.021 Y13.100 E17.46229\nG1 X186.454 Y19.575 E17.96909\nG1 X186.079 Y22.870 E18.22761\nG1 X185.174 Y29.307 E18.73440\nG1 X184.031 Y35.794 E19.24802\nG1 X182.679 Y42.152 E19.75481\nG1 X181.910 Y45.357 E20.01176\nG1 X180.223 Y51.655 E20.52013\nG1 X179.287 Y54.815 E20.77708\nG1 X177.272 Y61.017 E21.28545\nG1 X176.172 Y64.123 E21.54239\nG1 X175.019 Y67.207 E21.79909\nG1 X172.584 Y73.234 E22.30588\nG1 X169.905 Y79.252 E22.81950\nG1 X167.055 Y85.094 E23.32629\nG1 X165.524 Y88.035 E23.58482\nG1 X162.373 Y93.721 E24.09161\nG1 X160.700 Y96.560 E24.34855\nG1 X157.245 Y102.090 E24.85693\nG1 X155.427 Y104.838 E25.11387\nG1 X151.687 Y110.180 E25.62225\nG1 X149.727 Y112.829 E25.87919\nG1 X147.722 Y115.441 E26.13588\nG1 X143.631 Y120.493 E26.64268\nG1 X139.310 Y125.464 E27.15629\nG1 X134.876 Y130.218 E27.66309\nG1 X132.567 Y132.569 E27.92003\nG1 X127.877 Y137.099 E28.42840\nG1 X125.447 Y139.325 E28.68535\nG1 X122.981 Y141.507 E28.94204\nG1 X118.002 Y145.685 E29.44883\nG1 X112.810 Y149.741 E29.96245\nG1 X107.552 Y153.561 E30.46924\nG1 X104.819 Y155.440 E30.72777\nG1 X99.367 Y158.980 E31.23456\nG1 X96.558 Y160.702 E31.49151\nG1 X90.911 Y163.962 E31.99988\nG1 X88.015 Y165.535 E32.25682\nG1 X82.205 Y168.496 E32.76520\nG1 X79.231 Y169.915 E33.02214\nG1 X76.235 Y171.280 E33.27884\nG1 X70.251 Y173.819 E33.78563\nG1 X64.101 Y176.180 E34.29925\nG1 X57.955 Y178.297 E34.80604\nG1 X54.793 Y179.294 E35.06457\nG1 X48.544 Y181.085 E35.57136\nG1 X45.354 Y181.911 E35.82830\nG1 X39.001 Y183.378 E36.33668\nG1 X35.771 Y184.035 E36.59362\nG1 X29.350 Y185.168 E37.10200\nG1 X26.091 Y185.655 E37.35894\nG1 X22.826 Y186.084 E37.61563\nG1 X16.362 Y186.764 E38.12242\nG1 X9.790 Y187.223 E38.63605\nG1 X3.294 Y187.450 E39.14283\nG1 X-0.002 Y187.479 E39.39978\nG1 X-3.294 Y187.450 E39.65648\nG1 X-9.810 Y187.223 E40.16479\nG1 X-13.100 Y187.021 E40.42179\nG1 X-19.575 Y186.454 E40.92858\nG1 X-22.870 Y186.079 E41.18711\nG1 X-29.307 Y185.174 E41.69390\nG1 X-35.794 Y184.031 E42.20752\nG1 X-42.152 Y182.679 E42.71431\nG1 X-45.357 Y181.910 E42.97126\nG1 X-51.655 Y180.223 E43.47963\nG1 X-54.815 Y179.287 E43.73657\nG1 X-61.017 Y177.272 E44.24495\nG1 X-64.123 Y176.172 E44.50189\nG1 X-67.207 Y175.019 E44.75859\nG1 X-73.234 Y172.584 E45.26538\nG1 X-79.252 Y169.905 E45.77900\nG1 X-85.094 Y167.055 E46.28579\nG1 X-88.035 Y165.524 E46.54432\nG1 X-93.721 Y162.373 E47.05111\nG1 X-96.560 Y160.700 E47.30805\nG1 X-102.090 Y157.245 E47.81643\nG1 X-104.838 Y155.427 E48.07337\nG1 X-110.180 Y151.687 E48.58174\nG1 X-112.829 Y149.727 E48.83869\nG1 X-115.441 Y147.722 E49.09538\nG1 X-120.493 Y143.631 E49.60218\nG1 X-125.464 Y139.310 E50.11579\nG1 X-130.218 Y134.876 E50.62259\nG1 X-132.569 Y132.567 E50.87953\nG1 X-137.099 Y127.877 E51.38790\nG1 X-139.325 Y125.447 E51.64485\nG1 X-141.507 Y122.981 E51.90154\nG1 X-145.685 Y118.002 E52.40833\nG1 X-149.741 Y112.810 E52.92195\nG1 X-153.561 Y107.552 E53.42874\nG1 X-155.440 Y104.819 E53.68727\nG1 X-158.980 Y99.367 E54.19406\nG1 X-160.702 Y96.558 E54.45101\nG1 X-163.962 Y90.911 E54.95938\nG1 X-165.535 Y88.015 E55.21632\nG1 X-168.496 Y82.205 E55.72470\nG1 X-169.915 Y79.231 E55.98164\nG1 X-171.280 Y76.235 E56.23834\nG1 X-173.819 Y70.251 E56.74513\nG1 X-176.180 Y64.101 E57.25875\nG1 X-178.297 Y57.955 E57.76554\nG1 X-179.294 Y54.793 E58.02407\nG1 X-181.085 Y48.544 E58.53086\nG1 X-181.911 Y45.354 E58.78780\nG1 X-183.378 Y39.001 E59.29618\nG1 X-184.035 Y35.771 E59.55312\nG1 X-185.168 Y29.350 E60.06149\nG1 X-185.655 Y26.091 E60.31844\nG1 X-186.084 Y22.826 E60.57513\nG1 X-186.764 Y16.362 E61.08192\nG1 X-187.223 Y9.790 E61.59554\nG1 X-187.450 Y3.294 E62.10233\nG1 X-187.479 Y-0.002 E62.35928\nG1 X-187.450 Y-3.294 E62.61598\nG1 X-187.223 Y-9.810 E63.12429\nG1 X-187.021 Y-13.100 E63.38129\nG1 X-186.454 Y-19.575 E63.88808\nG1 X-186.079 Y-22.870 E64.14661\nG1 X-185.174 Y-29.307 E64.65340\nG1 X-184.031 Y-35.794 E65.16702\nG1 X-182.679 Y-42.152 E65.67381\nG1 X-181.910 Y-45.357 E65.93076\nG1 X-180.223 Y-51.655 E66.43913\nG1 X-179.287 Y-54.815 E66.69607\nG1 X-177.272 Y-61.017 E67.20445\nG1 X-176.172 Y-64.123 E67.46139\nG1 X-175.019 Y-67.207 E67.71809\nG1 X-172.584 Y-73.234 E68.22488\nG1 X-169.905 Y-79.252 E68.73850\nG1 X-167.055 Y-85.094 E69.24529\nG1 X-165.524 Y-88.035 E69.50382\nG1 X-162.373 Y-93.721 E70.01061\nG1 X-160.700 Y-96.560 E70.26755\nG1 X-157.245 Y-102.090 E70.77593\nG1 X-155.427 Y-104.838 E71.03287\nG1 X-151.687 Y-110.180 E71.54124\nG1 X-149.727 Y-112.829 E71.79819\nG1 X-147.722 Y-115.441 E72.05488\nG1 X-143.631 Y-120.493 E72.56167\nG1 X-139.310 Y-125.464 E73.07529\nG1 X-134.876 Y-130.218 E73.58209\nG1 X-132.567 Y-132.569 E73.83903\nG1 X-127.877 Y-137.099 E74.34740\nG1 X-125.447 Y-139.325 E74.60435\nG1 X-122.981 Y-141.507 E74.86104\nG1 X-118.002 Y-145.685 E75.36783\nG1 X-112.810 Y-149.741 E75.88145\nG1 X-107.552 Y-153.561 E76.38824\nG1 X-104.819 Y-155.440 E76.64677\nG1 X-99.367 Y-158.980 E77.15356\nG1 X-96.558 Y-160.702 E77.41051\nG1 X-90.911 Y-163.962 E77.91888\nG1 X-88.015 Y-165.535 E78.17582\nG1 X-82.205 Y-168.496 E78.68420\nG1 X-79.231 Y-169.915 E78.94114\nG1 X-76.235 Y-171.280 E79.19784\nG1 X-70.251 Y-173.819 E79.70463\nG1 X-64.101 Y-176.180 E80.21825\nG1 X-57.955 Y-178.297 E80.72504\nG1 X-54.793 Y-179.294 E80.98356\nG1 X-48.544 Y-181.085 E81.49036\nG1 X-45.354 Y-181.911 E81.74730\nG1 X-39.001 Y-183.378 E82.25568\nG1 X-35.771 Y-184.035 E82.51262\nG1 X-29.350 Y-185.168 E83.02099\nG1 X-26.091 Y-185.655 E83.27794\nG1 X-22.826 Y-186.084 E83.53463\nG1 X-16.362 Y-186.764 E84.04142\nG1 X-9.790 Y-187.223 E84.55504\nG1 X-3.294 Y-187.450 E85.06183\nG1 X0.006 Y-187.479 E85.31908\nG1 X6.521 Y-187.366 E85.82715\nG1 X9.810 Y-187.223 E86.08379\nG1 X13.100 Y-187.021 E86.34079\nG1 X19.575 Y-186.454 E86.84758\nG1 X22.870 Y-186.079 E87.10611\nG1 X29.307 Y-185.174 E87.61290\nG1 X35.794 Y-184.031 E88.12652\nG1 X42.152 Y-182.679 E88.63331\nG1 X45.357 Y-181.910 E88.89025\nG1 X51.655 Y-180.223 E89.39863\nG1 X54.815 Y-179.287 E89.65557\nG1 X61.017 Y-177.272 E90.16395\nG1 X64.123 Y-176.172 E90.42089\nG1 X67.207 Y-175.019 E90.67759\nG1 X73.234 Y-172.584 E91.18438\nG1 X79.252 Y-169.905 E91.69800\nG1 X85.094 Y-167.055 E92.20479\nG1 X88.035 Y-165.524 E92.46332\nG1 X93.721 Y-162.373 E92.97011\nG1 X96.560 Y-160.700 E93.22705\nG1 X102.090 Y-157.245 E93.73543\nG1 X104.838 Y-155.427 E93.99237\nG1 X110.180 Y-151.687 E94.50074\nG1 X112.829 Y-149.727 E94.75768\nG1 X115.441 Y-147.722 E95.01438\nG1 X120.493 Y-143.631 E95.52117\nG1 X122.911 Y-141.529 E95.77098\n\n; end preskirt\n; start_gcode | end"
-end_gcode = "; end_gcode | start\n\n; v11 2020-09-02_14-27 tillverka\n\n; use relative positioning\n\nG91\n\n; retract the filament a bit before lifting the nozzle to release some of the pressure\n\nG1 E-1 F300\n\n; home\n\nG28\n\n; use absolute positioning\n\nG90\n\n; cooldown\n\nM104 S0\nM140 S0\n\n; end_gcode | end\n"
+start_gcode = ; start_gcode | start\n\n; v11 2020-09-02_14-27 tillverka\n\n; set metric values\n\nG21\n\n; use absolute positioning\n\nG90\n\n; set extruder to absolute mode\n\nM82\n\n; start with fan off\n\nM107\n\n; set e-steps for bondtech bmg and force store in eeprom\n; mm/step for chitu\n; 1/415 for bondtech bmg\n\nM8011 S0.0024096394\nM8500\n\n; set temps\n\nM104 S[first_layer_temperature]\nM140 S[first_layer_bed_temperature]\n\n; home xy\n\nG28 X0 Y0\n\n; home z\n\nG28 Z0\n\n; move the head down to Z 94mm\n\nG1 Z94.0 F2394\n\n; set and wait for temps\n\nM109 S[first_layer_temperature]\nM190 S[first_layer_bed_temperature]\n\n; zero the extruded length\n\nG92 E0\n\n; extrude 3mm of feed stock\n\nG1 F200 E3\n\n; zero the extruded length again\n\nG92 E0\n\n; set speed\n\nG1 F{travel_speed}\n\n; print preskirt\n\nG92 E0\nG1 E3.94000 F2520.00000\n\nG1 X125.464 Y-139.310\nG1 Z0.329 F3994.000\n\nG1 F994.000\n\nG1 X125.464 Y-139.310 E4.19679\nG1 X130.218 Y-134.876 E4.70359\nG1 X132.569 Y-132.567 E4.96053\nG1 X137.099 Y-127.877 E5.46890\nG1 X139.325 Y-125.447 E5.72585\nG1 X141.507 Y-122.981 E5.98254\nG1 X145.685 Y-118.002 E6.48934\nG1 X149.741 Y-112.810 E7.00296\nG1 X153.561 Y-107.552 E7.50975\nG1 X155.440 Y-104.819 E7.76827\nG1 X158.980 Y-99.367 E8.27506\nG1 X160.702 Y-96.558 E8.53201\nG1 X163.962 Y-90.911 E9.04038\nG1 X165.535 Y-88.015 E9.29732\nG1 X168.496 Y-82.205 E9.80570\nG1 X169.915 Y-79.231 E10.06264\nG1 X171.280 Y-76.235 E10.31934\nG1 X173.819 Y-70.251 E10.82613\nG1 X176.180 Y-64.101 E11.33975\nG1 X178.297 Y-57.955 E11.84654\nG1 X179.294 Y-54.793 E12.10507\nG1 X181.085 Y-48.544 E12.61186\nG1 X181.911 Y-45.354 E12.86880\nG1 X183.378 Y-39.001 E13.37718\nG1 X184.035 Y-35.771 E13.63412\nG1 X185.168 Y-29.350 E14.14250\nG1 X185.655 Y-26.091 E14.39944\nG1 X186.084 Y-22.826 E14.65614\nG1 X186.764 Y-16.362 E15.16293\nG1 X187.223 Y-9.790 E15.67655\nG1 X187.450 Y-3.294 E16.18334\nG1 X187.479 Y0.002 E16.44028\nG1 X187.450 Y3.294 E16.69698\nG1 X187.223 Y9.810 E17.20529\nG1 X187.021 Y13.100 E17.46229\nG1 X186.454 Y19.575 E17.96909\nG1 X186.079 Y22.870 E18.22761\nG1 X185.174 Y29.307 E18.73440\nG1 X184.031 Y35.794 E19.24802\nG1 X182.679 Y42.152 E19.75481\nG1 X181.910 Y45.357 E20.01176\nG1 X180.223 Y51.655 E20.52013\nG1 X179.287 Y54.815 E20.77708\nG1 X177.272 Y61.017 E21.28545\nG1 X176.172 Y64.123 E21.54239\nG1 X175.019 Y67.207 E21.79909\nG1 X172.584 Y73.234 E22.30588\nG1 X169.905 Y79.252 E22.81950\nG1 X167.055 Y85.094 E23.32629\nG1 X165.524 Y88.035 E23.58482\nG1 X162.373 Y93.721 E24.09161\nG1 X160.700 Y96.560 E24.34855\nG1 X157.245 Y102.090 E24.85693\nG1 X155.427 Y104.838 E25.11387\nG1 X151.687 Y110.180 E25.62225\nG1 X149.727 Y112.829 E25.87919\nG1 X147.722 Y115.441 E26.13588\nG1 X143.631 Y120.493 E26.64268\nG1 X139.310 Y125.464 E27.15629\nG1 X134.876 Y130.218 E27.66309\nG1 X132.567 Y132.569 E27.92003\nG1 X127.877 Y137.099 E28.42840\nG1 X125.447 Y139.325 E28.68535\nG1 X122.981 Y141.507 E28.94204\nG1 X118.002 Y145.685 E29.44883\nG1 X112.810 Y149.741 E29.96245\nG1 X107.552 Y153.561 E30.46924\nG1 X104.819 Y155.440 E30.72777\nG1 X99.367 Y158.980 E31.23456\nG1 X96.558 Y160.702 E31.49151\nG1 X90.911 Y163.962 E31.99988\nG1 X88.015 Y165.535 E32.25682\nG1 X82.205 Y168.496 E32.76520\nG1 X79.231 Y169.915 E33.02214\nG1 X76.235 Y171.280 E33.27884\nG1 X70.251 Y173.819 E33.78563\nG1 X64.101 Y176.180 E34.29925\nG1 X57.955 Y178.297 E34.80604\nG1 X54.793 Y179.294 E35.06457\nG1 X48.544 Y181.085 E35.57136\nG1 X45.354 Y181.911 E35.82830\nG1 X39.001 Y183.378 E36.33668\nG1 X35.771 Y184.035 E36.59362\nG1 X29.350 Y185.168 E37.10200\nG1 X26.091 Y185.655 E37.35894\nG1 X22.826 Y186.084 E37.61563\nG1 X16.362 Y186.764 E38.12242\nG1 X9.790 Y187.223 E38.63605\nG1 X3.294 Y187.450 E39.14283\nG1 X-0.002 Y187.479 E39.39978\nG1 X-3.294 Y187.450 E39.65648\nG1 X-9.810 Y187.223 E40.16479\nG1 X-13.100 Y187.021 E40.42179\nG1 X-19.575 Y186.454 E40.92858\nG1 X-22.870 Y186.079 E41.18711\nG1 X-29.307 Y185.174 E41.69390\nG1 X-35.794 Y184.031 E42.20752\nG1 X-42.152 Y182.679 E42.71431\nG1 X-45.357 Y181.910 E42.97126\nG1 X-51.655 Y180.223 E43.47963\nG1 X-54.815 Y179.287 E43.73657\nG1 X-61.017 Y177.272 E44.24495\nG1 X-64.123 Y176.172 E44.50189\nG1 X-67.207 Y175.019 E44.75859\nG1 X-73.234 Y172.584 E45.26538\nG1 X-79.252 Y169.905 E45.77900\nG1 X-85.094 Y167.055 E46.28579\nG1 X-88.035 Y165.524 E46.54432\nG1 X-93.721 Y162.373 E47.05111\nG1 X-96.560 Y160.700 E47.30805\nG1 X-102.090 Y157.245 E47.81643\nG1 X-104.838 Y155.427 E48.07337\nG1 X-110.180 Y151.687 E48.58174\nG1 X-112.829 Y149.727 E48.83869\nG1 X-115.441 Y147.722 E49.09538\nG1 X-120.493 Y143.631 E49.60218\nG1 X-125.464 Y139.310 E50.11579\nG1 X-130.218 Y134.876 E50.62259\nG1 X-132.569 Y132.567 E50.87953\nG1 X-137.099 Y127.877 E51.38790\nG1 X-139.325 Y125.447 E51.64485\nG1 X-141.507 Y122.981 E51.90154\nG1 X-145.685 Y118.002 E52.40833\nG1 X-149.741 Y112.810 E52.92195\nG1 X-153.561 Y107.552 E53.42874\nG1 X-155.440 Y104.819 E53.68727\nG1 X-158.980 Y99.367 E54.19406\nG1 X-160.702 Y96.558 E54.45101\nG1 X-163.962 Y90.911 E54.95938\nG1 X-165.535 Y88.015 E55.21632\nG1 X-168.496 Y82.205 E55.72470\nG1 X-169.915 Y79.231 E55.98164\nG1 X-171.280 Y76.235 E56.23834\nG1 X-173.819 Y70.251 E56.74513\nG1 X-176.180 Y64.101 E57.25875\nG1 X-178.297 Y57.955 E57.76554\nG1 X-179.294 Y54.793 E58.02407\nG1 X-181.085 Y48.544 E58.53086\nG1 X-181.911 Y45.354 E58.78780\nG1 X-183.378 Y39.001 E59.29618\nG1 X-184.035 Y35.771 E59.55312\nG1 X-185.168 Y29.350 E60.06149\nG1 X-185.655 Y26.091 E60.31844\nG1 X-186.084 Y22.826 E60.57513\nG1 X-186.764 Y16.362 E61.08192\nG1 X-187.223 Y9.790 E61.59554\nG1 X-187.450 Y3.294 E62.10233\nG1 X-187.479 Y-0.002 E62.35928\nG1 X-187.450 Y-3.294 E62.61598\nG1 X-187.223 Y-9.810 E63.12429\nG1 X-187.021 Y-13.100 E63.38129\nG1 X-186.454 Y-19.575 E63.88808\nG1 X-186.079 Y-22.870 E64.14661\nG1 X-185.174 Y-29.307 E64.65340\nG1 X-184.031 Y-35.794 E65.16702\nG1 X-182.679 Y-42.152 E65.67381\nG1 X-181.910 Y-45.357 E65.93076\nG1 X-180.223 Y-51.655 E66.43913\nG1 X-179.287 Y-54.815 E66.69607\nG1 X-177.272 Y-61.017 E67.20445\nG1 X-176.172 Y-64.123 E67.46139\nG1 X-175.019 Y-67.207 E67.71809\nG1 X-172.584 Y-73.234 E68.22488\nG1 X-169.905 Y-79.252 E68.73850\nG1 X-167.055 Y-85.094 E69.24529\nG1 X-165.524 Y-88.035 E69.50382\nG1 X-162.373 Y-93.721 E70.01061\nG1 X-160.700 Y-96.560 E70.26755\nG1 X-157.245 Y-102.090 E70.77593\nG1 X-155.427 Y-104.838 E71.03287\nG1 X-151.687 Y-110.180 E71.54124\nG1 X-149.727 Y-112.829 E71.79819\nG1 X-147.722 Y-115.441 E72.05488\nG1 X-143.631 Y-120.493 E72.56167\nG1 X-139.310 Y-125.464 E73.07529\nG1 X-134.876 Y-130.218 E73.58209\nG1 X-132.567 Y-132.569 E73.83903\nG1 X-127.877 Y-137.099 E74.34740\nG1 X-125.447 Y-139.325 E74.60435\nG1 X-122.981 Y-141.507 E74.86104\nG1 X-118.002 Y-145.685 E75.36783\nG1 X-112.810 Y-149.741 E75.88145\nG1 X-107.552 Y-153.561 E76.38824\nG1 X-104.819 Y-155.440 E76.64677\nG1 X-99.367 Y-158.980 E77.15356\nG1 X-96.558 Y-160.702 E77.41051\nG1 X-90.911 Y-163.962 E77.91888\nG1 X-88.015 Y-165.535 E78.17582\nG1 X-82.205 Y-168.496 E78.68420\nG1 X-79.231 Y-169.915 E78.94114\nG1 X-76.235 Y-171.280 E79.19784\nG1 X-70.251 Y-173.819 E79.70463\nG1 X-64.101 Y-176.180 E80.21825\nG1 X-57.955 Y-178.297 E80.72504\nG1 X-54.793 Y-179.294 E80.98356\nG1 X-48.544 Y-181.085 E81.49036\nG1 X-45.354 Y-181.911 E81.74730\nG1 X-39.001 Y-183.378 E82.25568\nG1 X-35.771 Y-184.035 E82.51262\nG1 X-29.350 Y-185.168 E83.02099\nG1 X-26.091 Y-185.655 E83.27794\nG1 X-22.826 Y-186.084 E83.53463\nG1 X-16.362 Y-186.764 E84.04142\nG1 X-9.790 Y-187.223 E84.55504\nG1 X-3.294 Y-187.450 E85.06183\nG1 X0.006 Y-187.479 E85.31908\nG1 X6.521 Y-187.366 E85.82715\nG1 X9.810 Y-187.223 E86.08379\nG1 X13.100 Y-187.021 E86.34079\nG1 X19.575 Y-186.454 E86.84758\nG1 X22.870 Y-186.079 E87.10611\nG1 X29.307 Y-185.174 E87.61290\nG1 X35.794 Y-184.031 E88.12652\nG1 X42.152 Y-182.679 E88.63331\nG1 X45.357 Y-181.910 E88.89025\nG1 X51.655 Y-180.223 E89.39863\nG1 X54.815 Y-179.287 E89.65557\nG1 X61.017 Y-177.272 E90.16395\nG1 X64.123 Y-176.172 E90.42089\nG1 X67.207 Y-175.019 E90.67759\nG1 X73.234 Y-172.584 E91.18438\nG1 X79.252 Y-169.905 E91.69800\nG1 X85.094 Y-167.055 E92.20479\nG1 X88.035 Y-165.524 E92.46332\nG1 X93.721 Y-162.373 E92.97011\nG1 X96.560 Y-160.700 E93.22705\nG1 X102.090 Y-157.245 E93.73543\nG1 X104.838 Y-155.427 E93.99237\nG1 X110.180 Y-151.687 E94.50074\nG1 X112.829 Y-149.727 E94.75768\nG1 X115.441 Y-147.722 E95.01438\nG1 X120.493 Y-143.631 E95.52117\nG1 X122.911 Y-141.529 E95.77098\n\n; end preskirt\n; start_gcode | end
+end_gcode = ; end_gcode | start\n\n; v11 2020-09-02_14-27 tillverka\n\n; use relative positioning\n\nG91\n\n; retract the filament a bit before lifting the nozzle to release some of the pressure\n\nG1 E-1 F300\n\n; home\n\nG28\n\n; use absolute positioning\n\nG90\n\n; cooldown\n\nM104 S0\nM140 S0\n\n; end_gcode | end\n
before_layer_gcode =
layer_gcode =
toolchange_gcode =
diff --git a/resources/profiles/Creality.idx b/resources/profiles/Creality.idx
index 1403e2335..044fb168e 100644
--- a/resources/profiles/Creality.idx
+++ b/resources/profiles/Creality.idx
@@ -1,4 +1,5 @@
min_slic3r_version = 2.3.0-alpha2
+0.0.5 Added 0.08mm SUPERDETAIL and 0.28mm SUPERDRAFT print profiles. Updated OPTIMAL print profile.
0.0.4 Added initial CR-10 profile, end g-code improvements.
min_slic3r_version = 2.3.0-alpha0
0.0.3 Added Ender-2, Ender-3 BLTouch, updated Ender-3 bed texture.
diff --git a/resources/profiles/Creality.ini b/resources/profiles/Creality.ini
index 3f7893342..d9472d4c1 100644
--- a/resources/profiles/Creality.ini
+++ b/resources/profiles/Creality.ini
@@ -5,7 +5,7 @@
name = Creality
# Configuration version of this file. Config file will only be installed, if the config_version differs.
# This means, the server may force the PrusaSlicer configuration to be downgraded.
-config_version = 0.0.4
+config_version = 0.0.5
# Where to get the updates from?
config_update_url = https://files.prusa3d.com/wp-content/uploads/repository/PrusaSlicer-settings-master/live/Creality/
# changelog_url = https://files.prusa3d.com/?latest=slicer-profiles&lng=%1%
@@ -260,6 +260,13 @@ wipe_tower_x = 170
wipe_tower_y = 140
xy_size_compensation = 0
+[print:*0.08mm*]
+inherits = *common*
+layer_height = 0.08
+perimeters = 3
+bottom_solid_layers = 9
+top_solid_layers = 11
+
[print:*0.10mm*]
inherits = *common*
layer_height = 0.1
@@ -274,9 +281,9 @@ perimeters = 3
bottom_solid_layers = 6
top_solid_layers = 7
-[print:*0.15mm*]
+[print:*0.16mm*]
inherits = *common*
-layer_height = 0.15
+layer_height = 0.16
bottom_solid_layers = 5
top_solid_layers = 7
@@ -293,6 +300,17 @@ top_infill_extrusion_width = 0.45
bottom_solid_layers = 3
top_solid_layers = 4
+[print:*0.28mm*]
+inherits = *common*
+layer_height = 0.28
+top_infill_extrusion_width = 0.45
+bottom_solid_layers = 3
+top_solid_layers = 4
+
+[print:0.08mm SUPERDETAIL @CREALITY]
+inherits = *0.08mm*
+compatible_printers_condition = printer_model=~/(ENDER|CR).*/ and nozzle_diameter[0]==0.4
+
[print:0.10mm HIGHDETAIL @CREALITY]
inherits = *0.10mm*
renamed_from = "0.10mm HIGHDETAIL @ENDER3"
@@ -303,9 +321,9 @@ inherits = *0.12mm*
renamed_from = "0.12mm DETAIL @ENDER3"
compatible_printers_condition = printer_model=~/(ENDER|CR).*/ and nozzle_diameter[0]==0.4
-[print:0.15mm OPTIMAL @CREALITY]
-inherits = *0.15mm*
-renamed_from = "0.15mm OPTIMAL @ENDER3"
+[print:0.16mm OPTIMAL @CREALITY]
+inherits = *0.16mm*
+renamed_from = "0.15mm OPTIMAL @ENDER3"; "0.15mm OPTIMAL @CREALITY"
compatible_printers_condition = printer_model=~/(ENDER|CR).*/ and nozzle_diameter[0]==0.4
[print:0.20mm NORMAL @CREALITY]
@@ -318,6 +336,10 @@ inherits = *0.24mm*
renamed_from = "0.24mm DRAFT @ENDER3"
compatible_printers_condition = printer_model=~/(ENDER|CR).*/ and nozzle_diameter[0]==0.4
+[print:0.28mm SUPERDRAFT @CREALITY]
+inherits = *0.28mm*
+compatible_printers_condition = printer_model=~/(ENDER|CR).*/ and nozzle_diameter[0]==0.4
+
# Common filament preset
[filament:*common*]
cooling = 0
@@ -342,15 +364,15 @@ filament_max_volumetric_speed = 15
filament_type = PLA
filament_density = 1.24
filament_cost = 20
-first_layer_bed_temperature = 40
-first_layer_temperature = 215
+first_layer_bed_temperature = 60
+first_layer_temperature = 205
fan_always_on = 1
cooling = 1
max_fan_speed = 100
min_fan_speed = 100
bridge_fan_speed = 100
disable_fan_first_layers = 1
-temperature = 210
+temperature = 200
[filament:*PET*]
inherits = *common*
@@ -441,10 +463,10 @@ first_layer_bed_temperature = 90
inherits = *PLA*
renamed_from = "Prusament PLA @ENDER3"
filament_vendor = Prusa Polymers
-temperature = 215
-bed_temperature = 40
+temperature = 210
+bed_temperature = 50
first_layer_temperature = 215
-first_layer_bed_temperature = 40
+first_layer_bed_temperature = 50
filament_cost = 24.99
filament_density = 1.24
@@ -489,6 +511,36 @@ first_layer_bed_temperature = 60
filament_cost = 24.99
filament_density = 1.24
+[filament:Velleman PLA @CREALITY]
+inherits = *PLA*
+filament_vendor = Velleman
+temperature = 200
+bed_temperature = 60
+first_layer_temperature = 205
+first_layer_bed_temperature = 60
+filament_cost = 27.99
+filament_density = 1.24
+
+[filament:3DJAKE ecoPLA @CREALITY]
+inherits = *PLA*
+filament_vendor = 3DJAKE
+temperature = 200
+bed_temperature = 60
+first_layer_temperature = 205
+first_layer_bed_temperature = 60
+filament_cost = 21.99
+filament_density = 1.24
+
+[filament:123-3D Jupiter PLA @CREALITY]
+inherits = *PLA*
+filament_vendor = 123-3D
+temperature = 200
+bed_temperature = 60
+first_layer_temperature = 205
+first_layer_bed_temperature = 60
+filament_cost = 19.50
+filament_density = 1.24
+
# Common printer preset
[printer:*common*]
printer_technology = FFF
@@ -551,8 +603,8 @@ inherits = *common*
renamed_from = "Creality ENDER-3"
printer_model = ENDER3
printer_variant = 0.4
-max_layer_height = 0.25
-min_layer_height = 0.1
+max_layer_height = 0.28
+min_layer_height = 0.08
printer_notes = Don't remove the following keywords! These keywords are used in the "compatible printer" condition of the print and filament profiles to link the particular print and filament profiles to this printer profile.\nPRINTER_VENDOR_CREALITY\nPRINTER_MODEL_ENDER3\nPRINTER_HAS_BOWDEN
bed_shape = 3x3,228x3,228x228,3x228
max_print_height = 250
@@ -578,7 +630,7 @@ retract_length = 5
retract_speed = 60
deretract_speed = 40
retract_before_wipe = 70%
-default_print_profile = 0.15mm OPTIMAL @CREALITY
+default_print_profile = 0.16mm OPTIMAL @CREALITY
default_filament_profile = Creality PLA @CREALITY
start_gcode = G90 ; use absolute coordinates\nM83 ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 ; home all\nG1 Z2 F240\nG1 X2 Y10 F3000\nG1 Z0.28 F240\nG92 E0.0\nG1 Y190 E15.0 F1500.0 ; intro line\nG1 X2.3 F5000\nG1 Y10 E15.0 F1200.0 ; intro line\nG92 E0.0
end_gcode = M104 S0 ; turn off temperature\nM140 S0 ; turn off heatbed\nM107 ; turn off fan\n{if layer_z < max_print_height}G1 Z{z_offset+min(layer_z+5, max_print_height)} F600{endif} ; Move print head up\nG1 X5 Y170 F3000 ; present print\n{if layer_z < max_print_height-10}G1 Z{z_offset+min(layer_z+70, max_print_height-10)} F600{endif} ; Move print head up\nM84 X Y E ; disable motors
diff --git a/src/imgui/README.md b/src/imgui/README.md
index 83f461996..8eba48113 100644
--- a/src/imgui/README.md
+++ b/src/imgui/README.md
@@ -7,4 +7,5 @@ THIS DIRECTORY CONTAINS THE imgui-1.75 58b3e02 SOURCE DISTRIBUTION.
Customized with the following commits:
042880ba2df913916b2cc77f7bb677e07bfd2c58
67c55c74901f1d337ef08f2090a87cfb4263bb0f
-a94c952b40d36b1505fb77b87c0dd739e1034659
\ No newline at end of file
+a94c952b40d36b1505fb77b87c0dd739e1034659
+3ca3a544a87cc569b69351a77996c287763388a5
\ No newline at end of file
diff --git a/src/imgui/imconfig.h b/src/imgui/imconfig.h
index 4a1d1faa0..fc635dfac 100644
--- a/src/imgui/imconfig.h
+++ b/src/imgui/imconfig.h
@@ -121,6 +121,8 @@ namespace ImGui
const char MinimalizeHoverMarker = 0xF;
const char WarningMarker = 0x10;
const char ErrorMarker = 0x11;
+ const char EjectMarker = 0x12;
+ const char EjectHoverMarker = 0x13;
// void MyFunction(const char* name, const MyMatrix44& v);
}
diff --git a/src/libslic3r/Exception.hpp b/src/libslic3r/Exception.hpp
index 2bef204ad..287905533 100644
--- a/src/libslic3r/Exception.hpp
+++ b/src/libslic3r/Exception.hpp
@@ -20,6 +20,7 @@ SLIC3R_DERIVE_EXCEPTION(OutOfRange, LogicError);
SLIC3R_DERIVE_EXCEPTION(IOError, CriticalException);
SLIC3R_DERIVE_EXCEPTION(FileIOError, IOError);
SLIC3R_DERIVE_EXCEPTION(HostNetworkError, IOError);
+SLIC3R_DERIVE_EXCEPTION(ExportError, CriticalException);
// Runtime exception produced by Slicer. Such exception cancels the slicing process and it shall be shown in notifications.
SLIC3R_DERIVE_EXCEPTION(SlicingError, Exception);
#undef SLIC3R_DERIVE_EXCEPTION
diff --git a/src/libslic3r/GCode.cpp b/src/libslic3r/GCode.cpp
index 81ddec576..b017e2f52 100644
--- a/src/libslic3r/GCode.cpp
+++ b/src/libslic3r/GCode.cpp
@@ -761,7 +761,7 @@ void GCode::do_export(Print* print, const char* path, GCodePreviewData* preview_
#if ENABLE_GCODE_VIEWER
BOOST_LOG_TRIVIAL(debug) << "Start processing gcode, " << log_memory_info();
- m_processor.process_file(path_tmp, [print]() { print->throw_if_canceled(); });
+ m_processor.process_file(path_tmp, true, [print]() { print->throw_if_canceled(); });
DoExport::update_print_estimated_times_stats(m_processor, print->m_print_statistics);
if (result != nullptr)
*result = std::move(m_processor.extract_result());
@@ -1898,7 +1898,7 @@ namespace ProcessLayer
// Color Change or Tool Change as Color Change.
#if ENABLE_GCODE_VIEWER
// add tag for processor
- gcode += "; " + GCodeProcessor::Color_Change_Tag + ",T" + std::to_string(m600_extruder_before_layer) + "\n";
+ gcode += ";" + GCodeProcessor::Color_Change_Tag + ",T" + std::to_string(m600_extruder_before_layer) + "\n";
#else
// add tag for analyzer
gcode += "; " + GCodeAnalyzer::Color_Change_Tag + ",T" + std::to_string(m600_extruder_before_layer) + "\n";
@@ -1925,7 +1925,7 @@ namespace ProcessLayer
{
#if ENABLE_GCODE_VIEWER
// add tag for processor
- gcode += "; " + GCodeProcessor::Pause_Print_Tag + "\n";
+ gcode += ";" + GCodeProcessor::Pause_Print_Tag + "\n";
#else
// add tag for analyzer
gcode += "; " + GCodeAnalyzer::Pause_Print_Tag + "\n";
@@ -1943,13 +1943,13 @@ namespace ProcessLayer
{
#if ENABLE_GCODE_VIEWER
// add tag for processor
- gcode += "; " + GCodeProcessor::Custom_Code_Tag + "\n";
+ gcode += ";" + GCodeProcessor::Custom_Code_Tag + "\n";
#else
// add tag for analyzer
gcode += "; " + GCodeAnalyzer::Custom_Code_Tag + "\n";
-#endif // ENABLE_GCODE_VIEWER
// add tag for time estimator
- //gcode += "; " + GCodeTimeEstimator::Custom_Code_Tag + "\n";
+ //gcode += "; " + GCodeTimeEstimator::Custom_Code_Tag + "\n";
+#endif // ENABLE_GCODE_VIEWER
if (gcode_type == CustomGCode::Template) // Template Cistom Gcode
gcode += config.template_custom_gcode;
else // custom Gcode
diff --git a/src/libslic3r/GCode/GCodeProcessor.cpp b/src/libslic3r/GCode/GCodeProcessor.cpp
index a1c9c688d..a5a186f92 100644
--- a/src/libslic3r/GCode/GCodeProcessor.cpp
+++ b/src/libslic3r/GCode/GCodeProcessor.cpp
@@ -750,7 +750,7 @@ void GCodeProcessor::reset()
#endif // ENABLE_GCODE_VIEWER_DATA_CHECKING
}
-void GCodeProcessor::process_file(const std::string& filename, std::function cancel_callback)
+void GCodeProcessor::process_file(const std::string& filename, bool apply_postprocess, std::function cancel_callback)
{
auto last_cancel_callback_time = std::chrono::high_resolution_clock::now();
@@ -808,7 +808,8 @@ void GCodeProcessor::process_file(const std::string& filename, std::functionthrow_if_canceled() (sent by the caller as callback).
- void process_file(const std::string& filename, std::function cancel_callback = nullptr);
+ void process_file(const std::string& filename, bool apply_postprocess, std::function cancel_callback = nullptr);
float get_time(PrintEstimatedTimeStatistics::ETimeMode mode) const;
std::string get_time_dhm(PrintEstimatedTimeStatistics::ETimeMode mode) const;
diff --git a/src/libslic3r/PrintConfig.cpp b/src/libslic3r/PrintConfig.cpp
index ee4a0945e..ae17be505 100644
--- a/src/libslic3r/PrintConfig.cpp
+++ b/src/libslic3r/PrintConfig.cpp
@@ -957,9 +957,9 @@ void PrintConfigDef::init_fff_params()
def = this->add("first_layer_temperature", coInts);
def->label = L("First layer");
- def->full_label = L("First layer extruder temperature");
- def->tooltip = L("Extruder temperature for first layer. If you want to control temperature manually "
- "during print, set this to zero to disable temperature control commands in the output file.");
+ def->full_label = L("First layer nozzle temperature");
+ def->tooltip = L("Nozzle temperature for the first layer. If you want to control temperature manually "
+ "during print, set this to zero to disable temperature control commands in the output G-code.");
def->sidetext = L("°C");
def->min = 0;
def->max = max_temp;
@@ -1170,9 +1170,9 @@ void PrintConfigDef::init_fff_params()
def->set_default_value(new ConfigOptionFloat(0.1));
def = this->add("ironing_speed", coFloat);
- def->label = L("Ironing speed");
+ def->label = L("Ironing");
def->category = L("Speed");
- def->tooltip = L("Ironing speed");
+ def->tooltip = L("Ironing");
def->sidetext = L("mm/s");
def->min = 0;
def->mode = comAdvanced;
@@ -1206,7 +1206,7 @@ void PrintConfigDef::init_fff_params()
def->set_default_value(new ConfigOptionBool(true));
def = this->add("machine_limits_usage", coEnum);
- def->label = L("How to apply");
+ def->label = L("How to apply limits");
def->full_label = L("Purpose of Machine Limits");
def->category = L("Machine limits");
def->tooltip = L("How to apply the Machine Limits");
@@ -2195,10 +2195,10 @@ void PrintConfigDef::init_fff_params()
def = this->add("temperature", coInts);
def->label = L("Other layers");
- def->tooltip = L("Extruder temperature for layers after the first one. Set this to zero to disable "
- "temperature control commands in the output.");
+ def->tooltip = L("Nozzle temperature for layers after the first one. Set this to zero to disable "
+ "temperature control commands in the output G-code.");
def->sidetext = L("°C");
- def->full_label = L("Extruder temperature");
+ def->full_label = L("Nozzle temperature");
def->min = 0;
def->max = max_temp;
def->set_default_value(new ConfigOptionInts { 200 });
@@ -3686,7 +3686,7 @@ CLIMiscConfigDef::CLIMiscConfigDef()
def->cli = "output|o";
def = this->add("single_instance", coBool);
- def->label = L("Single Instance");
+ def->label = L("Single instance mode");
def->tooltip = L("If enabled, the command line arguments are sent to an existing instance of GUI PrusaSlicer, "
"or an existing PrusaSlicer window is activated. "
"Overrides the \"single_instance\" configuration value from application preferences.");
diff --git a/src/libslic3r/Zipper.cpp b/src/libslic3r/Zipper.cpp
index 7a95829cd..cebafa633 100644
--- a/src/libslic3r/Zipper.cpp
+++ b/src/libslic3r/Zipper.cpp
@@ -25,12 +25,12 @@ public:
std::string formatted_errorstr() const
{
return L("Error with zip archive") + " " + m_zipname + ": " +
- get_errorstr() + "!";
+ get_errorstr();
}
SLIC3R_NORETURN void blow_up() const
{
- throw Slic3r::RuntimeError(formatted_errorstr());
+ throw Slic3r::ExportError(formatted_errorstr());
}
bool is_alive()
diff --git a/src/libslic3r/utils.cpp b/src/libslic3r/utils.cpp
index 886dcf46a..2c55c5a0e 100644
--- a/src/libslic3r/utils.cpp
+++ b/src/libslic3r/utils.cpp
@@ -429,24 +429,20 @@ CopyFileResult copy_file_inner(const std::string& from, const std::string& to, s
// the copy_file() function will fail appropriately and we don't want the permission()
// calls to cause needless failures on permissionless filesystems (ie. FATs on SD cards etc.)
// or when the target file doesn't exist.
-
- //This error code is ignored
boost::system::error_code ec;
-
boost::filesystem::permissions(target, perms, ec);
- //if (ec)
- // BOOST_LOG_TRIVIAL(error) << "Copy file permisions before copy error message: " << ec.message();
- // This error code is passed up
+ if (ec)
+ BOOST_LOG_TRIVIAL(error) << "boost::filesystem::permisions before copy error message (this could be irrelevant message based on file system): " << ec.message();
ec.clear();
boost::filesystem::copy_file(source, target, boost::filesystem::copy_option::overwrite_if_exists, ec);
if (ec) {
error_message = ec.message();
return FAIL_COPY_FILE;
}
- //ec.clear();
+ ec.clear();
boost::filesystem::permissions(target, perms, ec);
- //if (ec)
- // BOOST_LOG_TRIVIAL(error) << "Copy file permisions after copy error message: " << ec.message();
+ if (ec)
+ BOOST_LOG_TRIVIAL(error) << "boost::filesystem::permisions after copy error message (this could be irrelevant message based on file system): " << ec.message();
return SUCCESS;
}
diff --git a/src/slic3r/GUI/AboutDialog.cpp b/src/slic3r/GUI/AboutDialog.cpp
index 2b1bea13c..c6161bc24 100644
--- a/src/slic3r/GUI/AboutDialog.cpp
+++ b/src/slic3r/GUI/AboutDialog.cpp
@@ -38,12 +38,12 @@ void AboutDialogLogo::onRepaint(wxEvent &event)
// -----------------------------------------
CopyrightsDialog::CopyrightsDialog()
#if ENABLE_GCODE_VIEWER
- : DPIDialog(NULL, wxID_ANY, from_u8((boost::format("%1% - %2%")
+ : DPIDialog((wxWindow*)wxGetApp().mainframe, wxID_ANY, from_u8((boost::format("%1% - %2%")
% (wxGetApp().is_editor() ? SLIC3R_APP_NAME : GCODEVIEWER_APP_NAME)
% _utf8(L("Portions copyright"))).str()),
wxDefaultPosition, wxDefaultSize, wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER)
#else
- : DPIDialog(NULL, wxID_ANY, from_u8((boost::format("%1% - %2%")
+ : DPIDialog((wxWindow*)wxGetApp().mainframe, wxID_ANY, from_u8((boost::format("%1% - %2%")
% SLIC3R_APP_NAME
% _utf8(L("Portions copyright"))).str()),
wxDefaultPosition, wxDefaultSize, wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER)
@@ -209,10 +209,10 @@ void CopyrightsDialog::onCloseDialog(wxEvent &)
AboutDialog::AboutDialog()
#if ENABLE_GCODE_VIEWER
- : DPIDialog(NULL, wxID_ANY, from_u8((boost::format(_utf8(L("About %s"))) % (wxGetApp().is_editor() ? SLIC3R_APP_NAME : GCODEVIEWER_APP_NAME)).str()), wxDefaultPosition,
+ : DPIDialog((wxWindow*)wxGetApp().mainframe, wxID_ANY, from_u8((boost::format(_utf8(L("About %s"))) % (wxGetApp().is_editor() ? SLIC3R_APP_NAME : GCODEVIEWER_APP_NAME)).str()), wxDefaultPosition,
wxDefaultSize, /*wxCAPTION*/wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER)
#else
- : DPIDialog(NULL, wxID_ANY, from_u8((boost::format(_utf8(L("About %s"))) % SLIC3R_APP_NAME).str()), wxDefaultPosition,
+ : DPIDialog((wxWindow*)wxGetApp().mainframe, wxID_ANY, from_u8((boost::format(_utf8(L("About %s"))) % SLIC3R_APP_NAME).str()), wxDefaultPosition,
wxDefaultSize, /*wxCAPTION*/wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER)
#endif // ENABLE_GCODE_VIEWER
{
diff --git a/src/slic3r/GUI/BackgroundSlicingProcess.cpp b/src/slic3r/GUI/BackgroundSlicingProcess.cpp
index 36187f81e..2f3c40ace 100644
--- a/src/slic3r/GUI/BackgroundSlicingProcess.cpp
+++ b/src/slic3r/GUI/BackgroundSlicingProcess.cpp
@@ -53,6 +53,24 @@ bool SlicingProcessCompletedEvent::critical_error() const
return true;
}
+bool SlicingProcessCompletedEvent::invalidate_plater() const
+{
+ if (critical_error())
+ {
+ try {
+ this->rethrow_exception();
+ }
+ catch (const Slic3r::ExportError&) {
+ // Exception thrown by copying file does not ivalidate plater
+ return false;
+ }
+ catch (...) {
+ }
+ return true;
+ }
+ return false;
+}
+
std::string SlicingProcessCompletedEvent::format_error_message() const
{
std::string error;
@@ -142,19 +160,19 @@ void BackgroundSlicingProcess::process_fff()
switch (copy_ret_val) {
case SUCCESS: break; // no error
case FAIL_COPY_FILE:
- throw Slic3r::RuntimeError((boost::format(_utf8(L("Copying of the temporary G-code to the output G-code failed. Maybe the SD card is write locked?\nError message: %1%"))) % error_message).str());
+ throw Slic3r::ExportError((boost::format(_utf8(L("Copying of the temporary G-code to the output G-code failed. Maybe the SD card is write locked?\nError message: %1%"))) % error_message).str());
break;
case FAIL_FILES_DIFFERENT:
- throw Slic3r::RuntimeError((boost::format(_utf8(L("Copying of the temporary G-code to the output G-code failed. There might be problem with target device, please try exporting again or using different device. The corrupted output G-code is at %1%.tmp."))) % export_path).str());
+ throw Slic3r::ExportError((boost::format(_utf8(L("Copying of the temporary G-code to the output G-code failed. There might be problem with target device, please try exporting again or using different device. The corrupted output G-code is at %1%.tmp."))) % export_path).str());
break;
case FAIL_RENAMING:
- throw Slic3r::RuntimeError((boost::format(_utf8(L("Renaming of the G-code after copying to the selected destination folder has failed. Current path is %1%.tmp. Please try exporting again."))) % export_path).str());
+ throw Slic3r::ExportError((boost::format(_utf8(L("Renaming of the G-code after copying to the selected destination folder has failed. Current path is %1%.tmp. Please try exporting again."))) % export_path).str());
break;
case FAIL_CHECK_ORIGIN_NOT_OPENED:
- throw Slic3r::RuntimeError((boost::format(_utf8(L("Copying of the temporary G-code has finished but the original code at %1% couldn't be opened during copy check. The output G-code is at %2%.tmp."))) % m_temp_output_path % export_path).str());
+ throw Slic3r::ExportError((boost::format(_utf8(L("Copying of the temporary G-code has finished but the original code at %1% couldn't be opened during copy check. The output G-code is at %2%.tmp."))) % m_temp_output_path % export_path).str());
break;
case FAIL_CHECK_TARGET_NOT_OPENED:
- throw Slic3r::RuntimeError((boost::format(_utf8(L("Copying of the temporary G-code has finished but the exported code couldn't be opened during copy check. The output G-code is at %1%.tmp."))) % export_path).str());
+ throw Slic3r::ExportError((boost::format(_utf8(L("Copying of the temporary G-code has finished but the exported code couldn't be opened during copy check. The output G-code is at %1%.tmp."))) % export_path).str());
break;
default:
throw Slic3r::RuntimeError(_utf8(L("Unknown error occured during exporting G-code.")));
diff --git a/src/slic3r/GUI/BackgroundSlicingProcess.hpp b/src/slic3r/GUI/BackgroundSlicingProcess.hpp
index 1b2687e63..e6314068e 100644
--- a/src/slic3r/GUI/BackgroundSlicingProcess.hpp
+++ b/src/slic3r/GUI/BackgroundSlicingProcess.hpp
@@ -57,6 +57,8 @@ public:
bool error() const { return m_status == Error; }
// Unhandled error produced by stdlib or a Win32 structured exception, or unhandled Slic3r's own critical exception.
bool critical_error() const;
+ // Critical errors does invalidate plater except CopyFileError.
+ bool invalidate_plater() const;
// Only valid if error()
void rethrow_exception() const { assert(this->error()); assert(m_exception); std::rethrow_exception(m_exception); }
// Produce a human readable message to be displayed by a notification or a message box.
diff --git a/src/slic3r/GUI/ConfigSnapshotDialog.cpp b/src/slic3r/GUI/ConfigSnapshotDialog.cpp
index 5a9a2306c..fb171a177 100644
--- a/src/slic3r/GUI/ConfigSnapshotDialog.cpp
+++ b/src/slic3r/GUI/ConfigSnapshotDialog.cpp
@@ -109,7 +109,7 @@ static wxString generate_html_page(const Config::SnapshotDB &snapshot_db, const
}
ConfigSnapshotDialog::ConfigSnapshotDialog(const Config::SnapshotDB &snapshot_db, const wxString &on_snapshot)
- : DPIDialog(NULL, wxID_ANY, _(L("Configuration Snapshots")), wxDefaultPosition,
+ : DPIDialog((wxWindow*)wxGetApp().mainframe, wxID_ANY, _(L("Configuration Snapshots")), wxDefaultPosition,
wxSize(45 * wxGetApp().em_unit(), 40 * wxGetApp().em_unit()),
wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER | wxMAXIMIZE_BOX)
{
diff --git a/src/slic3r/GUI/ConfigWizard.cpp b/src/slic3r/GUI/ConfigWizard.cpp
index cd944f689..5976d2844 100644
--- a/src/slic3r/GUI/ConfigWizard.cpp
+++ b/src/slic3r/GUI/ConfigWizard.cpp
@@ -191,10 +191,12 @@ PrinterPicker::PrinterPicker(wxWindow *parent, const VendorProfile &vendor, wxSt
wxBitmap bitmap;
int bitmap_width = 0;
+ int bitmap_height = 0;
const wxString bitmap_file = GUI::from_u8(Slic3r::resources_dir() + "/profiles/" + vendor.id + "/" + model.id + "_thumbnail.png");
if (wxFileExists(bitmap_file)) {
bitmap.LoadFile(bitmap_file, wxBITMAP_TYPE_PNG);
bitmap_width = bitmap.GetWidth();
+ bitmap_height = bitmap.GetHeight();
} else {
BOOST_LOG_TRIVIAL(warning) << boost::format("Can't find bitmap file `%1%` for vendor `%2%`, printer `%3%`, using placeholder icon instead")
% bitmap_file
@@ -205,6 +207,7 @@ PrinterPicker::PrinterPicker(wxWindow *parent, const VendorProfile &vendor, wxSt
if (wxFileExists(placeholder_file)) {
bitmap.LoadFile(placeholder_file, wxBITMAP_TYPE_PNG);
bitmap_width = bitmap.GetWidth();
+ bitmap_height = bitmap.GetHeight();
}
}
@@ -274,15 +277,12 @@ PrinterPicker::PrinterPicker(wxWindow *parent, const VendorProfile &vendor, wxSt
for (size_t j = i; j < i + cols; j++) { printer_grid->Add(bitmaps[j], 0, wxBOTTOM, 20); }
for (size_t j = i; j < i + cols; j++) { printer_grid->Add(variants_panels[j]); }
- // Add separator space
- if (i > 0) {
- for (size_t j = i; j < i + cols; j++) { printer_grid->Add(1, 100); }
+ // Add separator space to multiliners
+ if (titles.size() > cols) {
+ for (size_t j = i; j < i + cols; j++) { printer_grid->Add(1, 30); }
}
}
-
if (odd_items > 0) {
- for (size_t i = 0; i < cols; i++) { printer_grid->Add(1, 100); }
-
const size_t rem = titles.size() - odd_items;
for (size_t i = rem; i < titles.size(); i++) { printer_grid->Add(titles[i], 0, wxBOTTOM, 3); }
@@ -1389,7 +1389,7 @@ void PageDiameters::apply_custom_config(DynamicPrintConfig &config)
}
PageTemperatures::PageTemperatures(ConfigWizard *parent)
- : ConfigWizardPage(parent, _(L("Extruder and Bed Temperatures")), _(L("Temperatures")), 1)
+ : ConfigWizardPage(parent, _(L("Nozzle and Bed Temperatures")), _(L("Temperatures")), 1)
, spin_extr(new wxSpinCtrlDouble(this, wxID_ANY))
, spin_bed(new wxSpinCtrlDouble(this, wxID_ANY))
{
diff --git a/src/slic3r/GUI/DoubleSlider.cpp b/src/slic3r/GUI/DoubleSlider.cpp
index 44e0bcd42..a0480c289 100644
--- a/src/slic3r/GUI/DoubleSlider.cpp
+++ b/src/slic3r/GUI/DoubleSlider.cpp
@@ -53,11 +53,6 @@ static std::string gcode(Type type)
}
}
-static bool is_lower_thumb_editable()
-{
- return Slic3r::GUI::get_app_config()->get("seq_top_layer_only") == "0";
-}
-
Control::Control( wxWindow *parent,
wxWindowID id,
int lowerValue,
@@ -299,6 +294,8 @@ wxSize Control::get_size() const
void Control::get_size(int* w, int* h) const
{
GetSize(w, h);
+ if (m_draw_mode == dmSequentialGCodeView)
+ return; // we have no more icons for drawing
is_horizontal() ? *w -= m_lock_icon_dim : *h -= m_lock_icon_dim;
}
@@ -914,6 +911,10 @@ void Control::draw_revert_icon(wxDC& dc)
void Control::draw_cog_icon(wxDC& dc)
{
+#if ENABLE_GCODE_VIEWER
+ if (m_draw_mode == dmSequentialGCodeView)
+ return;
+#endif // ENABLE_GCODE_VIEWER
int width, height;
get_size(&width, &height);
@@ -960,6 +961,13 @@ int Control::get_value_from_position(const wxCoord x, const wxCoord y)
return int(m_min_value + double(height - SLIDER_MARGIN - y) / step + 0.5);
}
+bool Control::is_lower_thumb_editable()
+{
+ if (m_draw_mode == dmSequentialGCodeView)
+ return Slic3r::GUI::get_app_config()->get("seq_top_layer_only") == "0";
+ return true;
+}
+
bool Control::detect_selected_slider(const wxPoint& pt)
{
if (is_point_in_rect(pt, m_rect_lower_thumb))
diff --git a/src/slic3r/GUI/DoubleSlider.hpp b/src/slic3r/GUI/DoubleSlider.hpp
index d13e6259f..511858dd5 100644
--- a/src/slic3r/GUI/DoubleSlider.hpp
+++ b/src/slic3r/GUI/DoubleSlider.hpp
@@ -293,6 +293,7 @@ protected:
void draw_thumb_text(wxDC& dc, const wxPoint& pos, const SelectedSlider& selection) const;
void update_thumb_rect(const wxCoord begin_x, const wxCoord begin_y, const SelectedSlider& selection);
+ bool is_lower_thumb_editable();
bool detect_selected_slider(const wxPoint& pt);
void correct_lower_value();
void correct_higher_value();
diff --git a/src/slic3r/GUI/ExtruderSequenceDialog.cpp b/src/slic3r/GUI/ExtruderSequenceDialog.cpp
index a850ac192..6e2fa813f 100644
--- a/src/slic3r/GUI/ExtruderSequenceDialog.cpp
+++ b/src/slic3r/GUI/ExtruderSequenceDialog.cpp
@@ -20,7 +20,7 @@ namespace Slic3r {
namespace GUI {
ExtruderSequenceDialog::ExtruderSequenceDialog(const DoubleSlider::ExtrudersSequence& sequence)
- : DPIDialog(NULL, wxID_ANY, wxString(SLIC3R_APP_NAME) + " - " + _(L("Set extruder sequence")),
+ : DPIDialog((wxWindow*)wxGetApp().mainframe, wxID_ANY, wxString(SLIC3R_APP_NAME) + " - " + _(L("Set extruder sequence")),
wxDefaultPosition, wxDefaultSize, wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER),
m_sequence(sequence)
{
diff --git a/src/slic3r/GUI/GCodeViewer.cpp b/src/slic3r/GUI/GCodeViewer.cpp
index ed5431d19..87808a391 100644
--- a/src/slic3r/GUI/GCodeViewer.cpp
+++ b/src/slic3r/GUI/GCodeViewer.cpp
@@ -112,16 +112,14 @@ bool GCodeViewer::Path::matches(const GCodeProcessor::MoveVertex& move) const
case EMoveType::Custom_GCode:
case EMoveType::Retract:
case EMoveType::Unretract:
- case EMoveType::Extrude:
- {
+ case EMoveType::Extrude: {
// use rounding to reduce the number of generated paths
- return type == move.type && role == move.extrusion_role && height == round_to_nearest(move.height, 2) &&
+ return type == move.type && move.position[2] <= first.position[2] && role == move.extrusion_role && height == round_to_nearest(move.height, 2) &&
width == round_to_nearest(move.width, 2) && feedrate == move.feedrate && fan_speed == move.fan_speed &&
volumetric_rate == round_to_nearest(move.volumetric_rate(), 2) && extruder_id == move.extruder_id &&
cp_color_id == move.cp_color_id;
}
- case EMoveType::Travel:
- {
+ case EMoveType::Travel: {
return type == move.type && feedrate == move.feedrate && extruder_id == move.extruder_id && cp_color_id == move.cp_color_id;
}
default: { return false; }
@@ -1531,14 +1529,15 @@ void GCodeViewer::load_toolpaths(const GCodeProcessor::Result& gcode_result)
// dismiss indices data, no more needed
std::vector().swap(indices);
- // layers zs / roles / extruder ids / cp color ids -> extract from result
+ // layers zs -> extract from result
+ for (const Path& path : m_buffers[buffer_id(EMoveType::Extrude)].paths) {
+ m_layers_zs.emplace_back(static_cast(path.first.position[2]));
+// m_layers_zs.emplace_back(static_cast(path.last.position[2]));
+ }
+ // roles / extruder ids / cp color ids -> extract from result
for (size_t i = 0; i < m_moves_count; ++i) {
const GCodeProcessor::MoveVertex& move = gcode_result.moves[i];
- if (move.type == EMoveType::Extrude)
- m_layers_zs.emplace_back(static_cast(move.position[2]));
-
m_extruder_ids.emplace_back(move.extruder_id);
-
if (i > 0)
m_roles.emplace_back(move.extrusion_role);
}
@@ -2415,28 +2414,26 @@ void GCodeViewer::render_legend() const
for (const auto& time_rec : times) {
switch (time_rec.first)
{
- case CustomGCode::PausePrint:
- {
+ case CustomGCode::PausePrint: {
auto it = std::find_if(custom_gcode_per_print_z.begin(), custom_gcode_per_print_z.end(), [time_rec](const CustomGCode::Item& item) { return item.type == time_rec.first; });
if (it != custom_gcode_per_print_z.end()) {
- items.push_back({ PartialTime::EType::Print, it->extruder, Color(), Color(), time_rec.second });
+ items.push_back({ PartialTime::EType::Print, it->extruder, last_color[it->extruder - 1], Color(), time_rec.second });
items.push_back({ PartialTime::EType::Pause, it->extruder, Color(), Color(), time_rec.second });
custom_gcode_per_print_z.erase(it);
}
break;
}
- case CustomGCode::ColorChange:
- {
+ case CustomGCode::ColorChange: {
auto it = std::find_if(custom_gcode_per_print_z.begin(), custom_gcode_per_print_z.end(), [time_rec](const CustomGCode::Item& item) { return item.type == time_rec.first; });
if (it != custom_gcode_per_print_z.end()) {
- items.push_back({ PartialTime::EType::Print, it->extruder, Color(), Color(), time_rec.second });
+ items.push_back({ PartialTime::EType::Print, it->extruder, last_color[it->extruder - 1], Color(), time_rec.second });
items.push_back({ PartialTime::EType::ColorChange, it->extruder, last_color[it->extruder - 1], decode_color(it->color), time_rec.second });
last_color[it->extruder - 1] = decode_color(it->color);
last_extruder_id = it->extruder;
custom_gcode_per_print_z.erase(it);
}
else
- items.push_back({ PartialTime::EType::Print, last_extruder_id, Color(), Color(), time_rec.second });
+ items.push_back({ PartialTime::EType::Print, last_extruder_id, last_color[last_extruder_id - 1], Color(), time_rec.second });
break;
}
@@ -2447,7 +2444,7 @@ void GCodeViewer::render_legend() const
return items;
};
- auto append_color = [this, &imgui](const Color& color1, const Color& color2, std::array& offsets, const Times& times) {
+ auto append_color_change = [this, &imgui](const Color& color1, const Color& color2, const std::array& offsets, const Times& times) {
imgui.text(_u8L("Color change"));
ImGui::SameLine();
@@ -2466,6 +2463,24 @@ void GCodeViewer::render_legend() const
imgui.text(short_time(get_time_dhms(times.second - times.first)));
};
+ auto append_print = [this, &imgui](const Color& color, const std::array& offsets, const Times& times) {
+ imgui.text(_u8L("Print"));
+ ImGui::SameLine();
+
+ float icon_size = ImGui::GetTextLineHeight();
+ ImDrawList* draw_list = ImGui::GetWindowDrawList();
+ ImVec2 pos = ImGui::GetCursorScreenPos();
+ pos.x -= 0.5f * ImGui::GetStyle().ItemSpacing.x;
+
+ draw_list->AddRectFilled({ pos.x + 1.0f, pos.y + 1.0f }, { pos.x + icon_size - 1.0f, pos.y + icon_size - 1.0f },
+ ImGui::GetColorU32({ color[0], color[1], color[2], 1.0f }));
+
+ ImGui::SameLine(offsets[0]);
+ imgui.text(short_time(get_time_dhms(times.second)));
+ ImGui::SameLine(offsets[1]);
+ imgui.text(short_time(get_time_dhms(times.first)));
+ };
+
PartialTimes partial_times = generate_partial_times(time_mode.custom_gcode_times);
if (!partial_times.empty()) {
labels.clear();
@@ -2474,8 +2489,8 @@ void GCodeViewer::render_legend() const
for (const PartialTime& item : partial_times) {
switch (item.type)
{
- case PartialTime::EType::Print: { labels.push_back(_u8L("Print")); break; }
- case PartialTime::EType::Pause: { labels.push_back(_u8L("Pause")); break; }
+ case PartialTime::EType::Print: { labels.push_back(_u8L("Print")); break; }
+ case PartialTime::EType::Pause: { labels.push_back(_u8L("Pause")); break; }
case PartialTime::EType::ColorChange: { labels.push_back(_u8L("Color change")); break; }
}
times.push_back(short_time(get_time_dhms(item.times.second)));
@@ -2487,25 +2502,18 @@ void GCodeViewer::render_legend() const
for (const PartialTime& item : partial_times) {
switch (item.type)
{
- case PartialTime::EType::Print:
- {
- imgui.text(_u8L("Print"));
- ImGui::SameLine(offsets[0]);
- imgui.text(short_time(get_time_dhms(item.times.second)));
- ImGui::SameLine(offsets[1]);
- imgui.text(short_time(get_time_dhms(item.times.first)));
+ case PartialTime::EType::Print: {
+ append_print(item.color1, offsets, item.times);
break;
}
- case PartialTime::EType::Pause:
- {
+ case PartialTime::EType::Pause: {
imgui.text(_u8L("Pause"));
ImGui::SameLine(offsets[0]);
imgui.text(short_time(get_time_dhms(item.times.second - item.times.first)));
break;
}
- case PartialTime::EType::ColorChange:
- {
- append_color(item.color1, item.color2, offsets, item.times);
+ case PartialTime::EType::ColorChange: {
+ append_color_change(item.color1, item.color2, offsets, item.times);
break;
}
}
@@ -2519,12 +2527,10 @@ void GCodeViewer::render_legend() const
{
case EViewType::Feedrate:
case EViewType::Tool:
- case EViewType::ColorPrint:
- {
+ case EViewType::ColorPrint: {
break;
}
- default:
- {
+ default: {
// title
ImGui::Spacing();
imgui.title(_u8L("Travel"));
@@ -2570,8 +2576,8 @@ void GCodeViewer::render_legend() const
add_option(EMoveType::Unretract, EOptionsColors::Unretractions, _u8L("Deretractions"));
add_option(EMoveType::Tool_change, EOptionsColors::ToolChanges, _u8L("Tool changes"));
add_option(EMoveType::Color_change, EOptionsColors::ColorChanges, _u8L("Color changes"));
- add_option(EMoveType::Pause_Print, EOptionsColors::PausePrints, _u8L("Pause prints"));
- add_option(EMoveType::Custom_GCode, EOptionsColors::CustomGCodes, _u8L("Custom GCodes"));
+ add_option(EMoveType::Pause_Print, EOptionsColors::PausePrints, _u8L("Print pauses"));
+ add_option(EMoveType::Custom_GCode, EOptionsColors::CustomGCodes, _u8L("Custom G-codes"));
}
// total estimated printing time section
diff --git a/src/slic3r/GUI/GLCanvas3D.cpp b/src/slic3r/GUI/GLCanvas3D.cpp
index 2dda6f18a..bd5b2414c 100644
--- a/src/slic3r/GUI/GLCanvas3D.cpp
+++ b/src/slic3r/GUI/GLCanvas3D.cpp
@@ -1415,7 +1415,7 @@ void GLCanvas3D::Tooltip::render(const Vec2d& mouse_position, GLCanvas3D& canvas
ImGui::PushStyleVar(ImGuiStyleVar_Alpha, alpha);
imgui.set_next_window_pos(position(0), position(1), ImGuiCond_Always, 0.0f, 0.0f);
- imgui.begin(_L("canvas_tooltip"), ImGuiWindowFlags_AlwaysAutoResize | ImGuiWindowFlags_NoMouseInputs | ImGuiWindowFlags_NoMove | ImGuiWindowFlags_NoDecoration | ImGuiWindowFlags_NoFocusOnAppearing);
+ imgui.begin(wxString("canvas_tooltip"), ImGuiWindowFlags_AlwaysAutoResize | ImGuiWindowFlags_NoMouseInputs | ImGuiWindowFlags_NoMove | ImGuiWindowFlags_NoDecoration | ImGuiWindowFlags_NoFocusOnAppearing);
ImGui::BringWindowToDisplayFront(ImGui::GetCurrentWindow());
ImGui::TextUnformatted(m_text.c_str());
@@ -1457,6 +1457,7 @@ wxDEFINE_EVENT(EVT_GLCANVAS_MOVE_LAYERS_SLIDER, wxKeyEvent);
wxDEFINE_EVENT(EVT_GLCANVAS_MOVE_DOUBLE_SLIDER, wxKeyEvent);
#endif // ENABLE_GCODE_VIEWER
wxDEFINE_EVENT(EVT_GLCANVAS_EDIT_COLOR_CHANGE, wxKeyEvent);
+wxDEFINE_EVENT(EVT_GLCANVAS_JUMP_TO, wxKeyEvent);
wxDEFINE_EVENT(EVT_GLCANVAS_UNDO, SimpleEvent);
wxDEFINE_EVENT(EVT_GLCANVAS_REDO, SimpleEvent);
wxDEFINE_EVENT(EVT_GLCANVAS_COLLAPSE_SIDEBAR, SimpleEvent);
@@ -2899,6 +2900,7 @@ void GLCanvas3D::on_char(wxKeyEvent& evt)
// see include/wx/defs.h enum wxKeyCode
int keyCode = evt.GetKeyCode();
int ctrlMask = wxMOD_CONTROL;
+ int shiftMask = wxMOD_SHIFT;
auto imgui = wxGetApp().imgui();
if (imgui->update_key_data(evt)) {
@@ -2996,6 +2998,18 @@ void GLCanvas3D::on_char(wxKeyEvent& evt)
post_event(SimpleEvent(EVT_GLTOOLBAR_DELETE_ALL)); break;
default: evt.Skip();
}
+ }
+ else if ((evt.GetModifiers() & shiftMask) != 0) {
+ switch (keyCode) {
+ case 'g':
+ case 'G': {
+ if (dynamic_cast(m_canvas->GetParent()) != nullptr)
+ post_event(wxKeyEvent(EVT_GLCANVAS_JUMP_TO, evt));
+ break;
+ }
+ default:
+ evt.Skip();
+ }
} else if (evt.HasModifiers()) {
evt.Skip();
} else {
@@ -4385,7 +4399,7 @@ bool GLCanvas3D::_render_search_list(float pos_x) const
std::string& search_line = sidebar.get_search_line();
char *s = new char[255];
- strcpy(s, search_line.empty() ? _u8L("Type here to search").c_str() : search_line.c_str());
+ strcpy(s, search_line.empty() ? _u8L("Enter a search term").c_str() : search_line.c_str());
imgui->search_list(ImVec2(45 * em, 30 * em), &search_string_getter, s,
sidebar.get_searcher().view_params,
@@ -4393,7 +4407,7 @@ bool GLCanvas3D::_render_search_list(float pos_x) const
search_line = s;
delete [] s;
- if (search_line == _u8L("Type here to search"))
+ if (search_line == _u8L("Enter a search term"))
search_line.clear();
if (edited)
diff --git a/src/slic3r/GUI/GLCanvas3D.hpp b/src/slic3r/GUI/GLCanvas3D.hpp
index d0a130e89..5351e99fa 100644
--- a/src/slic3r/GUI/GLCanvas3D.hpp
+++ b/src/slic3r/GUI/GLCanvas3D.hpp
@@ -114,6 +114,7 @@ wxDECLARE_EVENT(EVT_GLCANVAS_MOVE_LAYERS_SLIDER, wxKeyEvent);
wxDECLARE_EVENT(EVT_GLCANVAS_MOVE_DOUBLE_SLIDER, wxKeyEvent);
#endif // ENABLE_GCODE_VIEWER
wxDECLARE_EVENT(EVT_GLCANVAS_EDIT_COLOR_CHANGE, wxKeyEvent);
+wxDECLARE_EVENT(EVT_GLCANVAS_JUMP_TO, wxKeyEvent);
wxDECLARE_EVENT(EVT_GLCANVAS_UNDO, SimpleEvent);
wxDECLARE_EVENT(EVT_GLCANVAS_REDO, SimpleEvent);
wxDECLARE_EVENT(EVT_GLCANVAS_COLLAPSE_SIDEBAR, SimpleEvent);
diff --git a/src/slic3r/GUI/GUI_App.cpp b/src/slic3r/GUI/GUI_App.cpp
index feef55476..bea8b6487 100644
--- a/src/slic3r/GUI/GUI_App.cpp
+++ b/src/slic3r/GUI/GUI_App.cpp
@@ -86,7 +86,7 @@ class SplashScreen : public wxSplashScreen
{
public:
SplashScreen(const wxBitmap& bitmap, long splashStyle, int milliseconds, wxPoint pos = wxDefaultPosition)
- : wxSplashScreen(bitmap, splashStyle, milliseconds, nullptr, wxID_ANY, wxDefaultPosition, wxDefaultSize,
+ : wxSplashScreen(bitmap, splashStyle, milliseconds, (wxWindow*)wxGetApp().mainframe, wxID_ANY, wxDefaultPosition, wxDefaultSize,
#ifdef __APPLE__
wxSIMPLE_BORDER | wxFRAME_NO_TASKBAR | wxSTAY_ON_TOP
#else
@@ -892,7 +892,7 @@ bool GUI_App::on_init_inner()
#else
if (scrn)
#endif // ENABLE_GCODE_VIEWER
- scrn->SetText(_L("Creating settings tabs..."));
+ scrn->SetText(_L("Preparing settings tabs..."));
mainframe = new MainFrame();
// hide settings tabs after first Layout
@@ -1149,8 +1149,8 @@ void GUI_App::check_printer_presets()
for (const std::string& preset_name : preset_names)
msg_text += "\n \"" + from_u8(preset_name) + "\",";
msg_text.RemoveLast();
- msg_text += "\n\n" + _L("But from this version of PrusaSlicer we don't show/use this information in Printer Settings.\n"
- "Now, this information will be exposed in physical printers settings.") + "\n\n" +
+ msg_text += "\n\n" + _L("But since this version of PrusaSlicer we don't show this information in Printer Settings anymore.\n"
+ "Settings will be available in physical printers settings.") + "\n\n" +
_L("By default new Printer devices will be named as \"Printer N\" during its creation.\n"
"Note: This name can be changed later from the physical printers settings");
diff --git a/src/slic3r/GUI/GUI_Preview.cpp b/src/slic3r/GUI/GUI_Preview.cpp
index 2e67eb23d..3f7475713 100644
--- a/src/slic3r/GUI/GUI_Preview.cpp
+++ b/src/slic3r/GUI/GUI_Preview.cpp
@@ -557,6 +557,16 @@ void Preview::msw_rescale()
refresh_print();
}
+void Preview::jump_layers_slider(wxKeyEvent& evt)
+{
+#if ENABLE_GCODE_VIEWER
+ if (m_layers_slider) m_layers_slider->OnChar(evt);
+#else
+ if (m_slider)
+ m_slider->OnKeyDown(evt);
+#endif // ENABLE_GCODE_VIEWER
+}
+
#if ENABLE_GCODE_VIEWER
void Preview::move_layers_slider(wxKeyEvent& evt)
{
@@ -1463,8 +1473,8 @@ wxString Preview::get_option_type_string(OptionType type) const
case OptionType::Unretractions: { return _L("Deretractions"); }
case OptionType::ToolChanges: { return _L("Tool changes"); }
case OptionType::ColorChanges: { return _L("Color changes"); }
- case OptionType::PausePrints: { return _L("Pause prints"); }
- case OptionType::CustomGCodes: { return _L("Custom GCodes"); }
+ case OptionType::PausePrints: { return _L("Print pauses"); }
+ case OptionType::CustomGCodes: { return _L("Custom G-codes"); }
case OptionType::Shells: { return _L("Shells"); }
case OptionType::ToolMarker: { return _L("Tool marker"); }
case OptionType::Legend: { return _L("Legend/Estimated printing time"); }
diff --git a/src/slic3r/GUI/GUI_Preview.hpp b/src/slic3r/GUI/GUI_Preview.hpp
index 3628bfd97..5ad70a1ac 100644
--- a/src/slic3r/GUI/GUI_Preview.hpp
+++ b/src/slic3r/GUI/GUI_Preview.hpp
@@ -179,6 +179,7 @@ Preview(wxWindow* parent, Model* model, DynamicPrintConfig* config,
void refresh_print();
void msw_rescale();
+ void jump_layers_slider(wxKeyEvent& evt);
#if ENABLE_GCODE_VIEWER
void move_layers_slider(wxKeyEvent& evt);
void edit_layers_slider(wxKeyEvent& evt);
diff --git a/src/slic3r/GUI/GUI_Utils.hpp b/src/slic3r/GUI/GUI_Utils.hpp
index edc9fba1f..0c6dd299b 100644
--- a/src/slic3r/GUI/GUI_Utils.hpp
+++ b/src/slic3r/GUI/GUI_Utils.hpp
@@ -95,6 +95,7 @@ public:
#ifndef __WXOSX__ // Don't call SetFont under OSX to avoid name cutting in ObjectList
this->SetFont(m_normal_font);
#endif
+ this->CenterOnParent();
// Linux specific issue : get_dpi_for_window(this) still doesn't responce to the Display's scale in new wxWidgets(3.1.3).
// So, calculate the m_em_unit value from the font size, as before
diff --git a/src/slic3r/GUI/Gizmos/GLGizmoFdmSupports.cpp b/src/slic3r/GUI/Gizmos/GLGizmoFdmSupports.cpp
index ed8043d2a..54b408251 100644
--- a/src/slic3r/GUI/Gizmos/GLGizmoFdmSupports.cpp
+++ b/src/slic3r/GUI/Gizmos/GLGizmoFdmSupports.cpp
@@ -41,8 +41,8 @@ bool GLGizmoFdmSupports::on_init()
m_desc["clipping_of_view"] = _L("Clipping of view") + ": ";
m_desc["reset_direction"] = _L("Reset direction");
- m_desc["cursor_size"] = _L("Cursor size") + ": ";
- m_desc["cursor_type"] = _L("Cursor type") + ": ";
+ m_desc["cursor_size"] = _L("Brush size") + ": ";
+ m_desc["cursor_type"] = _L("Brush shape") + ": ";
m_desc["enforce_caption"] = _L("Left mouse button") + ": ";
m_desc["enforce"] = _L("Enforce supports");
m_desc["block_caption"] = _L("Right mouse button") + " ";
@@ -232,9 +232,12 @@ void GLGizmoFdmSupports::on_render_input_window(float x, float y, float bottom_l
else {
m_imgui->begin(_L("Autoset custom supports"), ImGuiWindowFlags_NoMove | ImGuiWindowFlags_AlwaysAutoResize | ImGuiWindowFlags_NoCollapse);
ImGui::AlignTextToFramePadding();
- m_imgui->text(_L("Threshold:") + " " + _L("deg"));
+ m_imgui->text(_L("Threshold:"));
+ std::string format_str = std::string("%.f") + I18N::translate_utf8("°",
+ "Degree sign to use in the respective slider in FDM supports gizmo,"
+ "placed after the number with no whitespace in between.");
ImGui::SameLine();
- if (m_imgui->slider_float("", &m_angle_threshold_deg, 0.f, 90.f, "%.f"))
+ if (m_imgui->slider_float("", &m_angle_threshold_deg, 0.f, 90.f, format_str.data()))
m_parent.set_slope_normal_angle(90.f - m_angle_threshold_deg);
if (m_imgui->button(_L("Enforce")))
select_facets_by_angle(m_angle_threshold_deg, false);
diff --git a/src/slic3r/GUI/Gizmos/GLGizmoPainterBase.cpp b/src/slic3r/GUI/Gizmos/GLGizmoPainterBase.cpp
index 5c7ca189b..c3a04f293 100644
--- a/src/slic3r/GUI/Gizmos/GLGizmoPainterBase.cpp
+++ b/src/slic3r/GUI/Gizmos/GLGizmoPainterBase.cpp
@@ -37,14 +37,14 @@ void GLGizmoPainterBase::activate_internal_undo_redo_stack(bool activate)
if (activate && ! m_internal_stack_active) {
wxString str = get_painter_type() == PainterGizmoType::FDM_SUPPORTS
? _L("Supports gizmo turned on")
- : _L("Seam gizmo turned on");
+ : _L("Paint-on seams on");
Plater::TakeSnapshot(wxGetApp().plater(), str);
wxGetApp().plater()->enter_gizmos_stack();
m_internal_stack_active = true;
}
if (! activate && m_internal_stack_active) {
wxString str = get_painter_type() == PainterGizmoType::SEAM
- ? _L("Seam gizmo turned off")
+ ? _L("Paint-on seams off")
: _L("Supports gizmo turned off");
wxGetApp().plater()->leave_gizmos_stack();
Plater::TakeSnapshot(wxGetApp().plater(), str);
diff --git a/src/slic3r/GUI/Gizmos/GLGizmoRotate.cpp b/src/slic3r/GUI/Gizmos/GLGizmoRotate.cpp
index 77366c633..c5060a88e 100644
--- a/src/slic3r/GUI/Gizmos/GLGizmoRotate.cpp
+++ b/src/slic3r/GUI/Gizmos/GLGizmoRotate.cpp
@@ -200,62 +200,10 @@ void GLGizmoRotate::on_render_for_picking() const
glsafe(::glPopMatrix());
}
-
-
-GLGizmoRotate3D::RotoptimzeWindow::RotoptimzeWindow(ImGuiWrapper * imgui,
- State & state,
- const Alignment &alignment)
- : m_imgui{imgui}
-{
- imgui->begin(_L("Rotation"), ImGuiWindowFlags_NoMove |
- ImGuiWindowFlags_AlwaysAutoResize |
- ImGuiWindowFlags_NoCollapse);
-
- // adjust window position to avoid overlap the view toolbar
- float win_h = ImGui::GetWindowHeight();
- float x = alignment.x, y = alignment.y;
- y = std::min(y, alignment.bottom_limit - win_h);
- ImGui::SetWindowPos(ImVec2(x, y), ImGuiCond_Always);
-
- static constexpr const char * button_txt = L("Optimize orientation");
- static constexpr const char * slider_txt = L("Accuracy");
-
- float button_width = imgui->calc_text_size(_(button_txt)).x;
- ImGui::PushItemWidth(100.);
- //if (imgui->button(_(button_txt))) {
- if (ImGui::ArrowButton(_(button_txt).c_str(), ImGuiDir_Down)){
- std::cout << "Blip" << std::endl;
- }
-
- ImGui::SliderFloat(_(slider_txt).c_str(), &state.accuracy, 0.01f, 1.f, "%.1f");
-
- static const std::vector options = {
- _L("Least supports").ToStdString(),
- _L("Suface quality").ToStdString()
- };
-
-// if (imgui->combo(_L("Choose method"), options, state.method) ) {
-// std::cout << "method: " << state.method << std::endl;
-// }
-
-
-}
-
-GLGizmoRotate3D::RotoptimzeWindow::~RotoptimzeWindow()
-{
- m_imgui->end();
-}
-
void GLGizmoRotate3D::on_render_input_window(float x, float y, float bottom_limit)
{
if (wxGetApp().preset_bundle->printers.get_edited_preset().printer_technology() != ptSLA)
return;
-
-// TODO:
-
-// m_rotoptimizewin_state.mobj = ?;
-// RotoptimzeWindow popup{m_imgui, m_rotoptimizewin_state, {x, y, bottom_limit}};
-
}
void GLGizmoRotate::render_circle() const
diff --git a/src/slic3r/GUI/Gizmos/GLGizmoRotate.hpp b/src/slic3r/GUI/Gizmos/GLGizmoRotate.hpp
index c418c4b31..126c97b1d 100644
--- a/src/slic3r/GUI/Gizmos/GLGizmoRotate.hpp
+++ b/src/slic3r/GUI/Gizmos/GLGizmoRotate.hpp
@@ -136,37 +136,6 @@ protected:
}
void on_render_input_window(float x, float y, float bottom_limit) override;
-
-private:
-
- class RotoptimzeWindow {
- ImGuiWrapper *m_imgui = nullptr;
-
- public:
-
- struct State {
- enum Metods { mMinSupportPoints, mLegacy };
-
- float accuracy = 1.f;
- int method = mMinSupportPoints;
- ModelObject *mobj = nullptr;
- };
-
- struct Alignment { float x, y, bottom_limit; };
-
- RotoptimzeWindow(ImGuiWrapper * imgui,
- State & state,
- const Alignment &bottom_limit);
-
- ~RotoptimzeWindow();
-
- RotoptimzeWindow(const RotoptimzeWindow&) = delete;
- RotoptimzeWindow(RotoptimzeWindow &&) = delete;
- RotoptimzeWindow& operator=(const RotoptimzeWindow &) = delete;
- RotoptimzeWindow& operator=(RotoptimzeWindow &&) = delete;
- };
-
- RotoptimzeWindow::State m_rotoptimizewin_state = {};
};
} // namespace GUI
diff --git a/src/slic3r/GUI/Gizmos/GLGizmoSeam.cpp b/src/slic3r/GUI/Gizmos/GLGizmoSeam.cpp
index 4b66e070e..266230f11 100644
--- a/src/slic3r/GUI/Gizmos/GLGizmoSeam.cpp
+++ b/src/slic3r/GUI/Gizmos/GLGizmoSeam.cpp
@@ -24,8 +24,8 @@ bool GLGizmoSeam::on_init()
m_desc["clipping_of_view"] = _L("Clipping of view") + ": ";
m_desc["reset_direction"] = _L("Reset direction");
- m_desc["cursor_size"] = _L("Cursor size") + ": ";
- m_desc["cursor_type"] = _L("Cursor type") + ": ";
+ m_desc["cursor_size"] = _L("Brush size") + ": ";
+ m_desc["cursor_type"] = _L("Brush shape") + ": ";
m_desc["enforce_caption"] = _L("Left mouse button") + ": ";
m_desc["enforce"] = _L("Enforce seam");
m_desc["block_caption"] = _L("Right mouse button") + " ";
diff --git a/src/slic3r/GUI/ImGuiWrapper.cpp b/src/slic3r/GUI/ImGuiWrapper.cpp
index d759f4b9a..e468ffbb5 100644
--- a/src/slic3r/GUI/ImGuiWrapper.cpp
+++ b/src/slic3r/GUI/ImGuiWrapper.cpp
@@ -49,7 +49,9 @@ static const std::map font_icons = {
{ImGui::MinimalizeMarker , "notification_minimalize" },
{ImGui::MinimalizeHoverMarker , "notification_minimalize_hover" },
{ImGui::WarningMarker , "notification_warning" },
- {ImGui::ErrorMarker , "notification_error" }
+ {ImGui::ErrorMarker , "notification_error" },
+ {ImGui::EjectMarker , "notification_eject_sd" },
+ {ImGui::EjectHoverMarker , "notification_eject_sd_hover" },
};
const ImVec4 ImGuiWrapper::COL_GREY_DARK = { 0.333f, 0.333f, 0.333f, 1.0f };
diff --git a/src/slic3r/GUI/KBShortcutsDialog.cpp b/src/slic3r/GUI/KBShortcutsDialog.cpp
index e613e05a6..dde873293 100644
--- a/src/slic3r/GUI/KBShortcutsDialog.cpp
+++ b/src/slic3r/GUI/KBShortcutsDialog.cpp
@@ -34,9 +34,9 @@ namespace GUI {
KBShortcutsDialog::KBShortcutsDialog()
#if ENABLE_GCODE_VIEWER
- : DPIDialog(NULL, wxID_ANY, wxString(wxGetApp().is_editor() ? SLIC3R_APP_NAME : GCODEVIEWER_APP_NAME) + " - " + _L("Keyboard Shortcuts"),
+ : DPIDialog((wxWindow*)wxGetApp().mainframe, wxID_ANY, wxString(wxGetApp().is_editor() ? SLIC3R_APP_NAME : GCODEVIEWER_APP_NAME) + " - " + _L("Keyboard Shortcuts"),
#else
- : DPIDialog(NULL, wxID_ANY, wxString(SLIC3R_APP_NAME) + " - " + _L("Keyboard Shortcuts"),
+ : DPIDialog((wxWindow*)wxGetApp().mainframe, wxID_ANY, wxString(SLIC3R_APP_NAME) + " - " + _L("Keyboard Shortcuts"),
#endif // ENABLE_GCODE_VIEWER
wxDefaultPosition, wxDefaultSize, wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER)
{
@@ -213,7 +213,7 @@ void KBShortcutsDialog::fill_shortcuts()
{ L("Arrow Down"), L("Lower Layer") },
{ "U", L("Upper Layer") },
{ "D", L("Lower Layer") },
- { "L", L("Show/Hide Legend/Estimated printing time") },
+ { "L", L("Show/Hide Legend & Estimated printing time") },
};
m_full_shortcuts.push_back(std::make_pair(_L("Preview"), preview_shortcuts));
diff --git a/src/slic3r/GUI/MainFrame.cpp b/src/slic3r/GUI/MainFrame.cpp
index 44bea1111..b46a6a6f3 100644
--- a/src/slic3r/GUI/MainFrame.cpp
+++ b/src/slic3r/GUI/MainFrame.cpp
@@ -238,6 +238,17 @@ DPIFrame(NULL, wxID_ANY, "", wxDefaultPosition, wxDefaultSize, wxDEFAULT_FRAME_S
event.Skip();
});
+// OSX specific issue:
+// When we move application between Retina and non-Retina displays, The legend on a canvas doesn't redraw
+// So, redraw explicitly canvas, when application is moved
+#ifdef ENABLE_RETINA_GL
+ Bind(wxEVT_MOVE, [this](wxMoveEvent& event) {
+ wxGetApp().plater()->get_current_canvas3D()->set_as_dirty();
+ wxGetApp().plater()->get_current_canvas3D()->request_extra_frame();
+ event.Skip();
+ });
+#endif
+
wxGetApp().persist_window_geometry(this, true);
wxGetApp().persist_window_geometry(&m_settings_dialog, true);
@@ -1044,7 +1055,7 @@ void MainFrame::init_menubar()
[this](wxCommandEvent&) { if (m_plater) m_plater->add_model(true); }, "import_plater", nullptr,
[this](){return m_plater != nullptr; }, this);
- append_menu_item(import_menu, wxID_ANY, _L("Import SL1 archive") + dots, _L("Load an SL1 output archive"),
+ append_menu_item(import_menu, wxID_ANY, _L("Import SL1 archive") + dots, _L("Load an SL1 archive"),
[this](wxCommandEvent&) { if (m_plater) m_plater->import_sl1_archive(); }, "import_plater", nullptr,
[this](){return m_plater != nullptr; }, this);
@@ -1202,7 +1213,7 @@ void MainFrame::init_menubar()
editMenu->AppendSeparator();
append_menu_item(editMenu, wxID_ANY, _L("Searc&h") + "\tCtrl+F",
- _L("Find option"), [this](wxCommandEvent&) { m_plater->search(/*m_tabpanel->GetCurrentPage() == */m_plater->IsShown()); },
+ _L("Search in settings"), [this](wxCommandEvent&) { m_plater->search(/*m_tabpanel->GetCurrentPage() == */m_plater->IsShown()); },
"search", nullptr, []() {return true; }, this);
}
diff --git a/src/slic3r/GUI/NotificationManager.cpp b/src/slic3r/GUI/NotificationManager.cpp
index 8516a4419..a1bb48d2b 100644
--- a/src/slic3r/GUI/NotificationManager.cpp
+++ b/src/slic3r/GUI/NotificationManager.cpp
@@ -1,6 +1,7 @@
#include "NotificationManager.hpp"
#include "GUI_App.hpp"
+#include "GUI.hpp"
#include "Plater.hpp"
#include "GLCanvas3D.hpp"
#include "ImGuiWrapper.hpp"
@@ -33,6 +34,56 @@ namespace Notifications_Internal{
else
ImGui::PushStyleColor(idx, col);
}
+
+ void open_folder(const std::string& path)
+ {
+ // Code taken from desktop_open_datadir_folder()
+
+ // Execute command to open a file explorer, platform dependent.
+ // FIXME: The const_casts aren't needed in wxWidgets 3.1, remove them when we upgrade.
+
+#ifdef _WIN32
+ const wxString widepath = from_u8(path);
+ const wchar_t* argv[] = { L"explorer", widepath.GetData(), nullptr };
+ ::wxExecute(const_cast(argv), wxEXEC_ASYNC, nullptr);
+#elif __APPLE__
+ const char* argv[] = { "open", path.data(), nullptr };
+ ::wxExecute(const_cast(argv), wxEXEC_ASYNC, nullptr);
+#else
+ const char* argv[] = { "xdg-open", path.data(), nullptr };
+
+ // Check if we're running in an AppImage container, if so, we need to remove AppImage's env vars,
+ // because they may mess up the environment expected by the file manager.
+ // Mostly this is about LD_LIBRARY_PATH, but we remove a few more too for good measure.
+ if (wxGetEnv("APPIMAGE", nullptr)) {
+ // We're running from AppImage
+ wxEnvVariableHashMap env_vars;
+ wxGetEnvMap(&env_vars);
+
+ env_vars.erase("APPIMAGE");
+ env_vars.erase("APPDIR");
+ env_vars.erase("LD_LIBRARY_PATH");
+ env_vars.erase("LD_PRELOAD");
+ env_vars.erase("UNION_PRELOAD");
+
+ wxExecuteEnv exec_env;
+ exec_env.env = std::move(env_vars);
+
+ wxString owd;
+ if (wxGetEnv("OWD", &owd)) {
+ // This is the original work directory from which the AppImage image was run,
+ // set it as CWD for the child process:
+ exec_env.cwd = std::move(owd);
+ }
+
+ ::wxExecute(const_cast(argv), wxEXEC_ASYNC, nullptr, &exec_env);
+ }
+ else {
+ // Looks like we're NOT running from AppImage, we'll make no changes to the environment.
+ ::wxExecute(const_cast(argv), wxEXEC_ASYNC, nullptr, nullptr);
+ }
+#endif
+ }
}
#if 1
@@ -183,6 +234,7 @@ NotificationManager::PopNotification::RenderResult NotificationManager::PopNotif
render_left_sign(imgui);
render_text(imgui, win_size.x, win_size.y, win_pos.x, win_pos.y);
render_close_button(imgui, win_size.x, win_size.y, win_pos.x, win_pos.y);
+ m_minimize_b_visible = false;
if (m_multiline && m_lines_count > 3)
render_minimize_button(imgui, win_pos.x, win_pos.y);
} else {
@@ -205,12 +257,8 @@ NotificationManager::PopNotification::RenderResult NotificationManager::PopNotif
ImGui::PopStyleColor();
return ret_val;
}
-void NotificationManager::PopNotification::init()
+void NotificationManager::PopNotification::count_spaces()
{
- std::string text = m_text1 + " " + m_hypertext;
- int last_end = 0;
- m_lines_count = 0;
-
//determine line width
m_line_height = ImGui::CalcTextSize("A").y;
@@ -221,8 +269,16 @@ void NotificationManager::PopNotification::init()
float picture_width = ImGui::CalcTextSize(text.c_str()).x;
m_left_indentation = picture_width + m_line_height / 2;
}
- m_window_width_offset = m_left_indentation + m_line_height * 2;
+ m_window_width_offset = m_left_indentation + m_line_height * 3.f;
m_window_width = m_line_height * 25;
+}
+void NotificationManager::PopNotification::init()
+{
+ std::string text = m_text1 + " " + m_hypertext;
+ int last_end = 0;
+ m_lines_count = 0;
+
+ count_spaces();
// count lines
m_endlines.clear();
@@ -233,10 +289,9 @@ void NotificationManager::PopNotification::init()
//next line is ended by '/n'
m_endlines.push_back(next_hard_end);
last_end = next_hard_end + 1;
- }
- else {
+ } else {
// find next suitable endline
- if (ImGui::CalcTextSize(text.substr(last_end).c_str()).x >= m_window_width - 3.5f * m_line_height) {// m_window_width_offset) {
+ if (ImGui::CalcTextSize(text.substr(last_end).c_str()).x >= m_window_width - m_window_width_offset) {
// more than one line till end
int next_space = text.find_first_of(' ', last_end);
if (next_space > 0) {
@@ -245,8 +300,19 @@ void NotificationManager::PopNotification::init()
next_space = next_space_candidate;
next_space_candidate = text.find_first_of(' ', next_space + 1);
}
- m_endlines.push_back(next_space);
- last_end = next_space + 1;
+ // when one word longer than line.
+ if (ImGui::CalcTextSize(text.substr(last_end, next_space - last_end).c_str()).x > m_window_width - m_window_width_offset) {
+ float width_of_a = ImGui::CalcTextSize("a").x;
+ int letter_count = (int)((m_window_width - m_window_width_offset) / width_of_a);
+ while (last_end + letter_count < text.size() && ImGui::CalcTextSize(text.substr(last_end, letter_count).c_str()).x < m_window_width - m_window_width_offset) {
+ letter_count++;
+ }
+ m_endlines.push_back(last_end + letter_count);
+ last_end += letter_count;
+ } else {
+ m_endlines.push_back(next_space);
+ last_end = next_space + 1;
+ }
}
}
else {
@@ -257,6 +323,8 @@ void NotificationManager::PopNotification::init()
}
m_lines_count++;
}
+ if (m_lines_count == 3)
+ m_multiline = true;
m_initialized = true;
}
void NotificationManager::PopNotification::set_next_window_size(ImGuiWrapper& imgui)
@@ -285,7 +353,8 @@ void NotificationManager::PopNotification::render_text(ImGuiWrapper& imgui, cons
float shift_y = m_line_height;// -m_line_height / 20;
for (size_t i = 0; i < m_lines_count; i++) {
std::string line = m_text1.substr(last_end , m_endlines[i] - last_end);
- last_end = m_endlines[i] + 1;
+ if(i < m_lines_count - 1)
+ last_end = m_endlines[i] + (m_text1[m_endlines[i]] == '\n' || m_text1[m_endlines[i]] == ' ' ? 1 : 0);
ImGui::SetCursorPosX(x_offset);
ImGui::SetCursorPosY(starting_y + i * shift_y);
imgui.text(line.c_str());
@@ -303,7 +372,7 @@ void NotificationManager::PopNotification::render_text(ImGuiWrapper& imgui, cons
ImGui::SetCursorPosY(win_size.y / 2 - win_size.y / 6 - m_line_height / 2);
imgui.text(m_text1.substr(0, m_endlines[0]).c_str());
// line2
- std::string line = m_text1.substr(m_endlines[0] + 1, m_endlines[1] - m_endlines[0] - 1);
+ std::string line = m_text1.substr(m_endlines[0] + (m_text1[m_endlines[0]] == '\n' || m_text1[m_endlines[0]] == ' ' ? 1 : 0), m_endlines[1] - m_endlines[0] - (m_text1[m_endlines[0]] == '\n' || m_text1[m_endlines[0]] == ' ' ? 1 : 0));
if (ImGui::CalcTextSize(line.c_str()).x > m_window_width - m_window_width_offset - ImGui::CalcTextSize((".." + _u8L("More")).c_str()).x)
{
line = line.substr(0, line.length() - 6);
@@ -326,7 +395,7 @@ void NotificationManager::PopNotification::render_text(ImGuiWrapper& imgui, cons
ImGui::SetCursorPosY(win_size.y / 2 - win_size.y / 6 - m_line_height / 2);
imgui.text(m_text1.substr(0, m_endlines[0]).c_str());
// line2
- std::string line = m_text1.substr(m_endlines[0] + 1);
+ std::string line = m_text1.substr(m_endlines[0] + (m_text1[m_endlines[0]] == '\n' || m_text1[m_endlines[0]] == ' ' ? 1 : 0));
cursor_y = win_size.y / 2 + win_size.y / 6 - m_line_height / 2;
ImGui::SetCursorPosX(x_offset);
ImGui::SetCursorPosY(cursor_y);
@@ -375,8 +444,7 @@ void NotificationManager::PopNotification::render_hypertext(ImGuiWrapper& imgui,
set_next_window_size(imgui);
}
else {
- on_text_click();
- m_close_pending = true;
+ m_close_pending = on_text_click();
}
}
ImGui::PopStyleColor();
@@ -407,7 +475,7 @@ void NotificationManager::PopNotification::render_hypertext(ImGuiWrapper& imgui,
void NotificationManager::PopNotification::render_close_button(ImGuiWrapper& imgui, const float win_size_x, const float win_size_y, const float win_pos_x, const float win_pos_y)
{
ImVec2 win_size(win_size_x, win_size_y);
- ImVec2 win_pos(win_pos_x, win_pos_y);
+ ImVec2 win_pos(win_pos_x, win_pos_y);
ImVec4 orange_color = ImGui::GetStyleColorVec4(ImGuiCol_Button);
orange_color.w = 0.8f;
ImGui::PushStyleColor(ImGuiCol_Button, ImVec4(.0f, .0f, .0f, .0f));
@@ -422,7 +490,7 @@ void NotificationManager::PopNotification::render_close_button(ImGuiWrapper& img
button_text = ImGui::CloseIconMarker;
if (ImGui::IsMouseHoveringRect(ImVec2(win_pos.x - win_size.x / 10.f, win_pos.y),
- ImVec2(win_pos.x, win_pos.y + win_size.y - (m_multiline? 2 * m_line_height : 0)),
+ ImVec2(win_pos.x, win_pos.y + win_size.y - ( m_minimize_b_visible ? 2 * m_line_height : 0)),
true))
{
button_text = ImGui::CloseIconHoverMarker;
@@ -435,11 +503,10 @@ void NotificationManager::PopNotification::render_close_button(ImGuiWrapper& img
{
m_close_pending = true;
}
-
//invisible large button
- ImGui::SetCursorPosX(win_size.x - win_size.x / 10.f);
+ ImGui::SetCursorPosX(win_size.x - m_line_height * 2.125);
ImGui::SetCursorPosY(0);
- if (imgui.button(" ", win_size.x / 10.f, win_size.y - (m_multiline ? 2 * m_line_height : 0)))
+ if (imgui.button(" ", m_line_height * 2.125, win_size.y - ( m_minimize_b_visible ? 2 * m_line_height : 0)))
{
m_close_pending = true;
}
@@ -540,15 +607,12 @@ void NotificationManager::PopNotification::render_minimize_button(ImGuiWrapper&
ImGui::PopStyleColor();
ImGui::PopStyleColor();
ImGui::PopStyleColor();
+ m_minimize_b_visible = true;
}
-void NotificationManager::PopNotification::on_text_click()
+bool NotificationManager::PopNotification::on_text_click()
{
+ bool ret = true;
switch (m_data.type) {
- case NotificationType::ExportToRemovableFinished :
- assert(m_evt_handler != nullptr);
- if (m_evt_handler != nullptr)
- wxPostEvent(m_evt_handler, EjectDriveNotificationClickedEvent(EVT_EJECT_DRIVE_NOTIFICAION_CLICKED));
- break;
case NotificationType::SlicingComplete :
//wxGetApp().plater()->export_gcode(false);
assert(m_evt_handler != nullptr);
@@ -567,6 +631,7 @@ void NotificationManager::PopNotification::on_text_click()
default:
break;
}
+ return ret;
}
void NotificationManager::PopNotification::update(const NotificationData& n)
{
@@ -633,6 +698,127 @@ void NotificationManager::SlicingCompleteLargeNotification::set_large(bool l)
m_hypertext = l ? _u8L("Export G-Code.") : std::string();
m_hidden = !l;
}
+//---------------ExportFinishedNotification-----------
+void NotificationManager::ExportFinishedNotification::count_spaces()
+{
+ //determine line width
+ m_line_height = ImGui::CalcTextSize("A").y;
+
+ m_left_indentation = m_line_height;
+ if (m_data.level == NotificationLevel::ErrorNotification || m_data.level == NotificationLevel::WarningNotification) {
+ std::string text;
+ text = (m_data.level == NotificationLevel::ErrorNotification ? ImGui::ErrorMarker : ImGui::WarningMarker);
+ float picture_width = ImGui::CalcTextSize(text.c_str()).x;
+ m_left_indentation = picture_width + m_line_height / 2;
+ }
+ //TODO count this properly
+ m_window_width_offset = m_left_indentation + m_line_height * (m_to_removable ? 5.f : 3.f);
+ m_window_width = m_line_height * 25;
+}
+
+void NotificationManager::ExportFinishedNotification::render_text(ImGuiWrapper& imgui, const float win_size_x, const float win_size_y, const float win_pos_x, const float win_pos_y)
+{
+
+ ImVec2 win_size(win_size_x, win_size_y);
+ ImVec2 win_pos(win_pos_x, win_pos_y);
+ float x_offset = m_left_indentation;
+ std::string fulltext = m_text1 + m_hypertext; //+ m_text2;
+ ImVec2 text_size = ImGui::CalcTextSize(fulltext.c_str());
+ // Lines are always at least two and m_multiline is always true for ExportFinishedNotification.
+ // First line has "Export Finished" text and than hyper text open folder.
+ // Following lines are path to gcode.
+ int last_end = 0;
+ float starting_y = m_line_height / 2;//10;
+ float shift_y = m_line_height;// -m_line_height / 20;
+ for (size_t i = 0; i < m_lines_count; i++) {
+ std::string line = m_text1.substr(last_end, m_endlines[i] - last_end);
+ if (i < m_lines_count - 1)
+ last_end = m_endlines[i] + (m_text1[m_endlines[i]] == '\n' || m_text1[m_endlines[i]] == ' ' ? 1 : 0);
+ ImGui::SetCursorPosX(x_offset);
+ ImGui::SetCursorPosY(starting_y + i * shift_y);
+ imgui.text(line.c_str());
+ //hyperlink text
+ if ( i == 0 ) {
+ render_hypertext(imgui, x_offset + ImGui::CalcTextSize(m_text1.substr(0, last_end).c_str()).x + ImGui::CalcTextSize(" ").x, starting_y, _u8L("Open Folder."));
+ }
+ }
+
+}
+
+void NotificationManager::ExportFinishedNotification::render_close_button(ImGuiWrapper& imgui, const float win_size_x, const float win_size_y, const float win_pos_x, const float win_pos_y)
+{
+ PopNotification::render_close_button(imgui, win_size_x, win_size_y, win_pos_x, win_pos_y);
+ if(m_to_removable)
+ render_eject_button(imgui, win_size_x, win_size_y, win_pos_x, win_pos_y);
+}
+
+void NotificationManager::ExportFinishedNotification::render_eject_button(ImGuiWrapper& imgui, const float win_size_x, const float win_size_y, const float win_pos_x, const float win_pos_y)
+{
+ ImVec2 win_size(win_size_x, win_size_y);
+ ImVec2 win_pos(win_pos_x, win_pos_y);
+ ImVec4 orange_color = ImGui::GetStyleColorVec4(ImGuiCol_Button);
+ orange_color.w = 0.8f;
+ ImGui::PushStyleColor(ImGuiCol_Button, ImVec4(.0f, .0f, .0f, .0f));
+ ImGui::PushStyleColor(ImGuiCol_ButtonHovered, ImVec4(.0f, .0f, .0f, .0f));
+ Notifications_Internal::push_style_color(ImGuiCol_Text, ImVec4(1.f, 1.f, 1.f, 1.f), m_fading_out, m_current_fade_opacity);
+ Notifications_Internal::push_style_color(ImGuiCol_TextSelectedBg, ImVec4(0, .75f, .75f, 1.f), m_fading_out, m_current_fade_opacity);
+ ImGui::PushStyleColor(ImGuiCol_ButtonActive, ImVec4(.0f, .0f, .0f, .0f));
+
+ std::string button_text;
+ button_text = ImGui::EjectMarker;
+
+ if (ImGui::IsMouseHoveringRect(ImVec2(win_pos.x - m_line_height * 4.5f, win_pos.y),
+ ImVec2(win_pos.x - m_line_height * 2.5f, win_pos.y + win_size.y),
+ true))
+ {
+ button_text = ImGui::EjectHoverMarker;
+ // tooltip
+ long time_now = wxGetLocalTime();
+ if (m_hover_time > 0 && m_hover_time < time_now) {
+ ImGui::PushStyleColor(ImGuiCol_PopupBg, ImGuiWrapper::COL_WINDOW_BACKGROUND);
+ ImGui::BeginTooltip();
+ imgui.text(_u8L("Eject drive"));
+ ImGui::EndTooltip();
+ ImGui::PopStyleColor();
+ }
+ if (m_hover_time == 0)
+ m_hover_time = time_now;
+ } else
+ m_hover_time = 0;
+
+ ImVec2 button_pic_size = ImGui::CalcTextSize(button_text.c_str());
+ ImVec2 button_size(button_pic_size.x * 1.25f, button_pic_size.y * 1.25f);
+ ImGui::SetCursorPosX(win_size.x - m_line_height * 4.f);
+ ImGui::SetCursorPosY(win_size.y / 2 - button_size.y / 2);
+ if (imgui.button(button_text.c_str(), button_size.x, button_size.y))
+ {
+ assert(m_evt_handler != nullptr);
+ if (m_evt_handler != nullptr)
+ wxPostEvent(m_evt_handler, EjectDriveNotificationClickedEvent(EVT_EJECT_DRIVE_NOTIFICAION_CLICKED));
+ m_close_pending = true;
+ }
+
+ //invisible large button
+ ImGui::SetCursorPosX(win_size.x - m_line_height * 4.625f);
+ ImGui::SetCursorPosY(0);
+ if (imgui.button(" ", m_line_height * 2.f, win_size.y))
+ {
+ assert(m_evt_handler != nullptr);
+ if (m_evt_handler != nullptr)
+ wxPostEvent(m_evt_handler, EjectDriveNotificationClickedEvent(EVT_EJECT_DRIVE_NOTIFICAION_CLICKED));
+ m_close_pending = true;
+ }
+ ImGui::PopStyleColor();
+ ImGui::PopStyleColor();
+ ImGui::PopStyleColor();
+ ImGui::PopStyleColor();
+ ImGui::PopStyleColor();
+}
+bool NotificationManager::ExportFinishedNotification::on_text_click()
+{
+ Notifications_Internal::open_folder(m_export_dir_path);
+ return false;
+}
//------NotificationManager--------
NotificationManager::NotificationManager(wxEvtHandler* evt_handler) :
m_evt_handler(evt_handler)
@@ -789,6 +975,13 @@ void NotificationManager::remove_slicing_warnings_of_released_objects(const std:
notification->close();
}
}
+void NotificationManager::push_exporting_finished_notification(GLCanvas3D& canvas, std::string path, std::string dir_path, bool on_removable)
+{
+ close_notification_of_type(NotificationType::ExportFinished);
+ NotificationData data{ NotificationType::ExportFinished, NotificationLevel::RegularNotification, 0, _u8L("Exporting finished.") +"\n"+ path };
+ push_notification_data(std::make_unique(data, m_id_provider, m_evt_handler, on_removable, path, dir_path),
+ canvas, 0);
+}
bool NotificationManager::push_notification_data(const NotificationData ¬ification_data, GLCanvas3D& canvas, int timestamp)
{
return push_notification_data(std::make_unique(notification_data, m_id_provider, m_evt_handler), canvas, timestamp);
@@ -822,7 +1015,7 @@ void NotificationManager::render_notifications(GLCanvas3D& canvas, float overlay
bool hovered = false;
sort_notifications();
// iterate thru notifications and render them / erease them
- for (auto it = m_pop_notifications.begin(); it != m_pop_notifications.end();) {
+ for (auto it = m_pop_notifications.begin(); it != m_pop_notifications.end();) {
if ((*it)->get_finished()) {
it = m_pop_notifications.erase(it);
} else {
@@ -931,5 +1124,31 @@ bool NotificationManager::has_slicing_error_notification()
});
}
+void NotificationManager::new_export_began(bool on_removable)
+{
+ close_notification_of_type(NotificationType::ExportFinished);
+ // If we want to hold information of ejecting removable on later export finished notifications
+ /*
+ for (std::unique_ptr& notification : m_pop_notifications) {
+ if (notification->get_type() == NotificationType::ExportToRemovableFinished) {
+ if (!on_removable) {
+ const NotificationData old_data = notification->get_data();
+ notification->update( {old_data.type, old_data.level ,old_data.duration, std::string(), old_data.hypertext} );
+ } else {
+ notification->close();
+ }
+ return;
+ }
+ }
+ */
+}
+void NotificationManager::device_ejected()
+{
+ for (std::unique_ptr& notification : m_pop_notifications) {
+ if (notification->get_type() == NotificationType::ExportFinished && dynamic_cast(notification.get())->m_to_removable)
+ notification->close();
+ }
+}
+
}//namespace GUI
}//namespace Slic3r
diff --git a/src/slic3r/GUI/NotificationManager.hpp b/src/slic3r/GUI/NotificationManager.hpp
index 49de00a9f..0550dab9b 100644
--- a/src/slic3r/GUI/NotificationManager.hpp
+++ b/src/slic3r/GUI/NotificationManager.hpp
@@ -32,7 +32,11 @@ enum class NotificationType
SlicingComplete,
// SlicingNotPossible,
// Notification on end of export to a removable media, with hyperling to eject the external media.
- ExportToRemovableFinished,
+ // Obsolete by ExportFinished
+// ExportToRemovableFinished,
+ // Notification on end of export, with hyperling to see folder and eject if export was to external media.
+ // Own subclass.
+ ExportFinished,
// Works on OSX only.
//FIXME Do we want to have it on Linux and Windows? Is it possible to get the Disconnect event on Windows?
Mouse3dDisconnected,
@@ -115,15 +119,21 @@ public:
// Called when the side bar changes its visibility, as the "slicing complete" notification supplements
// the "slicing info" normally shown at the side bar.
void set_slicing_complete_large(bool large);
+ // Exporting finished, show this information with path, button to open containing folder and if ejectable - eject button
+ void push_exporting_finished_notification(GLCanvas3D& canvas, std::string path, std::string dir_path, bool on_removable);
+ // Close old notification ExportFinished.
+ void new_export_began(bool on_removable);
+ // finds ExportFinished notification and closes it if it was to removable device
+ void device_ejected();
// renders notifications in queue and deletes expired ones
void render_notifications(GLCanvas3D& canvas, float overlay_width);
// finds and closes all notifications of given type
void close_notification_of_type(const NotificationType type);
// Which view is active? Plater or G-code preview? Hide warnings in G-code preview.
void set_in_preview(bool preview);
- // Move to left to avoid colision with variable layer height gizmo
+ // Move to left to avoid colision with variable layer height gizmo.
void set_move_from_overlay(bool move) { m_move_from_overlay = move; }
-
+
private:
// duration 0 means not disapearing
struct NotificationData {
@@ -169,7 +179,7 @@ private:
void close() { m_close_pending = true; }
// data from newer notification of same type
void update(const NotificationData& n);
- bool get_finished() const { return m_finished; }
+ bool get_finished() const { return m_finished || m_close_pending; }
// returns top after movement
float get_top() const { return m_top_y; }
//returns top in actual frame
@@ -187,25 +197,29 @@ private:
protected:
// Call after every size change
void init();
+ // Part of init()
+ virtual void count_spaces();
// Calculetes correct size but not se it in imgui!
virtual void set_next_window_size(ImGuiWrapper& imgui);
virtual void render_text(ImGuiWrapper& imgui,
const float win_size_x, const float win_size_y,
const float win_pos_x , const float win_pos_y);
- void render_close_button(ImGuiWrapper& imgui,
+ virtual void render_close_button(ImGuiWrapper& imgui,
const float win_size_x, const float win_size_y,
const float win_pos_x , const float win_pos_y);
void render_countdown(ImGuiWrapper& imgui,
const float win_size_x, const float win_size_y,
const float win_pos_x , const float win_pos_y);
- void render_hypertext(ImGuiWrapper& imgui,
+ virtual void render_hypertext(ImGuiWrapper& imgui,
const float text_x, const float text_y,
const std::string text,
bool more = false);
+ // Left sign could be error or warning sign
void render_left_sign(ImGuiWrapper& imgui);
- void render_minimize_button(ImGuiWrapper& imgui,
+ virtual void render_minimize_button(ImGuiWrapper& imgui,
const float win_pos_x, const float win_pos_y);
- void on_text_click();
+ // Hypertext action, returns if close notification
+ virtual bool on_text_click();
const NotificationData m_data;
@@ -236,7 +250,9 @@ private:
// Will go to m_finished next render
bool m_close_pending { false };
// variables to count positions correctly
+ // all space without text
float m_window_width_offset;
+ // Space on left side without text
float m_left_indentation;
// Total size of notification window - varies based on monitor
float m_window_height { 56.0f };
@@ -252,6 +268,8 @@ private:
bool m_is_gray { false };
//if multiline = true, notification is showing all lines(>2)
bool m_multiline { false };
+ // True if minimized button is rendered, helps to decide where is area for invisible close button
+ bool m_minimize_b_visible { false };
int m_lines_count{ 1 };
// Target for wxWidgets events sent by clicking on the hyperlink available at some notifications.
wxEvtHandler* m_evt_handler;
@@ -270,7 +288,6 @@ private:
const float win_size_x, const float win_size_y,
const float win_pos_x, const float win_pos_y)
override;
-
bool m_is_large;
bool m_has_print_info { false };
std::string m_print_info { std::string() };
@@ -284,6 +301,40 @@ private:
int warning_step;
};
+ class ExportFinishedNotification : public PopNotification
+ {
+ public:
+ ExportFinishedNotification(const NotificationData& n, NotificationIDProvider& id_provider, wxEvtHandler* evt_handler, bool to_removable,const std::string& export_path,const std::string& export_dir_path)
+ : PopNotification(n, id_provider, evt_handler)
+ , m_to_removable(to_removable)
+ , m_export_path(export_path)
+ , m_export_dir_path(export_dir_path)
+ {
+ m_multiline = true;
+ }
+ bool m_to_removable;
+ std::string m_export_path;
+ std::string m_export_dir_path;
+ protected:
+ // Reserves space on right for more buttons
+ virtual void count_spaces() override;
+ virtual void render_text(ImGuiWrapper& imgui,
+ const float win_size_x, const float win_size_y,
+ const float win_pos_x, const float win_pos_y) override;
+ // Renders also button to open directory with exported path and eject removable media
+ virtual void render_close_button(ImGuiWrapper& imgui,
+ const float win_size_x, const float win_size_y,
+ const float win_pos_x, const float win_pos_y) override;
+ void render_eject_button(ImGuiWrapper& imgui,
+ const float win_size_x, const float win_size_y,
+ const float win_pos_x, const float win_pos_y);
+ virtual void render_minimize_button(ImGuiWrapper& imgui, const float win_pos_x, const float win_pos_y) override
+ { m_minimize_b_visible = false; }
+ virtual bool on_text_click() override;
+ // local time of last hover for showing tooltip
+ long m_hover_time { 0 };
+ };
+
//pushes notification into the queue of notifications that are rendered
//can be used to create custom notification
bool push_notification_data(const NotificationData& notification_data, GLCanvas3D& canvas, int timestamp);
@@ -314,7 +365,7 @@ private:
//prepared (basic) notifications
const std::vector basic_notifications = {
// {NotificationType::SlicingNotPossible, NotificationLevel::RegularNotification, 10, _u8L("Slicing is not possible.")},
- {NotificationType::ExportToRemovableFinished, NotificationLevel::ImportantNotification, 0, _u8L("Exporting finished."), _u8L("Eject drive.") },
+// {NotificationType::ExportToRemovableFinished, NotificationLevel::ImportantNotification, 0, _u8L("Exporting finished."), _u8L("Eject drive.") },
{NotificationType::Mouse3dDisconnected, NotificationLevel::RegularNotification, 10, _u8L("3D Mouse disconnected.") },
// {NotificationType::Mouse3dConnected, NotificationLevel::RegularNotification, 5, _u8L("3D Mouse connected.") },
// {NotificationType::NewPresetsAviable, NotificationLevel::ImportantNotification, 20, _u8L("New Presets are available."), _u8L("See here.") },
diff --git a/src/slic3r/GUI/OG_CustomCtrl.cpp b/src/slic3r/GUI/OG_CustomCtrl.cpp
index 145d97189..22729c8c2 100644
--- a/src/slic3r/GUI/OG_CustomCtrl.cpp
+++ b/src/slic3r/GUI/OG_CustomCtrl.cpp
@@ -62,6 +62,7 @@ OG_CustomCtrl::OG_CustomCtrl( wxWindow* parent,
this->Bind(wxEVT_PAINT, &OG_CustomCtrl::OnPaint, this);
this->Bind(wxEVT_MOTION, &OG_CustomCtrl::OnMotion, this);
this->Bind(wxEVT_LEFT_DOWN, &OG_CustomCtrl::OnLeftDown, this);
+ this->Bind(wxEVT_LEAVE_WINDOW, &OG_CustomCtrl::OnLeaveWin, this);
}
void OG_CustomCtrl::init_ctrl_lines()
@@ -113,7 +114,15 @@ wxPoint OG_CustomCtrl::get_pos(const Line& line, Field* field_in/* = nullptr*/)
{
wxCoord v_pos = 0;
wxCoord h_pos = 0;
- for (auto ctrl_line : ctrl_lines) {
+
+ auto correct_line_height = [](int& line_height, wxWindow* win)
+ {
+ int win_height = win->GetSize().GetHeight();
+ if (line_height < win_height)
+ line_height = win_height;
+ };
+
+ for (CtrlLine& ctrl_line : ctrl_lines) {
if (&ctrl_line.og_line == &line)
{
h_pos = m_bmp_mode_sz.GetWidth() + m_h_gap;
@@ -133,6 +142,10 @@ wxPoint OG_CustomCtrl::get_pos(const Line& line, Field* field_in/* = nullptr*/)
if (line.widget) {
h_pos += blinking_button_width;
+
+ for (auto child : line.widget_sizer->GetChildren())
+ if (child->IsWindow())
+ correct_line_height(ctrl_line.height, child->GetWindow());
break;
}
@@ -143,11 +156,15 @@ wxPoint OG_CustomCtrl::get_pos(const Line& line, Field* field_in/* = nullptr*/)
option_set.front().side_widget == nullptr && line.get_extra_widgets().size() == 0)
{
h_pos += 3 * blinking_button_width;
+ Field* field = opt_group->get_field(option_set.front().opt_id);
+ correct_line_height(ctrl_line.height, field->getWindow());
break;
}
for (auto opt : option_set) {
Field* field = opt_group->get_field(opt.opt_id);
+ correct_line_height(ctrl_line.height, field->getWindow());
+
ConfigOptionDef option = opt.opt;
// add label if any
if (!option.label.empty()) {
@@ -281,6 +298,16 @@ void OG_CustomCtrl::OnLeftDown(wxMouseEvent& event)
}
+void OG_CustomCtrl::OnLeaveWin(wxMouseEvent& event)
+{
+ for (CtrlLine& line : ctrl_lines)
+ line.is_focused = false;
+
+ Refresh();
+ Update();
+ event.Skip();
+}
+
bool OG_CustomCtrl::update_visibility(ConfigOptionMode mode)
{
wxCoord v_pos = 0;
diff --git a/src/slic3r/GUI/OG_CustomCtrl.hpp b/src/slic3r/GUI/OG_CustomCtrl.hpp
index d00a0027d..2ca1b8a77 100644
--- a/src/slic3r/GUI/OG_CustomCtrl.hpp
+++ b/src/slic3r/GUI/OG_CustomCtrl.hpp
@@ -78,6 +78,7 @@ public:
void OnPaint(wxPaintEvent&);
void OnMotion(wxMouseEvent& event);
void OnLeftDown(wxMouseEvent& event);
+ void OnLeaveWin(wxMouseEvent& event);
void init_ctrl_lines();
bool update_visibility(ConfigOptionMode mode);
diff --git a/src/slic3r/GUI/PhysicalPrinterDialog.cpp b/src/slic3r/GUI/PhysicalPrinterDialog.cpp
index c970568c5..6aae93f89 100644
--- a/src/slic3r/GUI/PhysicalPrinterDialog.cpp
+++ b/src/slic3r/GUI/PhysicalPrinterDialog.cpp
@@ -151,8 +151,8 @@ void PresetForPrinter::msw_rescale()
// PhysicalPrinterDialog
//------------------------------------------
-PhysicalPrinterDialog::PhysicalPrinterDialog(wxString printer_name) :
- DPIDialog(NULL, wxID_ANY, _L("Physical Printer"), wxDefaultPosition, wxSize(45 * wxGetApp().em_unit(), -1), wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER),
+PhysicalPrinterDialog::PhysicalPrinterDialog(wxWindow* parent, wxString printer_name) :
+ DPIDialog(parent, wxID_ANY, _L("Physical Printer"), wxDefaultPosition, wxSize(45 * wxGetApp().em_unit(), -1), wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER),
m_printer("", wxGetApp().preset_bundle->physical_printers.default_config())
{
SetFont(wxGetApp().normal_font());
@@ -169,7 +169,7 @@ PhysicalPrinterDialog::PhysicalPrinterDialog(wxString printer_name) :
new_printer = false;
}
- wxStaticText* label_top = new wxStaticText(this, wxID_ANY, _L("Descriptive name for the printer device") + ":");
+ wxStaticText* label_top = new wxStaticText(this, wxID_ANY, _L("Descriptive name for the printer") + ":");
m_add_preset_btn = new ScalableButton(this, wxID_ANY, "add_copies", "", wxDefaultSize, wxDefaultPosition, /*wxBU_LEFT | */wxBU_EXACTFIT);
m_add_preset_btn->SetFont(wxGetApp().normal_font());
@@ -598,7 +598,7 @@ void PhysicalPrinterDialog::AddPreset(wxEvent& event)
void PhysicalPrinterDialog::DeletePreset(PresetForPrinter* preset_for_printer)
{
if (m_presets.size() == 1) {
- wxString msg_text = _L("It's not possible to delete last related preset for the printer.");
+ wxString msg_text = _L("It's not possible to delete the last related preset for the printer.");
wxMessageDialog dialog(nullptr, msg_text, _L("Infornation"), wxICON_INFORMATION | wxOK);
dialog.ShowModal();
return;
diff --git a/src/slic3r/GUI/PhysicalPrinterDialog.hpp b/src/slic3r/GUI/PhysicalPrinterDialog.hpp
index 6d089415f..925939492 100644
--- a/src/slic3r/GUI/PhysicalPrinterDialog.hpp
+++ b/src/slic3r/GUI/PhysicalPrinterDialog.hpp
@@ -82,7 +82,7 @@ class PhysicalPrinterDialog : public DPIDialog
void AddPreset(wxEvent& event);
public:
- PhysicalPrinterDialog(wxString printer_name);
+ PhysicalPrinterDialog(wxWindow* parent, wxString printer_name);
~PhysicalPrinterDialog();
void update();
diff --git a/src/slic3r/GUI/Plater.cpp b/src/slic3r/GUI/Plater.cpp
index f819702e4..c44281d7c 100644
--- a/src/slic3r/GUI/Plater.cpp
+++ b/src/slic3r/GUI/Plater.cpp
@@ -578,7 +578,7 @@ struct Sidebar::priv
wxButton *btn_export_gcode;
wxButton *btn_reslice;
ScalableButton *btn_send_gcode;
- ScalableButton *btn_eject_device;
+ //ScalableButton *btn_eject_device;
ScalableButton* btn_export_gcode_removable; //exports to removable drives (appears only if removable drive is connected)
bool is_collapsed {false};
@@ -750,13 +750,14 @@ Sidebar::Sidebar(Plater *parent)
(*btn)->Hide();
};
- init_scalable_btn(&p->btn_send_gcode , "export_gcode", _L("Send to printer") + "\tCtrl+Shift+G");
- init_scalable_btn(&p->btn_eject_device, "eject_sd" , _L("Remove device") + "\tCtrl+T");
- init_scalable_btn(&p->btn_export_gcode_removable, "export_to_sd", _L("Export to SD card / Flash drive") + "\tCtrl+U");
+ init_scalable_btn(&p->btn_send_gcode , "export_gcode", _L("Send to printer ") + GUI::shortkey_ctrl_prefix() + "Shift+G");
+// init_scalable_btn(&p->btn_eject_device, "eject_sd" , _L("Remove device ") + GUI::shortkey_ctrl_prefix() + "T");
+ init_scalable_btn(&p->btn_export_gcode_removable, "export_to_sd", _L("Export to SD card / Flash drive ") + GUI::shortkey_ctrl_prefix() + "U");
// regular buttons "Slice now" and "Export G-code"
- const int scaled_height = p->btn_eject_device->GetBitmapHeight() + 4;
+// const int scaled_height = p->btn_eject_device->GetBitmapHeight() + 4;
+ const int scaled_height = p->btn_export_gcode_removable->GetBitmapHeight() + 4;
auto init_btn = [this](wxButton **btn, wxString label, const int button_height) {
*btn = new wxButton(this, wxID_ANY, label, wxDefaultPosition,
wxSize(-1, button_height), wxBU_EXACTFIT);
@@ -774,7 +775,7 @@ Sidebar::Sidebar(Plater *parent)
complect_btns_sizer->Add(p->btn_export_gcode, 1, wxEXPAND);
complect_btns_sizer->Add(p->btn_send_gcode);
complect_btns_sizer->Add(p->btn_export_gcode_removable);
- complect_btns_sizer->Add(p->btn_eject_device);
+// complect_btns_sizer->Add(p->btn_eject_device);
btns_sizer->Add(p->btn_reslice, 0, wxEXPAND | wxTOP, margin_5);
@@ -797,7 +798,7 @@ Sidebar::Sidebar(Plater *parent)
p->plater->select_view_3D("Preview");
});
p->btn_send_gcode->Bind(wxEVT_BUTTON, [this](wxCommandEvent&) { p->plater->send_gcode(); });
- p->btn_eject_device->Bind(wxEVT_BUTTON, [this](wxCommandEvent&) { p->plater->eject_drive(); });
+// p->btn_eject_device->Bind(wxEVT_BUTTON, [this](wxCommandEvent&) { p->plater->eject_drive(); });
p->btn_export_gcode_removable->Bind(wxEVT_BUTTON, [this](wxCommandEvent&) { p->plater->export_gcode(true); });
}
@@ -940,9 +941,9 @@ void Sidebar::msw_rescale()
p->object_info->msw_rescale();
p->btn_send_gcode->msw_rescale();
- p->btn_eject_device->msw_rescale();
+// p->btn_eject_device->msw_rescale();
p->btn_export_gcode_removable->msw_rescale();
- const int scaled_height = p->btn_eject_device->GetBitmap().GetHeight() + 4;
+ const int scaled_height = p->btn_export_gcode_removable->GetBitmap().GetHeight() + 4;
p->btn_export_gcode->SetMinSize(wxSize(-1, scaled_height));
p->btn_reslice ->SetMinSize(wxSize(-1, scaled_height));
@@ -965,7 +966,7 @@ void Sidebar::sys_color_changed()
// btn...->msw_rescale() updates icon on button, so use it
p->btn_send_gcode->msw_rescale();
- p->btn_eject_device->msw_rescale();
+// p->btn_eject_device->msw_rescale();
p->btn_export_gcode_removable->msw_rescale();
p->scrolled->Layout();
@@ -1268,7 +1269,7 @@ void Sidebar::enable_buttons(bool enable)
p->btn_reslice->Enable(enable);
p->btn_export_gcode->Enable(enable);
p->btn_send_gcode->Enable(enable);
- p->btn_eject_device->Enable(enable);
+// p->btn_eject_device->Enable(enable);
p->btn_export_gcode_removable->Enable(enable);
}
@@ -1276,8 +1277,8 @@ bool Sidebar::show_reslice(bool show) const { return p->btn_reslice->Sh
bool Sidebar::show_export(bool show) const { return p->btn_export_gcode->Show(show); }
bool Sidebar::show_send(bool show) const { return p->btn_send_gcode->Show(show); }
bool Sidebar::show_export_removable(bool show) const { return p->btn_export_gcode_removable->Show(show); }
-bool Sidebar::show_eject(bool show) const { return p->btn_eject_device->Show(show); }
-bool Sidebar::get_eject_shown() const { return p->btn_eject_device->IsShown(); }
+//bool Sidebar::show_eject(bool show) const { return p->btn_eject_device->Show(show); }
+//bool Sidebar::get_eject_shown() const { return p->btn_eject_device->IsShown(); }
bool Sidebar::is_multifilament()
{
@@ -1468,6 +1469,13 @@ bool PlaterDropTarget::OnDropFiles(wxCoord x, wxCoord y, const wxArrayString &fi
return true;
}
+// State to manage showing after export notifications and device ejecting
+enum ExportingStatus{
+ NOT_EXPORTING,
+ EXPORTING_TO_REMOVABLE,
+ EXPORTING_TO_LOCAL
+};
+
// Plater / private
struct Plater::priv
{
@@ -1770,8 +1778,9 @@ struct Plater::priv
// Caching last value of show_action_buttons parameter for show_action_buttons(), so that a callback which does not know this state will not override it.
mutable bool ready_to_slice = { false };
// Flag indicating that the G-code export targets a removable device, therefore the show_action_buttons() needs to be called at any case when the background processing finishes.
- bool writing_to_removable_device { false };
- bool show_ExportToRemovableFinished_notification { false };
+ ExportingStatus exporting_status { NOT_EXPORTING };
+ std::string last_output_path;
+ std::string last_output_dir_path;
bool inside_snapshot_capture() { return m_prevent_snapshots != 0; }
bool process_completed_with_error { false };
private:
@@ -1969,6 +1978,7 @@ Plater::priv::priv(Plater *q, MainFrame *main_frame)
preview->get_wxglcanvas()->Bind(EVT_GLCANVAS_UPDATE_BED_SHAPE, [q](SimpleEvent&) { q->set_bed_shape(); });
preview->get_wxglcanvas()->Bind(EVT_GLCANVAS_TAB, [this](SimpleEvent&) { select_next_view_3D(); });
preview->get_wxglcanvas()->Bind(EVT_GLCANVAS_COLLAPSE_SIDEBAR, [this](SimpleEvent&) { this->q->collapse_sidebar(!this->q->is_sidebar_collapsed()); });
+ preview->get_wxglcanvas()->Bind(EVT_GLCANVAS_JUMP_TO, [this](wxKeyEvent& evt) { preview->jump_layers_slider(evt); });
#if ENABLE_GCODE_VIEWER
preview->get_wxglcanvas()->Bind(EVT_GLCANVAS_MOVE_LAYERS_SLIDER, [this](wxKeyEvent& evt) { preview->move_layers_slider(evt); });
preview->get_wxglcanvas()->Bind(EVT_GLCANVAS_EDIT_COLOR_CHANGE, [this](wxKeyEvent& evt) { preview->edit_layers_slider(evt); });
@@ -2043,9 +2053,8 @@ Plater::priv::priv(Plater *q, MainFrame *main_frame)
});
this->q->Bind(EVT_REMOVABLE_DRIVES_CHANGED, [this, q](RemovableDrivesChangedEvent &) {
this->show_action_buttons(this->ready_to_slice);
- if (!this->sidebar->get_eject_shown()) {
- notification_manager->close_notification_of_type(NotificationType::ExportToRemovableFinished);
- }
+ // Close notification ExportingFinished but only if last export was to removable
+ notification_manager->device_ejected();
});
// Start the background thread and register this window as a target for update events.
wxGetApp().removable_drive_manager()->init(this->q);
@@ -2314,7 +2323,7 @@ std::vector Plater::priv::load_files(const std::vector& input_
wxMessageDialog msg_dlg(q, format_wxstr(_L(
"Some object(s) in file %s looks like saved in inches.\n"
"Should I consider them as a saved in inches and convert them?"), from_path(filename)) + "\n",
- _L("Saved in inches object detected"), wxICON_WARNING | wxYES | wxNO);
+ _L("The object appears to be saved in inches"), wxICON_WARNING | wxYES | wxNO);
if (msg_dlg.ShowModal() == wxID_YES)
convert_from_imperial_units(model);
}
@@ -2912,6 +2921,7 @@ unsigned int Plater::priv::update_background_process(bool force_validation, bool
const wxString invalid_str = _L("Invalid data");
for (auto btn : {ActionButtonType::abReslice, ActionButtonType::abSendGCode, ActionButtonType::abExport})
sidebar->set_btn_label(btn, invalid_str);
+ process_completed_with_error = true;
}
else
{
@@ -3511,9 +3521,7 @@ void Plater::priv::on_slicing_completed(wxCommandEvent & evt)
void Plater::priv::on_export_began(wxCommandEvent& evt)
{
if (show_warning_dialog)
- warnings_dialog();
- if (this->writing_to_removable_device)
- this->show_ExportToRemovableFinished_notification = true;
+ warnings_dialog();
}
void Plater::priv::on_slicing_began()
{
@@ -3591,10 +3599,14 @@ void Plater::priv::on_process_completed(SlicingProcessCompletedEvent &evt)
} else
notification_manager->push_slicing_error_notification(message, *q->get_current_canvas3D());
this->statusbar()->set_status_text(from_u8(message));
- const wxString invalid_str = _L("Invalid data");
- for (auto btn : { ActionButtonType::abReslice, ActionButtonType::abSendGCode, ActionButtonType::abExport })
- sidebar->set_btn_label(btn, invalid_str);
- process_completed_with_error = true;
+ if (evt.invalidate_plater())
+ {
+ const wxString invalid_str = _L("Invalid data");
+ for (auto btn : { ActionButtonType::abReslice, ActionButtonType::abSendGCode, ActionButtonType::abExport })
+ sidebar->set_btn_label(btn, invalid_str);
+ process_completed_with_error = true;
+ }
+
}
if (evt.cancelled())
this->statusbar()->set_status_text(_L("Cancelled"));
@@ -3629,13 +3641,14 @@ void Plater::priv::on_process_completed(SlicingProcessCompletedEvent &evt)
show_action_buttons(false);
}
// If writing to removable drive was scheduled, show notification with eject button
- if (this->writing_to_removable_device && this->show_ExportToRemovableFinished_notification) {
+ if (exporting_status == ExportingStatus::EXPORTING_TO_REMOVABLE && !this->process_completed_with_error) {
show_action_buttons(false);
- notification_manager->push_notification(NotificationType::ExportToRemovableFinished, *q->get_current_canvas3D());
- }
+ notification_manager->push_exporting_finished_notification(*q->get_current_canvas3D(), last_output_path, last_output_dir_path, true);
+ wxGetApp().removable_drive_manager()->set_exporting_finished(true);
+ }else if (exporting_status == ExportingStatus::EXPORTING_TO_LOCAL && !this->process_completed_with_error)
+ notification_manager->push_exporting_finished_notification(*q->get_current_canvas3D(), last_output_path, last_output_dir_path, false);
}
- this->show_ExportToRemovableFinished_notification = false;
- this->writing_to_removable_device = false;
+ exporting_status = ExportingStatus::NOT_EXPORTING;
}
void Plater::priv::on_layer_editing_toggled(bool enable)
@@ -4306,8 +4319,8 @@ void Plater::priv::show_action_buttons(const bool ready_to_slice) const
if (sidebar->show_reslice(false) |
sidebar->show_export(true) |
sidebar->show_send(send_gcode_shown) |
- sidebar->show_export_removable(removable_media_status.has_removable_drives) |
- sidebar->show_eject(removable_media_status.has_eject))
+ sidebar->show_export_removable(removable_media_status.has_removable_drives))
+// sidebar->show_eject(removable_media_status.has_eject))
sidebar->Layout();
}
else
@@ -4318,8 +4331,8 @@ void Plater::priv::show_action_buttons(const bool ready_to_slice) const
if (sidebar->show_reslice(ready_to_slice) |
sidebar->show_export(!ready_to_slice) |
sidebar->show_send(send_gcode_shown && !ready_to_slice) |
- sidebar->show_export_removable(!ready_to_slice && removable_media_status.has_removable_drives) |
- sidebar->show_eject(!ready_to_slice && removable_media_status.has_eject))
+ sidebar->show_export_removable(!ready_to_slice && removable_media_status.has_removable_drives))
+// sidebar->show_eject(!ready_to_slice && removable_media_status.has_eject))
sidebar->Layout();
}
}
@@ -4727,7 +4740,7 @@ void Plater::load_gcode(const wxString& filename)
GCodeProcessor processor;
processor.enable_producers(true);
processor.enable_machine_envelope_processing(true);
- processor.process_file(filename.ToUTF8().data());
+ processor.process_file(filename.ToUTF8().data(), false);
p->gcode_result = std::move(processor.extract_result());
// show results
@@ -4958,7 +4971,7 @@ void Plater::export_gcode(bool prefer_removable)
if (p->model.objects.empty())
return;
- if (p->process_completed_with_error)//here
+ if (p->process_completed_with_error)
return;
// If possible, remove accents from accented latin characters.
@@ -5003,7 +5016,10 @@ void Plater::export_gcode(bool prefer_removable)
if (! output_path.empty()) {
bool path_on_removable_media = removable_drive_manager.set_and_verify_last_save_path(output_path.string());
- p->writing_to_removable_device = path_on_removable_media;
+ p->notification_manager->new_export_began(path_on_removable_media);
+ p->exporting_status = path_on_removable_media ? ExportingStatus::EXPORTING_TO_REMOVABLE : ExportingStatus::EXPORTING_TO_LOCAL;
+ p->last_output_path = output_path.string();
+ p->last_output_dir_path = output_path.parent_path().string();
p->export_gcode(output_path, path_on_removable_media, PrintHostJob());
// Storing a path to AppConfig either as path to removable media or a path to internal media.
// is_path_on_removable_drive() is called with the "true" parameter to update its internal database as the user may have shuffled the external drives
@@ -5223,6 +5239,10 @@ void Plater::export_toolpaths_to_obj() const
void Plater::reslice()
{
+ // There is "invalid data" button instead "slice now"
+ if (p->process_completed_with_error)
+ return;
+
// Stop arrange and (or) optimize rotation tasks.
this->stop_jobs();
diff --git a/src/slic3r/GUI/Preferences.cpp b/src/slic3r/GUI/Preferences.cpp
index 6acb67e66..22ad2be7e 100644
--- a/src/slic3r/GUI/Preferences.cpp
+++ b/src/slic3r/GUI/Preferences.cpp
@@ -117,12 +117,12 @@ void PreferencesDialog::build()
option = Option(def, "show_incompatible_presets");
m_optgroup_general->append_single_option_line(option);
- def.label = L("Single Instance");
+ def.label = L("Single instance mode");
def.type = coBool;
#if __APPLE__
def.tooltip = L("On OSX there is always only one instance of app running by default. However it is allowed to run multiple instances of same app from the command line. In such case this settings will allow only one instance.");
#else
- def.tooltip = L("If this is enabled, when staring PrusaSlicer and another instance of same PrusaSlicer is running, that instance will be reactivated instead.");
+ def.tooltip = L("If this is enabled, when starting PrusaSlicer and another instance of same PrusaSlicer is running, that instance will be reactivated instead.");
#endif
def.set_default_value(new ConfigOptionBool{ app_config->has("single_instance") ? app_config->get("single_instance") == "1" : false });
option = Option(def, "single_instance");
@@ -153,7 +153,7 @@ void PreferencesDialog::build()
def.label = L("Ask for unsaved changes when closing application");
def.type = coBool;
- def.tooltip = L("Always ask for unsaved changes when closing application");
+ def.tooltip = L("When closing the application, always ask for unsaved changes");
def.set_default_value(new ConfigOptionBool{ app_config->get("default_action_on_close_application") == "none" });
option = Option(def, "default_action_on_close_application");
m_optgroup_general->append_single_option_line(option);
@@ -235,8 +235,8 @@ void PreferencesDialog::build()
def.label = L("Sequential slider applied only to top layer");
def.type = coBool;
- def.tooltip = L("If enabled, changes made using the sequential slider, in preview, apply only to gcode top layer, "
- "if disabled, changes made using the sequential slider, in preview, apply to the whole gcode.");
+ def.tooltip = L("If enabled, changes made using the sequential slider, in preview, apply only to gcode top layer. "
+ "If disabled, changes made using the sequential slider, in preview, apply to the whole gcode.");
def.set_default_value(new ConfigOptionBool{ app_config->get("seq_top_layer_only") == "1" });
option = Option(def, "seq_top_layer_only");
m_optgroup_gui->append_single_option_line(option);
@@ -427,8 +427,8 @@ void PreferencesDialog::create_icon_size_slider()
void PreferencesDialog::create_settings_mode_widget()
{
wxString choices[] = { _L("Old regular layout with the tab bar"),
- _L("New layout without the tab bar on the plater"),
- _L("Settings will be shown in the non-modal dialog") };
+ _L("New layout, access via settings button in the top menu"),
+ _L("Settings in non-modal window") };
auto app_config = get_app_config();
int selection = app_config->get("old_settings_layout_mode") == "1" ? 0 :
@@ -437,7 +437,7 @@ void PreferencesDialog::create_settings_mode_widget()
wxWindow* parent = m_optgroup_gui->ctrl_parent();
- m_layout_mode_box = new wxRadioBox(parent, wxID_ANY, _L("Settings layout mode"), wxDefaultPosition, wxDefaultSize, WXSIZEOF(choices), choices,
+ m_layout_mode_box = new wxRadioBox(parent, wxID_ANY, _L("Layout Options"), wxDefaultPosition, wxDefaultSize, WXSIZEOF(choices), choices,
3, wxRA_SPECIFY_ROWS);
m_layout_mode_box->SetFont(wxGetApp().normal_font());
m_layout_mode_box->SetSelection(selection);
diff --git a/src/slic3r/GUI/PresetComboBoxes.cpp b/src/slic3r/GUI/PresetComboBoxes.cpp
index d82a32ed3..5acf71fef 100644
--- a/src/slic3r/GUI/PresetComboBoxes.cpp
+++ b/src/slic3r/GUI/PresetComboBoxes.cpp
@@ -253,14 +253,14 @@ void PresetComboBox::edit_physical_printer()
if (!m_preset_bundle->physical_printers.has_selection())
return;
- PhysicalPrinterDialog dlg(this->GetString(this->GetSelection()));
+ PhysicalPrinterDialog dlg(this->GetParent(),this->GetString(this->GetSelection()));
if (dlg.ShowModal() == wxID_OK)
update();
}
void PresetComboBox::add_physical_printer()
{
- if (PhysicalPrinterDialog(wxEmptyString).ShowModal() == wxID_OK)
+ if (PhysicalPrinterDialog(this->GetParent(), wxEmptyString).ShowModal() == wxID_OK)
update();
}
@@ -675,7 +675,7 @@ void PlaterPresetComboBox::show_add_menu()
append_menu_item(menu, wxID_ANY, _L("Add physical printer"), "",
[this](wxCommandEvent&) {
- PhysicalPrinterDialog dlg(wxEmptyString);
+ PhysicalPrinterDialog dlg(this->GetParent(), wxEmptyString);
if (dlg.ShowModal() == wxID_OK)
update();
}, "edit_uni", menu, []() { return true; }, wxGetApp().plater());
diff --git a/src/slic3r/GUI/RemovableDriveManager.cpp b/src/slic3r/GUI/RemovableDriveManager.cpp
index d865fe347..0f6f5255e 100644
--- a/src/slic3r/GUI/RemovableDriveManager.cpp
+++ b/src/slic3r/GUI/RemovableDriveManager.cpp
@@ -391,7 +391,6 @@ bool RemovableDriveManager::set_and_verify_last_save_path(const std::string &pat
#ifndef REMOVABLE_DRIVE_MANAGER_OS_CALLBACKS
this->update();
#endif // REMOVABLE_DRIVE_MANAGER_OS_CALLBACKS
-
m_last_save_path = this->get_removable_drive_from_path(path);
m_exporting_finished = false;
return ! m_last_save_path.empty();
diff --git a/src/slic3r/GUI/SavePresetDialog.cpp b/src/slic3r/GUI/SavePresetDialog.cpp
index 79ce296b8..ee5cc4a29 100644
--- a/src/slic3r/GUI/SavePresetDialog.cpp
+++ b/src/slic3r/GUI/SavePresetDialog.cpp
@@ -130,15 +130,16 @@ void SavePresetDialog::Item::update()
if (m_valid_type == Valid && existing && m_preset_name != m_presets->get_selected_preset_name())
{
- info_line = from_u8((boost::format(_u8L("Preset with name \"%1%\" already exists.")) % m_preset_name).str());
- if (!existing->is_compatible)
- info_line += "\n" + _L("And selected preset is imcopatible with selected printer.");
+ if (existing->is_compatible)
+ info_line = from_u8((boost::format(_u8L("Preset with name \"%1%\" already exists.")) % m_preset_name).str());
+ else
+ info_line = from_u8((boost::format(_u8L("Preset with name \"%1%\" already exists and is imcopatible with selected printer.")) % m_preset_name).str());
info_line += "\n" + _L("Note: This preset will be replaced after saving");
m_valid_type = Warning;
}
if (m_valid_type == Valid && m_preset_name.empty()) {
- info_line = _L("The empty name is not available.");
+ info_line = _L("The name cannot be empty.");
m_valid_type = NoValid;
}
@@ -171,14 +172,14 @@ void SavePresetDialog::Item::accept()
// SavePresetDialog
//-----------------------------------------------
-SavePresetDialog::SavePresetDialog(Preset::Type type, std::string suffix)
- : DPIDialog(nullptr, wxID_ANY, _L("Save preset"), wxDefaultPosition, wxSize(45 * wxGetApp().em_unit(), 5 * wxGetApp().em_unit()), wxDEFAULT_DIALOG_STYLE | wxICON_WARNING | wxRESIZE_BORDER)
+SavePresetDialog::SavePresetDialog(wxWindow* parent, Preset::Type type, std::string suffix)
+ : DPIDialog(parent, wxID_ANY, _L("Save preset"), wxDefaultPosition, wxSize(45 * wxGetApp().em_unit(), 5 * wxGetApp().em_unit()), wxDEFAULT_DIALOG_STYLE | wxICON_WARNING | wxRESIZE_BORDER)
{
build(std::vector{type}, suffix);
}
-SavePresetDialog::SavePresetDialog(std::vector types, std::string suffix)
- : DPIDialog(nullptr, wxID_ANY, _L("Save preset"), wxDefaultPosition, wxSize(45 * wxGetApp().em_unit(), 5 * wxGetApp().em_unit()), wxDEFAULT_DIALOG_STYLE | wxICON_WARNING | wxRESIZE_BORDER)
+SavePresetDialog::SavePresetDialog(wxWindow* parent, std::vector types, std::string suffix)
+ : DPIDialog(parent, wxID_ANY, _L("Save preset"), wxDefaultPosition, wxSize(45 * wxGetApp().em_unit(), 5 * wxGetApp().em_unit()), wxDEFAULT_DIALOG_STYLE | wxICON_WARNING | wxRESIZE_BORDER)
{
build(types, suffix);
}
diff --git a/src/slic3r/GUI/SavePresetDialog.hpp b/src/slic3r/GUI/SavePresetDialog.hpp
index 61f069c00..2b0c71a6b 100644
--- a/src/slic3r/GUI/SavePresetDialog.hpp
+++ b/src/slic3r/GUI/SavePresetDialog.hpp
@@ -73,8 +73,8 @@ class SavePresetDialog : public DPIDialog
public:
- SavePresetDialog(Preset::Type type, std::string suffix = "");
- SavePresetDialog(std::vector types, std::string suffix = "");
+ SavePresetDialog(wxWindow* parent, Preset::Type type, std::string suffix = "");
+ SavePresetDialog(wxWindow* parent, std::vector types, std::string suffix = "");
~SavePresetDialog();
void AddItem(Preset::Type type, const std::string& suffix);
diff --git a/src/slic3r/GUI/Search.cpp b/src/slic3r/GUI/Search.cpp
index da9c8fe25..6be8f11bf 100644
--- a/src/slic3r/GUI/Search.cpp
+++ b/src/slic3r/GUI/Search.cpp
@@ -430,7 +430,7 @@ SearchDialog::SearchDialog(OptionsSearcher* searcher)
wxColour bgr_clr = wxSystemSettings::GetColour(wxSYS_COLOUR_WINDOW);
SetBackgroundColour(bgr_clr);
- default_string = _L("Type here to search");
+ default_string = _L("Enter a search term");
int border = 10;
int em = em_unit();
diff --git a/src/slic3r/GUI/SysInfoDialog.cpp b/src/slic3r/GUI/SysInfoDialog.cpp
index 14d4fb0b3..6c2e99709 100644
--- a/src/slic3r/GUI/SysInfoDialog.cpp
+++ b/src/slic3r/GUI/SysInfoDialog.cpp
@@ -87,9 +87,9 @@ std::string get_mem_info(bool format_as_html)
SysInfoDialog::SysInfoDialog()
#if ENABLE_GCODE_VIEWER
- : DPIDialog(NULL, wxID_ANY, (wxGetApp().is_editor() ? wxString(SLIC3R_APP_NAME) : wxString(GCODEVIEWER_APP_NAME)) + " - " + _L("System Information"), wxDefaultPosition, wxDefaultSize, wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER)
+ : DPIDialog((wxWindow*)wxGetApp().mainframe, wxID_ANY, (wxGetApp().is_editor() ? wxString(SLIC3R_APP_NAME) : wxString(GCODEVIEWER_APP_NAME)) + " - " + _L("System Information"), wxDefaultPosition, wxDefaultSize, wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER)
#else
- : DPIDialog(NULL, wxID_ANY, wxString(SLIC3R_APP_NAME) + " - " + _L("System Information"), wxDefaultPosition, wxDefaultSize, wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER)
+ : DPIDialog((wxWindow*)wxGetApp().mainframe, wxID_ANY, wxString(SLIC3R_APP_NAME) + " - " + _L("System Information"), wxDefaultPosition, wxDefaultSize, wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER)
#endif // ENABLE_GCODE_VIEWER
{
wxColour bgr_clr = wxSystemSettings::GetColour(wxSYS_COLOUR_WINDOW);
diff --git a/src/slic3r/GUI/Tab.cpp b/src/slic3r/GUI/Tab.cpp
index f4bd92728..12963804a 100644
--- a/src/slic3r/GUI/Tab.cpp
+++ b/src/slic3r/GUI/Tab.cpp
@@ -219,7 +219,7 @@ void Tab::create_preset_tab()
"or click this button.")));
add_scaled_button(panel, &m_search_btn, "search");
- m_search_btn->SetToolTip(format_wxstr(_L("Click to start a search or use %1% shortcut"), "Ctrl+F"));
+ m_search_btn->SetToolTip(format_wxstr(_L("Search in settings [%1%]"), "Ctrl+F"));
// Bitmaps to be shown on the "Revert to system" aka "Lock to system" button next to each input field.
add_scaled_bitmap(this, m_bmp_value_lock , "lock_closed");
@@ -2039,7 +2039,7 @@ void TabPrinter::build_print_host_upload_group(Page* page)
wxString description_line_text = _L(""
"Note: All parameters from this group are moved to the Physical Printer settings (see changelog).\n\n"
"A new Physical Printer profile is created by clicking on the \"cog\" icon right of the Printer profiles combo box, "
- "by selecting the \"add or remove printers\" item in the Printer combo box. The Physical Printer profile editor opens "
+ "by selecting the \"Add physical printer\" item in the Printer combo box. The Physical Printer profile editor opens "
"also when clicking on the \"cog\" icon in the Printer settings tab. The Physical Printer profiles are being stored "
"into PrusaSlicer/physical_printer directory.");
@@ -3338,7 +3338,7 @@ void Tab::save_preset(std::string name /*= ""*/, bool detach)
//! m_treectrl->OnSetFocus();
if (name.empty()) {
- SavePresetDialog dlg(m_type, detach ? _u8L("Detached") : "");
+ SavePresetDialog dlg(m_parent, m_type, detach ? _u8L("Detached") : "");
if (dlg.ShowModal() != wxID_OK)
return;
name = dlg.get_name();
@@ -3427,7 +3427,7 @@ void Tab::delete_preset()
std::vector ph_printers_only = physical_printers.get_printers_with_only_preset(current_preset.name);
if (!ph_printers.empty()) {
- msg += _L("Next physical printer(s) has/have selected preset") + ":";
+ msg += _L("The physical printer(s) below is based on the preset, you are going to delete.");
for (const std::string& printer : ph_printers)
msg += "\n \"" + from_u8(printer) + "\",";
msg.RemoveLast();
@@ -3435,7 +3435,7 @@ void Tab::delete_preset()
}
if (!ph_printers_only.empty()) {
- msg += _L("Next physical printer(s) has/have one and only selected preset") + ":";
+ msg += _L("The physical printer(s) below is based only on the preset, you are going to delete.");
for (const std::string& printer : ph_printers_only)
msg += "\n \"" + from_u8(printer) + "\",";
msg.RemoveLast();
diff --git a/src/slic3r/GUI/UnsavedChangesDialog.cpp b/src/slic3r/GUI/UnsavedChangesDialog.cpp
index 02c61b416..31af69ff3 100644
--- a/src/slic3r/GUI/UnsavedChangesDialog.cpp
+++ b/src/slic3r/GUI/UnsavedChangesDialog.cpp
@@ -522,7 +522,7 @@ void UnsavedChangesModel::Rescale()
//------------------------------------------
UnsavedChangesDialog::UnsavedChangesDialog(const wxString& header)
- : DPIDialog(nullptr, wxID_ANY, _L("Closing PrusaSlicer: Unsaved Changes"), wxDefaultPosition, wxDefaultSize, wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER)
+ : DPIDialog((wxWindow*)wxGetApp().mainframe , wxID_ANY, _L("PrusaSlicer is closing: Unsaved Changes"), wxDefaultPosition, wxDefaultSize, wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER)
{
m_app_config_key = "default_action_on_close_application";
@@ -539,7 +539,7 @@ UnsavedChangesDialog::UnsavedChangesDialog(const wxString& header)
}
UnsavedChangesDialog::UnsavedChangesDialog(Preset::Type type, PresetCollection* dependent_presets, const std::string& new_selected_preset)
- : DPIDialog(nullptr, wxID_ANY, _L("Switching Presets: Unsaved Changes"), wxDefaultPosition, wxDefaultSize, wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER)
+ : DPIDialog((wxWindow*)wxGetApp().mainframe, wxID_ANY, _L("Switching Presets: Unsaved Changes"), wxDefaultPosition, wxDefaultSize, wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER)
{
m_app_config_key = "default_action_on_select_preset";
@@ -737,7 +737,7 @@ void UnsavedChangesDialog::show_info_line(Action action, std::string preset_name
text = _L("All modified options will be reverted.");
else {
if (preset_name.empty())
- text = action == Action::Save ? _L("Save the selected options.") : _L("Transfer the selected options to the newly selected presets.");
+ text = action == Action::Save ? _L("Save the selected options.") : _L("Transfer the selected settings to the newly selected preset.");
else
text = format_wxstr(
action == Action::Save ?
@@ -781,7 +781,7 @@ bool UnsavedChangesDialog::save(PresetCollection* dependent_presets)
// for system/default/external presets we should take an edited name
if (preset.is_system || preset.is_default || preset.is_external) {
- SavePresetDialog save_dlg(preset.type);
+ SavePresetDialog save_dlg(this, preset.type);
if (save_dlg.ShowModal() != wxID_OK) {
m_exit_action = Action::Discard;
return false;
@@ -809,7 +809,7 @@ bool UnsavedChangesDialog::save(PresetCollection* dependent_presets)
if (!types_for_save.empty()) {
- SavePresetDialog save_dlg(types_for_save);
+ SavePresetDialog save_dlg(this, types_for_save);
if (save_dlg.ShowModal() != wxID_OK) {
m_exit_action = Action::Discard;
return false;
diff --git a/src/slic3r/Utils/Repetier.cpp b/src/slic3r/Utils/Repetier.cpp
index ddf0a06e0..115ea010e 100644
--- a/src/slic3r/Utils/Repetier.cpp
+++ b/src/slic3r/Utils/Repetier.cpp
@@ -203,7 +203,7 @@ bool Repetier::get_groups(wxArrayString& groups) const
groups.push_back(_utf8(L("Default")));
} else {
// Is it safe to assume that the data are utf-8 encoded?
- groups.push_back(wxString::FromUTF8(v.second.data()));
+ groups.push_back(GUI::from_u8(v.second.data()));
}
}
}
diff --git a/version.inc b/version.inc
index 126e3ba3e..36c15a52d 100644
--- a/version.inc
+++ b/version.inc
@@ -3,7 +3,7 @@
set(SLIC3R_APP_NAME "PrusaSlicer")
set(SLIC3R_APP_KEY "PrusaSlicer")
-set(SLIC3R_VERSION "2.3.0-alpha2")
+set(SLIC3R_VERSION "2.3.0-alpha3")
set(SLIC3R_BUILD_ID "PrusaSlicer-${SLIC3R_VERSION}+UNKNOWN")
set(SLIC3R_RC_VERSION "2,3,0,0")
set(SLIC3R_RC_VERSION_DOTS "2.3.0.0")