diff --git a/.github/ISSUE_TEMPLATE.md b/.github/ISSUE_TEMPLATE.md
index 6934354a70..610991591e 100644
--- a/.github/ISSUE_TEMPLATE.md
+++ b/.github/ISSUE_TEMPLATE.md
@@ -1,5 +1,5 @@
---
-name: Bug report
+name: Old Bug report
about: Create a report to help us fix issues.
title: ''
labels: 'Type: Bug'
diff --git a/.github/ISSUE_TEMPLATE/bug-report.md b/.github/ISSUE_TEMPLATE/bug-report.md
deleted file mode 100644
index b3fc10a5c1..0000000000
--- a/.github/ISSUE_TEMPLATE/bug-report.md
+++ /dev/null
@@ -1,49 +0,0 @@
----
-name: Bug report
-about: Create a report to help us fix issues.
-title: ''
-labels: 'Type: Bug'
-assignees: ''
-
----
-
-
-
-**Application version**
-(The version of the application this issue occurs with.)
-
-**Platform**
-(Information about the operating system the issue occurs on. Include at least the operating system and maybe GPU.)
-
-**Printer**
-(Which printer was selected in Cura?)
-
-**Reproduction steps**
-1. (Something you did.)
-2. (Something you did next.)
-
-**Screenshot(s)**
-(Image showing the problem, perhaps before/after images.)
-
-**Actual results**
-(What happens after the above steps have been followed.)
-
-**Expected results**
-(What should happen after the above steps have been followed.)
-
-**Project file**
-(For slicing bugs, provide a project which clearly shows the bug, by going to File->Save Project. For big files you may need to use WeTransfer or similar file sharing sites. G-code files are not project files!)
-
-**Log file**
-(See https://github.com/Ultimaker/Cura#logging-issues to find the log file to upload, or copy a relevant snippet from it.)
-
-**Additional information**
-(Extra information relevant to the issue.)
diff --git a/.github/ISSUE_TEMPLATE/bugreport.yaml b/.github/ISSUE_TEMPLATE/bugreport.yaml
new file mode 100644
index 0000000000..87c82c982a
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/bugreport.yaml
@@ -0,0 +1,82 @@
+name: Bug Report
+description: Create a report to help us fix issues.
+labels: "Type: Bug"
+body:
+- type: markdown
+ attributes:
+ value: |
+ **Thank you for using Cura and wanting to report a bug.**
+
+ Before filing, please check if the issue already exists (either open or closed) by using the search bar on the issues page. If it does, comment there. Even if it's closed, we can reopen it based on your comment.
+
+ Also, please note the application version in the title of the issue "For example (3.2.1) Cannot connect to 3rd-party printer". Please do not write things like **Request** or **BUG** in the title, this is what labels are for.
+- type: input
+ attributes:
+ label: Application Version
+ description: The version of Cura this issue occurs with.
+ placeholder: 4.9.0
+ validations:
+ required: true
+- type: input
+ attributes:
+ label: Platform
+ description: Information about the operating system the issue occurs on. Include at least the operating system and maybe GPU.
+ placeholder: Windows 10
+ validations:
+ required: true
+- type: input
+ attributes:
+ label: Printer
+ description: Which printer was selected in Cura?
+ placeholder: Ultimaker S5
+ validations:
+ required: true
+- type: textarea
+ attributes:
+ label: Reproduction steps
+ description: Tell us what you did!
+ placeholder: |
+ 1. Something you did
+ 2. Something you did next
+ validations:
+ required: true
+- type: textarea
+ attributes:
+ label: Actual results
+ description: What happens after the above steps have been followed.
+ validations:
+ required: true
+- type: textarea
+ attributes:
+ label: Expected results
+ description: What should happen after the above steps have been followed.
+ validations:
+ required: true
+- type: markdown
+ attributes:
+ value: |
+ Please be sure to add the following files:
+ * For slicing issues, upload a **project file** that clearly shows the bug.
+ To save a project file go to `File -> Save project`. Please make sure to .zip your project file. For big files you may need to use WeTransfer or similar file sharing sites.
+ G-code files are not project files!
+ * **Screenshots** of showing the problem, perhaps before/after images.
+ * A **log file** for crashes and similar issues.
+ You can find your log file here:
+ Windows: `%APPDATA%\cura\\cura.log` or usually `C:\Users\\\AppData\Roaming\cura\\cura.log`
+ MacOS: `$USER/Library/Application Support/cura//cura.log`
+ Ubuntu/Linus: `$USER/.local/share/cura//cura.log`
+
+ If the Cura user interface still starts, you can also reach this directory from the application menu in Help -> Show settings folder
+- type: checkboxes
+ attributes:
+ label: Checklist of files to include
+ options:
+ - label: Log file
+ - label: Project file
+- type: textarea
+ attributes:
+ label: Additional information & file uploads
+ description: You can add these files and additional information that is relevant to the issue in the comments below.
+ validations:
+ required: true
+
diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml
new file mode 100644
index 0000000000..213a5e0bec
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/config.yml
@@ -0,0 +1,5 @@
+blank_issues_enabled: false
+contact_links:
+ - name: Have questions or need support?
+ url: https://community.ultimaker.com/
+ about: Please get in touch on our Ultimaker Community Forum!
\ No newline at end of file
diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md
deleted file mode 100644
index a10d664a04..0000000000
--- a/.github/ISSUE_TEMPLATE/feature_request.md
+++ /dev/null
@@ -1,23 +0,0 @@
----
-name: Feature request
-about: Suggest an idea for this project
-title: ''
-labels: 'Type: New Feature'
-assignees: ''
-
----
-
-**Is your feature request related to a problem? Please describe.**
-(A clear and concise description of what the problem is. Ex. I'm always frustrated when [...])
-
-**Describe the solution you'd like**
-(A clear and concise description of what you want to happen. If possible, describe why you think this is a good solution.)
-
-**Describe alternatives you've considered**
-(A clear and concise description of any alternative solutions or features you've considered. Again, if possible, think about why these alternatives are not working out.)
-
-**Affected users and/or printers**
-(Who do you think will benefit from this? Is everyone going to benefit from these changes? Or specific kinds of users?)
-
-**Additional context**
-(Add any other context or screenshots about the feature request here.)
diff --git a/.github/ISSUE_TEMPLATE/featurerequest.yaml b/.github/ISSUE_TEMPLATE/featurerequest.yaml
new file mode 100644
index 0000000000..83c448fe44
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/featurerequest.yaml
@@ -0,0 +1,44 @@
+name: Feature Request
+description: Suggest an idea for this project.
+labels: "Type: New Feature"
+body:
+- type: markdown
+ attributes:
+ value: |
+ **Thank you for using Cura and wanting to suggest a new feature.**
+
+ Before filing, please check if the feature request already exists (either open or closed) by using the search bar on the issues page. If it does, comment there. Even if it's closed, we can reopen it based on your comment.
+
+ Please do not write things like **Request** or **BUG** in the title, this is what labels are for.
+- type: textarea
+ attributes:
+ label: Is your feature request related to a problem?
+ description: Please describe a clear and concise description of what the problem is.
+ placeholder: I'm always frustrated when...
+ validations:
+ required: true
+- type: textarea
+ attributes:
+ label: Describe the solution you'd like
+ description: A clear and concise description of what you want to happen. If possible, describe why you think this is a good solution.
+ placeholder: I believe this will solve...
+ validations:
+ required: true
+- type: textarea
+ attributes:
+ label: Describe alternatives you've considered
+ description: A clear and concise description of any alternative solutions or features you've considered. If possible, think about why these alternatives are not working out.
+ placeholder: The alternatives I've considered are...
+ validations:
+ required: true
+- type: textarea
+ attributes:
+ label: Affected users and/or printers
+ description: Who do you think will benefit from this? Is everyone going to benefit from these changes? Or specific kinds of users?
+ placeholder: It will affect...
+ validations:
+ required: true
+- type: textarea
+ attributes:
+ label: Additional information & file uploads
+ description: You can add pictures or files to visualize your feature request in the comments below.
\ No newline at end of file
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 3993d76754..9bdd48c317 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -28,7 +28,7 @@ set(CURA_CLOUD_ACCOUNT_API_ROOT "" CACHE STRING "Alternative Cura cloud account
set(CURA_MARKETPLACE_ROOT "" CACHE STRING "Alternative Marketplace location")
set(CURA_DIGITAL_FACTORY_URL "" CACHE STRING "Alternative Digital Factory location")
-configure_file(${CMAKE_SOURCE_DIR}/cura.desktop.in ${CMAKE_BINARY_DIR}/cura.desktop @ONLY)
+configure_file(${CMAKE_SOURCE_DIR}/com.ultimaker.cura.desktop.in ${CMAKE_BINARY_DIR}/com.ultimaker.cura.desktop @ONLY)
configure_file(cura/CuraVersion.py.in CuraVersion.py @ONLY)
@@ -82,11 +82,11 @@ if(NOT APPLE AND NOT WIN32)
install(FILES ${CMAKE_BINARY_DIR}/CuraVersion.py
DESTINATION lib${LIB_SUFFIX}/python${Python3_VERSION_MAJOR}.${Python3_VERSION_MINOR}/site-packages/cura)
endif()
- install(FILES ${CMAKE_BINARY_DIR}/cura.desktop
+ install(FILES ${CMAKE_BINARY_DIR}/com.ultimaker.cura.desktop
DESTINATION ${CMAKE_INSTALL_DATADIR}/applications)
install(FILES ${CMAKE_SOURCE_DIR}/resources/images/cura-icon.png
DESTINATION ${CMAKE_INSTALL_DATADIR}/icons/hicolor/128x128/apps/)
- install(FILES cura.appdata.xml
+ install(FILES com.ultimaker.cura.appdata.xml
DESTINATION ${CMAKE_INSTALL_DATADIR}/metainfo)
install(FILES cura.sharedmimeinfo
DESTINATION ${CMAKE_INSTALL_DATADIR}/mime/packages/
diff --git a/README.md b/README.md
index 1ba2b3c277..345a55d12f 100644
--- a/README.md
+++ b/README.md
@@ -10,13 +10,13 @@ For crashes and similar issues, please attach the following information:
* (On Windows) The log as produced by dxdiag (start -> run -> dxdiag -> save output)
* The Cura GUI log file, located at
- * `%APPDATA%\cura\\cura.log` (Windows), or usually `C:\Users\\\AppData\Roaming\cura\\cura.log`
- * `$USER/Library/Application Support/cura//cura.log` (OSX)
- * `$USER/.local/share/cura//cura.log` (Ubuntu/Linux)
+ * `%APPDATA%\cura\\cura.log` (Windows), or usually `C:\Users\\AppData\Roaming\cura\\cura.log`
+ * `$HOME/Library/Application Support/cura//cura.log` (OSX)
+ * `$HOME/.local/share/cura//cura.log` (Ubuntu/Linux)
If the Cura user interface still starts, you can also reach this directory from the application menu in Help -> Show settings folder
-For additional support, you could also ask in the #cura channel on FreeNode IRC. For help with development, there is also the #cura-dev channel.
+For additional support, you could also ask in the [#cura channel](https://web.libera.chat/#cura) on [libera.chat](https://libera.chat/). For help with development, there is also the [#cura-dev channel](https://web.libera.chat/#cura-dev).
Dependencies
------------
@@ -26,9 +26,15 @@ Dependencies
* [PySerial](https://github.com/pyserial/pyserial) Only required for USB printing support.
* [python-zeroconf](https://github.com/jstasiak/python-zeroconf) Only required to detect mDNS-enabled printers.
+For a list of required Python packages, with their recommended version, see `requirements.txt`.
+
+This list is not exhaustive at the moment, please check the links in the next section for more details.
+
Build scripts
-------------
-Please checkout [cura-build](https://github.com/Ultimaker/cura-build) for detailed building instructions.
+Please check out [cura-build](https://github.com/Ultimaker/cura-build) for detailed building instructions.
+
+If you want to build the entire environment from scratch before building Cura as well, [cura-build-environment](https://github.com/Ultimaker/cura-build) might be a starting point before cura-build. (Again, see cura-build for more details.)
Running from Source
-------------
diff --git a/cura.appdata.xml b/com.ultimaker.cura.appdata.xml
similarity index 88%
rename from cura.appdata.xml
rename to com.ultimaker.cura.appdata.xml
index 6274532ac9..781631e84a 100644
--- a/cura.appdata.xml
+++ b/com.ultimaker.cura.appdata.xml
@@ -1,7 +1,7 @@
- cura.desktop
+ com.ultimaker.cura.desktopCC0-1.0LGPL-3.0 and CC-BY-SA-4.0Cura
@@ -24,7 +24,9 @@
- http://software.ultimaker.com/Cura.png
+
+ https://raw.githubusercontent.com/Ultimaker/Cura/master/screenshot.png
+ https://ultimaker.com/en/products/cura-software?utm_source=cura&utm_medium=software&utm_campaign=resourcesCura
diff --git a/cura.desktop.in b/com.ultimaker.cura.desktop.in
similarity index 100%
rename from cura.desktop.in
rename to com.ultimaker.cura.desktop.in
diff --git a/cura/API/Account.py b/cura/API/Account.py
index 15bccb71e1..884c2885e4 100644
--- a/cura/API/Account.py
+++ b/cura/API/Account.py
@@ -40,7 +40,7 @@ class Account(QObject):
"""
# The interval in which sync services are automatically triggered
- SYNC_INTERVAL = 30.0 # seconds
+ SYNC_INTERVAL = 60.0 # seconds
Q_ENUMS(SyncState)
loginStateChanged = pyqtSignal(bool)
@@ -58,6 +58,11 @@ class Account(QObject):
manualSyncEnabledChanged = pyqtSignal(bool)
updatePackagesEnabledChanged = pyqtSignal(bool)
+ CLIENT_SCOPES = "account.user.read drive.backup.read drive.backup.write packages.download " \
+ "packages.rating.read packages.rating.write connect.cluster.read connect.cluster.write " \
+ "library.project.read library.project.write cura.printjob.read cura.printjob.write " \
+ "cura.mesh.read cura.mesh.write"
+
def __init__(self, application: "CuraApplication", parent = None) -> None:
super().__init__(parent)
self._application = application
@@ -79,9 +84,7 @@ class Account(QObject):
CALLBACK_PORT=self._callback_port,
CALLBACK_URL="http://localhost:{}/callback".format(self._callback_port),
CLIENT_ID="um----------------------------ultimaker_cura",
- CLIENT_SCOPES="account.user.read drive.backup.read drive.backup.write packages.download "
- "packages.rating.read packages.rating.write connect.cluster.read connect.cluster.write "
- "cura.printjob.read cura.printjob.write cura.mesh.read cura.mesh.write",
+ CLIENT_SCOPES=self.CLIENT_SCOPES,
AUTH_DATA_PREFERENCE_KEY="general/ultimaker_auth_data",
AUTH_SUCCESS_REDIRECT="{}/app/auth-success".format(self._oauth_root),
AUTH_FAILED_REDIRECT="{}/app/auth-error".format(self._oauth_root)
@@ -106,7 +109,6 @@ class Account(QObject):
self._authorization_service.accessTokenChanged.connect(self._onAccessTokenChanged)
self._authorization_service.loadAuthDataFromPreferences()
-
@pyqtProperty(int, notify=syncStateChanged)
def syncState(self):
return self._sync_state
@@ -175,6 +177,7 @@ class Account(QObject):
if error_message:
if self._error_message:
self._error_message.hide()
+ Logger.log("w", "Failed to login: %s", error_message)
self._error_message = Message(error_message, title = i18n_catalog.i18nc("@info:title", "Login failed"))
self._error_message.show()
self._logged_in = False
@@ -206,7 +209,7 @@ class Account(QObject):
if self._update_timer.isActive():
self._update_timer.stop()
elif self._sync_state == SyncState.SYNCING:
- Logger.warning("Starting a new sync while previous sync was not completed\n{}", str(self._sync_services))
+ Logger.debug("Starting a new sync while previous sync was not completed")
self.syncRequested.emit()
diff --git a/cura/ApplicationMetadata.py b/cura/ApplicationMetadata.py
index 2e15d60a93..a23bc9332e 100644
--- a/cura/ApplicationMetadata.py
+++ b/cura/ApplicationMetadata.py
@@ -13,7 +13,7 @@ DEFAULT_CURA_DEBUG_MODE = False
# Each release has a fixed SDK version coupled with it. It doesn't make sense to make it configurable because, for
# example Cura 3.2 with SDK version 6.1 will not work. So the SDK version is hard-coded here and left out of the
# CuraVersion.py.in template.
-CuraSDKVersion = "7.4.0"
+CuraSDKVersion = "7.6.0"
try:
from cura.CuraVersion import CuraAppName # type: ignore
diff --git a/cura/Arranging/ArrangeObjectsJob.py b/cura/Arranging/ArrangeObjectsJob.py
index 46b1aa2d71..e65a442acb 100644
--- a/cura/Arranging/ArrangeObjectsJob.py
+++ b/cura/Arranging/ArrangeObjectsJob.py
@@ -39,6 +39,7 @@ class ArrangeObjectsJob(Job):
no_full_solution_message = Message(
i18n_catalog.i18nc("@info:status",
"Unable to find a location within the build volume for all objects"),
- title = i18n_catalog.i18nc("@info:title", "Can't Find Location"))
+ title = i18n_catalog.i18nc("@info:title", "Can't Find Location"),
+ message_type = Message.MessageType.ERROR)
no_full_solution_message.show()
self.finished.emit(self)
diff --git a/cura/Arranging/Nest2DArrange.py b/cura/Arranging/Nest2DArrange.py
index cdf590232c..fdac63cd9d 100644
--- a/cura/Arranging/Nest2DArrange.py
+++ b/cura/Arranging/Nest2DArrange.py
@@ -36,6 +36,7 @@ def findNodePlacement(nodes_to_arrange: List["SceneNode"], build_volume: "BuildV
found_solution_for_all: Whether the algorithm found a place on the buildplate for all the objects
node_items: A list of the nodes return by libnest2d, which contain the new positions on the buildplate
"""
+ spacing = int(1.5 * factor) # 1.5mm spacing.
machine_width = build_volume.getWidth()
machine_depth = build_volume.getDepth()
@@ -75,7 +76,7 @@ def findNodePlacement(nodes_to_arrange: List["SceneNode"], build_volume: "BuildV
# Clip the disallowed areas so that they don't overlap the bounding box (The arranger chokes otherwise)
clipped_area = area.intersectionConvexHulls(build_plate_polygon)
- if clipped_area.getPoints() is not None: # numpy array has to be explicitly checked against None
+ if clipped_area.getPoints() is not None and len(clipped_area.getPoints()) > 2: # numpy array has to be explicitly checked against None
for point in clipped_area.getPoints():
converted_points.append(Point(int(point[0] * factor), int(point[1] * factor)))
@@ -88,7 +89,7 @@ def findNodePlacement(nodes_to_arrange: List["SceneNode"], build_volume: "BuildV
converted_points = []
hull_polygon = node.callDecoration("getConvexHull")
- if hull_polygon is not None and hull_polygon.getPoints() is not None: # numpy array has to be explicitly checked against None
+ if hull_polygon is not None and hull_polygon.getPoints() is not None and len(hull_polygon.getPoints()) > 2: # numpy array has to be explicitly checked against None
for point in hull_polygon.getPoints():
converted_points.append(Point(point[0] * factor, point[1] * factor))
item = Item(converted_points)
@@ -99,7 +100,7 @@ def findNodePlacement(nodes_to_arrange: List["SceneNode"], build_volume: "BuildV
config = NfpConfig()
config.accuracy = 1.0
- num_bins = nest(node_items, build_plate_bounding_box, 10000, config)
+ num_bins = nest(node_items, build_plate_bounding_box, spacing, config)
# Strip the fixed items (previously placed) and the disallowed areas from the results again.
node_items = list(filter(lambda item: not item.isFixed(), node_items))
diff --git a/cura/Arranging/ShapeArray.py b/cura/Arranging/ShapeArray.py
index 840f9731c2..5607c03663 100644
--- a/cura/Arranging/ShapeArray.py
+++ b/cura/Arranging/ShapeArray.py
@@ -3,7 +3,7 @@
import numpy
import copy
-from typing import Optional, Tuple, TYPE_CHECKING
+from typing import Optional, Tuple, TYPE_CHECKING, Union
from UM.Math.Polygon import Polygon
@@ -14,14 +14,14 @@ if TYPE_CHECKING:
class ShapeArray:
"""Polygon representation as an array for use with :py:class:`cura.Arranging.Arrange.Arrange`"""
- def __init__(self, arr: numpy.array, offset_x: float, offset_y: float, scale: float = 1) -> None:
+ def __init__(self, arr: numpy.ndarray, offset_x: float, offset_y: float, scale: float = 1) -> None:
self.arr = arr
self.offset_x = offset_x
self.offset_y = offset_y
self.scale = scale
@classmethod
- def fromPolygon(cls, vertices: numpy.array, scale: float = 1) -> "ShapeArray":
+ def fromPolygon(cls, vertices: numpy.ndarray, scale: float = 1) -> "ShapeArray":
"""Instantiate from a bunch of vertices
:param vertices:
@@ -98,7 +98,7 @@ class ShapeArray:
return offset_shape_arr, hull_shape_arr
@classmethod
- def arrayFromPolygon(cls, shape: Tuple[int, int], vertices: numpy.array) -> numpy.array:
+ def arrayFromPolygon(cls, shape: Union[Tuple[int, int], numpy.ndarray], vertices: numpy.ndarray) -> numpy.ndarray:
"""Create :py:class:`numpy.ndarray` with dimensions defined by shape
Fills polygon defined by vertices with ones, all other values zero
@@ -110,7 +110,7 @@ class ShapeArray:
:return: numpy array with dimensions defined by shape
"""
- base_array = numpy.zeros(shape, dtype = numpy.int32) # Initialize your array of zeros
+ base_array = numpy.zeros(shape, dtype = numpy.int32) # type: ignore # Initialize your array of zeros
fill = numpy.ones(base_array.shape) * True # Initialize boolean array defining shape fill
@@ -126,7 +126,7 @@ class ShapeArray:
return base_array
@classmethod
- def _check(cls, p1: numpy.array, p2: numpy.array, base_array: numpy.array) -> Optional[numpy.array]:
+ def _check(cls, p1: numpy.ndarray, p2: numpy.ndarray, base_array: numpy.ndarray) -> Optional[numpy.ndarray]:
"""Return indices that mark one side of the line, used by arrayFromPolygon
Uses the line defined by p1 and p2 to check array of
diff --git a/cura/AutoSave.py b/cura/AutoSave.py
index d80e34771e..3205f48af1 100644
--- a/cura/AutoSave.py
+++ b/cura/AutoSave.py
@@ -1,4 +1,4 @@
-# Copyright (c) 2019 Ultimaker B.V.
+# Copyright (c) 2021 Ultimaker B.V.
# Cura is released under the terms of the LGPLv3 or higher.
from PyQt5.QtCore import QTimer
@@ -6,6 +6,8 @@ from typing import Any, TYPE_CHECKING
from UM.Logger import Logger
+import time
+
if TYPE_CHECKING:
from cura.CuraApplication import CuraApplication
@@ -56,8 +58,8 @@ class AutoSave:
def _onTimeout(self) -> None:
self._saving = True # To prevent the save process from triggering another autosave.
- Logger.log("d", "Autosaving preferences, instances and profiles")
+ save_start_time = time.time()
self._application.saveSettings()
-
+ Logger.log("d", "Autosaving preferences, instances and profiles took %s seconds", time.time() - save_start_time)
self._saving = False
diff --git a/cura/Backups/Backup.py b/cura/Backups/Backup.py
index 011eb97310..1f6a961733 100644
--- a/cura/Backups/Backup.py
+++ b/cura/Backups/Backup.py
@@ -5,14 +5,16 @@ import io
import os
import re
import shutil
+from copy import deepcopy
from zipfile import ZipFile, ZIP_DEFLATED, BadZipfile
-from typing import Dict, Optional, TYPE_CHECKING
+from typing import Dict, Optional, TYPE_CHECKING, List
from UM import i18nCatalog
from UM.Logger import Logger
from UM.Message import Message
from UM.Platform import Platform
from UM.Resources import Resources
+from UM.Version import Version
if TYPE_CHECKING:
from cura.CuraApplication import CuraApplication
@@ -27,6 +29,11 @@ class Backup:
IGNORED_FILES = [r"cura\.log", r"plugins\.json", r"cache", r"__pycache__", r"\.qmlc", r"\.pyc"]
"""These files should be ignored when making a backup."""
+ IGNORED_FOLDERS = [] # type: List[str]
+
+ SECRETS_SETTINGS = ["general/ultimaker_auth_data"]
+ """Secret preferences that need to obfuscated when making a backup of Cura"""
+
catalog = i18nCatalog("cura")
"""Re-use translation catalog"""
@@ -43,6 +50,9 @@ class Backup:
Logger.log("d", "Creating backup for Cura %s, using folder %s", cura_release, version_data_dir)
+ # obfuscate sensitive secrets
+ secrets = self._obfuscate()
+
# Ensure all current settings are saved.
self._application.saveSettings()
@@ -67,8 +77,9 @@ class Backup:
machine_count = max(len([s for s in files if "machine_instances/" in s]) - 1, 0) # If people delete their profiles but not their preferences, it can still make a backup, and report -1 profiles. Server crashes on this.
material_count = max(len([s for s in files if "materials/" in s]) - 1, 0)
profile_count = max(len([s for s in files if "quality_changes/" in s]) - 1, 0)
- plugin_count = len([s for s in files if "plugin.json" in s])
-
+ # We don't store plugins anymore, since if you can make backups, you have an account (and the plugins are
+ # on the marketplace anyway)
+ plugin_count = 0
# Store the archive and metadata so the BackupManager can fetch them when needed.
self.zip_file = buffer.getvalue()
self.meta_data = {
@@ -78,6 +89,8 @@ class Backup:
"profile_count": str(profile_count),
"plugin_count": str(plugin_count)
}
+ # Restore the obfuscated settings
+ self._illuminate(**secrets)
def _makeArchive(self, buffer: "io.BytesIO", root_path: str) -> Optional[ZipFile]:
"""Make a full archive from the given root path with the given name.
@@ -85,8 +98,7 @@ class Backup:
:param root_path: The root directory to archive recursively.
:return: The archive as bytes.
"""
-
- ignore_string = re.compile("|".join(self.IGNORED_FILES))
+ ignore_string = re.compile("|".join(self.IGNORED_FILES + self.IGNORED_FOLDERS))
try:
archive = ZipFile(buffer, "w", ZIP_DEFLATED)
for root, folders, files in os.walk(root_path):
@@ -123,8 +135,8 @@ class Backup:
"Tried to restore a Cura backup without having proper data or meta data."))
return False
- current_version = self._application.getVersion()
- version_to_restore = self.meta_data.get("cura_release", "master")
+ current_version = Version(self._application.getVersion())
+ version_to_restore = Version(self.meta_data.get("cura_release", "master"))
if current_version < version_to_restore:
# Cannot restore version newer than current because settings might have changed.
@@ -134,8 +146,16 @@ class Backup:
"Tried to restore a Cura backup that is higher than the current version."))
return False
+ # Get the current secrets and store since the back-up doesn't contain those
+ secrets = self._obfuscate()
+
version_data_dir = Resources.getDataStoragePath()
- archive = ZipFile(io.BytesIO(self.zip_file), "r")
+ try:
+ archive = ZipFile(io.BytesIO(self.zip_file), "r")
+ except LookupError as e:
+ Logger.log("d", f"The following error occurred while trying to restore a Cura backup: {str(e)}")
+ self._showMessage(self.catalog.i18nc("@info:backup_failed", "The following error occurred while trying to restore a Cura backup:") + str(e))
+ return False
extracted = self._extractArchive(archive, version_data_dir)
# Under Linux, preferences are stored elsewhere, so we copy the file to there.
@@ -146,6 +166,12 @@ class Backup:
Logger.log("d", "Moving preferences file from %s to %s", backup_preferences_file, preferences_file)
shutil.move(backup_preferences_file, preferences_file)
+ # Read the preferences from the newly restored configuration (or else the cached Preferences will override the restored ones)
+ self._application.readPreferencesFromConfiguration()
+
+ # Restore the obfuscated settings
+ self._illuminate(**secrets)
+
return extracted
@staticmethod
@@ -167,9 +193,36 @@ class Backup:
Logger.log("d", "Removing current data in location: %s", target_path)
Resources.factoryReset()
Logger.log("d", "Extracting backup to location: %s", target_path)
- try:
- archive.extractall(target_path)
- except (PermissionError, EnvironmentError):
- Logger.logException("e", "Unable to extract the backup due to permission or file system errors.")
- return False
+ name_list = archive.namelist()
+ for archive_filename in name_list:
+ try:
+ archive.extract(archive_filename, target_path)
+ except (PermissionError, EnvironmentError):
+ Logger.logException("e", f"Unable to extract the file {archive_filename} from the backup due to permission or file system errors.")
+ CuraApplication.getInstance().processEvents()
return True
+
+ def _obfuscate(self) -> Dict[str, str]:
+ """
+ Obfuscate and remove the secret preferences that are specified in SECRETS_SETTINGS
+
+ :return: a dictionary of the removed secrets. Note: the '/' is replaced by '__'
+ """
+ preferences = self._application.getPreferences()
+ secrets = {}
+ for secret in self.SECRETS_SETTINGS:
+ secrets[secret.replace("/", "__")] = deepcopy(preferences.getValue(secret))
+ preferences.setValue(secret, None)
+ self._application.savePreferences()
+ return secrets
+
+ def _illuminate(self, **kwargs) -> None:
+ """
+ Restore the obfuscated settings
+
+ :param kwargs: a dict of obscured preferences. Note: the '__' of the keys will be replaced by '/'
+ """
+ preferences = self._application.getPreferences()
+ for key, value in kwargs.items():
+ preferences.setValue(key.replace("__", "/"), value)
+ self._application.savePreferences()
diff --git a/cura/Backups/BackupsManager.py b/cura/Backups/BackupsManager.py
index fb758455c1..6c4670edb6 100644
--- a/cura/Backups/BackupsManager.py
+++ b/cura/Backups/BackupsManager.py
@@ -4,6 +4,7 @@
from typing import Dict, Optional, Tuple, TYPE_CHECKING
from UM.Logger import Logger
+from UM.Version import Version
from cura.Backups.Backup import Backup
if TYPE_CHECKING:
@@ -52,6 +53,7 @@ class BackupsManager:
backup = Backup(self._application, zip_file = zip_file, meta_data = meta_data)
restored = backup.restore()
+
if restored:
# At this point, Cura will need to restart for the changes to take effect.
# We don't want to store the data at this point as that would override the just-restored backup.
diff --git a/cura/BuildVolume.py b/cura/BuildVolume.py
index 7c843fcdea..cf397e395e 100755
--- a/cura/BuildVolume.py
+++ b/cura/BuildVolume.py
@@ -1,4 +1,4 @@
-# Copyright (c) 2020 Ultimaker B.V.
+# Copyright (c) 2021 Ultimaker B.V.
# Cura is released under the terms of the LGPLv3 or higher.
import numpy
@@ -95,9 +95,11 @@ class BuildVolume(SceneNode):
self._edge_disallowed_size = None
self._build_volume_message = Message(catalog.i18nc("@info:status",
- "The build volume height has been reduced due to the value of the"
- " \"Print Sequence\" setting to prevent the gantry from colliding"
- " with printed models."), title = catalog.i18nc("@info:title", "Build Volume"))
+ "The build volume height has been reduced due to the value of the"
+ " \"Print Sequence\" setting to prevent the gantry from colliding"
+ " with printed models."),
+ title = catalog.i18nc("@info:title", "Build Volume"),
+ message_type = Message.MessageType.WARNING)
self._global_container_stack = None # type: Optional[GlobalStack]
@@ -281,7 +283,7 @@ class BuildVolume(SceneNode):
continue
# If the entire node is below the build plate, still mark it as outside.
node_bounding_box = node.getBoundingBox()
- if node_bounding_box and node_bounding_box.top < 0:
+ if node_bounding_box and node_bounding_box.top < 0 and not node.getParent().callDecoration("isGroup"):
node.setOutsideBuildArea(True)
continue
# Mark the node as outside build volume if the set extruder is disabled
@@ -344,7 +346,12 @@ class BuildVolume(SceneNode):
# Mark the node as outside build volume if the set extruder is disabled
extruder_position = node.callDecoration("getActiveExtruderPosition")
- if not self._global_container_stack.extruderList[int(extruder_position)].isEnabled:
+ try:
+ if not self._global_container_stack.extruderList[int(extruder_position)].isEnabled:
+ node.setOutsideBuildArea(True)
+ return
+ except IndexError:
+ # If the extruder doesn't exist, also mark it as unprintable.
node.setOutsideBuildArea(True)
return
@@ -911,6 +918,8 @@ class BuildVolume(SceneNode):
return {}
for area in self._global_container_stack.getProperty("machine_disallowed_areas", "value"):
+ if len(area) == 0:
+ continue # Numpy doesn't deal well with 0-length arrays, since it can't determine the dimensionality of them.
polygon = Polygon(numpy.array(area, numpy.float32))
polygon = polygon.getMinkowskiHull(Polygon.approximatedCircle(border_size))
machine_disallowed_polygons.append(polygon)
@@ -1063,7 +1072,14 @@ class BuildVolume(SceneNode):
adhesion_type = adhesion_override
if adhesion_type is None:
adhesion_type = container_stack.getProperty("adhesion_type", "value")
- skirt_brim_line_width = self._global_container_stack.getProperty("skirt_brim_line_width", "value")
+
+ # Skirt_brim_line_width is a bit of an odd one out. The primary bit of the skirt/brim is printed
+ # with the adhesion extruder, but it also prints one extra line by all other extruders. As such, the
+ # setting does *not* have a limit_to_extruder setting (which means that we can't ask the global extruder what
+ # the value is.
+ adhesion_extruder = self._global_container_stack.getProperty("adhesion_extruder_nr", "value")
+ skirt_brim_line_width = self._global_container_stack.extruderList[int(adhesion_extruder)].getProperty("skirt_brim_line_width", "value")
+
initial_layer_line_width_factor = self._global_container_stack.getProperty("initial_layer_line_width_factor", "value")
# Use brim width if brim is enabled OR the prime tower has a brim.
if adhesion_type == "brim":
diff --git a/cura/CuraActions.py b/cura/CuraActions.py
index d6e5add912..4d121338d8 100644
--- a/cura/CuraActions.py
+++ b/cura/CuraActions.py
@@ -67,11 +67,15 @@ class CuraActions(QObject):
current_node = parent_node
parent_node = current_node.getParent()
- # This was formerly done with SetTransformOperation but because of
- # unpredictable matrix deconstruction it was possible that mirrors
- # could manifest as rotations. Centering is therefore done by
- # moving the node to negative whatever its position is:
- center_operation = TranslateOperation(current_node, -current_node._position)
+ # Find out where the bottom of the object is
+ bbox = current_node.getBoundingBox()
+ if bbox:
+ center_y = current_node.getWorldPosition().y - bbox.bottom
+ else:
+ center_y = 0
+
+ # Move the object so that it's bottom is on to of the buildplate
+ center_operation = TranslateOperation(current_node, Vector(0, center_y, 0), set_position = True)
operation.addOperation(center_operation)
operation.push()
diff --git a/cura/CuraApplication.py b/cura/CuraApplication.py
index f0c69d5a61..c8570c33e6 100755
--- a/cura/CuraApplication.py
+++ b/cura/CuraApplication.py
@@ -1,8 +1,9 @@
-# Copyright (c) 2020 Ultimaker B.V.
+# Copyright (c) 2021 Ultimaker B.V.
# Cura is released under the terms of the LGPLv3 or higher.
import os
import sys
+import tempfile
import time
from typing import cast, TYPE_CHECKING, Optional, Callable, List, Any, Dict
@@ -30,6 +31,7 @@ from UM.Operations.SetTransformOperation import SetTransformOperation
from UM.Platform import Platform
from UM.PluginError import PluginNotFoundError
from UM.Preferences import Preferences
+from UM.Qt.Bindings.FileProviderModel import FileProviderModel
from UM.Qt.QtApplication import QtApplication # The class we're inheriting from.
from UM.Resources import Resources
from UM.Scene.Camera import Camera
@@ -127,7 +129,7 @@ class CuraApplication(QtApplication):
# SettingVersion represents the set of settings available in the machine/extruder definitions.
# You need to make sure that this version number needs to be increased if there is any non-backwards-compatible
# changes of the settings.
- SettingVersion = 16
+ SettingVersion = 17
Created = False
@@ -255,6 +257,9 @@ class CuraApplication(QtApplication):
from cura.CuraPackageManager import CuraPackageManager
self._package_manager_class = CuraPackageManager
+ from UM.CentralFileStorage import CentralFileStorage
+ CentralFileStorage.setIsEnterprise(ApplicationMetadata.IsEnterpriseVersion)
+
@pyqtProperty(str, constant=True)
def ultimakerCloudApiRootUrl(self) -> str:
return UltimakerCloudConstants.CuraCloudAPIRoot
@@ -456,15 +461,16 @@ class CuraApplication(QtApplication):
self._version_upgrade_manager.setCurrentVersions(
{
- ("quality", InstanceContainer.Version * 1000000 + self.SettingVersion): (self.ResourceTypes.QualityInstanceContainer, "application/x-uranium-instancecontainer"),
- ("quality_changes", InstanceContainer.Version * 1000000 + self.SettingVersion): (self.ResourceTypes.QualityChangesInstanceContainer, "application/x-uranium-instancecontainer"),
- ("intent", InstanceContainer.Version * 1000000 + self.SettingVersion): (self.ResourceTypes.IntentInstanceContainer, "application/x-uranium-instancecontainer"),
- ("machine_stack", GlobalStack.Version * 1000000 + self.SettingVersion): (self.ResourceTypes.MachineStack, "application/x-cura-globalstack"),
- ("extruder_train", ExtruderStack.Version * 1000000 + self.SettingVersion): (self.ResourceTypes.ExtruderStack, "application/x-cura-extruderstack"),
- ("preferences", Preferences.Version * 1000000 + self.SettingVersion): (Resources.Preferences, "application/x-uranium-preferences"),
- ("user", InstanceContainer.Version * 1000000 + self.SettingVersion): (self.ResourceTypes.UserInstanceContainer, "application/x-uranium-instancecontainer"),
- ("definition_changes", InstanceContainer.Version * 1000000 + self.SettingVersion): (self.ResourceTypes.DefinitionChangesContainer, "application/x-uranium-instancecontainer"),
- ("variant", InstanceContainer.Version * 1000000 + self.SettingVersion): (self.ResourceTypes.VariantInstanceContainer, "application/x-uranium-instancecontainer"),
+ ("quality", InstanceContainer.Version * 1000000 + self.SettingVersion): (self.ResourceTypes.QualityInstanceContainer, "application/x-uranium-instancecontainer"),
+ ("quality_changes", InstanceContainer.Version * 1000000 + self.SettingVersion): (self.ResourceTypes.QualityChangesInstanceContainer, "application/x-uranium-instancecontainer"),
+ ("intent", InstanceContainer.Version * 1000000 + self.SettingVersion): (self.ResourceTypes.IntentInstanceContainer, "application/x-uranium-instancecontainer"),
+ ("machine_stack", GlobalStack.Version * 1000000 + self.SettingVersion): (self.ResourceTypes.MachineStack, "application/x-cura-globalstack"),
+ ("extruder_train", ExtruderStack.Version * 1000000 + self.SettingVersion): (self.ResourceTypes.ExtruderStack, "application/x-cura-extruderstack"),
+ ("preferences", Preferences.Version * 1000000 + self.SettingVersion): (Resources.Preferences, "application/x-uranium-preferences"),
+ ("user", InstanceContainer.Version * 1000000 + self.SettingVersion): (self.ResourceTypes.UserInstanceContainer, "application/x-uranium-instancecontainer"),
+ ("definition_changes", InstanceContainer.Version * 1000000 + self.SettingVersion): (self.ResourceTypes.DefinitionChangesContainer, "application/x-uranium-instancecontainer"),
+ ("variant", InstanceContainer.Version * 1000000 + self.SettingVersion): (self.ResourceTypes.VariantInstanceContainer, "application/x-uranium-instancecontainer"),
+ ("setting_visibility", SettingVisibilityPresetsModel.Version * 1000000 + self.SettingVersion): (self.ResourceTypes.SettingVisibilityPreset, "application/x-uranium-preferences"),
}
)
@@ -601,6 +607,15 @@ class CuraApplication(QtApplication):
@pyqtSlot()
def closeApplication(self) -> None:
Logger.log("i", "Close application")
+
+ # Workaround: Before closing the window, remove the global stack.
+ # This is necessary because as the main window gets closed, hundreds of QML elements get updated which often
+ # request the global stack. However as the Qt-side of the Machine Manager is being dismantled, the conversion of
+ # the Global Stack to a QObject fails.
+ # If instead we first take down the global stack, PyQt will just convert `None` to `null` which succeeds, and
+ # the QML code then gets `null` as the global stack and can deal with that as it deems fit.
+ self.getMachineManager().setActiveMachine(None)
+
main_window = self.getMainWindow()
if main_window is not None:
main_window.close()
@@ -693,6 +708,8 @@ class CuraApplication(QtApplication):
@pyqtSlot(str)
def discardOrKeepProfileChangesClosed(self, option: str) -> None:
global_stack = self.getGlobalContainerStack()
+ if global_stack is None:
+ return
if option == "discard":
for extruder in global_stack.extruderList:
extruder.userChanges.clear()
@@ -822,6 +839,9 @@ class CuraApplication(QtApplication):
self._add_printer_pages_model_without_cancel.initialize(cancellable = False)
self._whats_new_pages_model.initialize()
+ # Initialize the FileProviderModel
+ self._file_provider_model.initialize(self._onFileProviderEnabledChanged)
+
# Detect in which mode to run and execute that mode
if self._is_headless:
self.runWithoutGUI()
@@ -889,14 +909,14 @@ class CuraApplication(QtApplication):
diagonal = self.getBuildVolume().getDiagonalSize()
if diagonal < 1: #No printer added yet. Set a default camera distance for normal-sized printers.
diagonal = 375
- camera.setPosition(Vector(-80, 250, 700) * diagonal / 375)
+ camera.setPosition(Vector(-80, 180, 700) * diagonal / 375)
camera.lookAt(Vector(0, 0, 0))
controller.getScene().setActiveCamera("3d")
# Initialize camera tool
camera_tool = controller.getTool("CameraTool")
if camera_tool:
- camera_tool.setOrigin(Vector(0, 100, 0))
+ camera_tool.setOrigin(Vector(0, 30, 0))
camera_tool.setZoomRange(0.1, 2000)
# Initialize camera animations
@@ -1051,6 +1071,13 @@ class CuraApplication(QtApplication):
self._simple_mode_settings_manager = SimpleModeSettingsManager()
return self._simple_mode_settings_manager
+ @pyqtSlot(result = QObject)
+ def getFileProviderModel(self) -> FileProviderModel:
+ return self._file_provider_model
+
+ def _onFileProviderEnabledChanged(self):
+ self._file_provider_model.update()
+
def event(self, event):
"""Handle Qt events"""
@@ -1256,10 +1283,11 @@ class CuraApplication(QtApplication):
if other_bb is not None:
scene_bounding_box = scene_bounding_box + node.getBoundingBox()
-
if print_information:
print_information.setPreSliced(is_block_slicing_node)
+ self.getWorkspaceFileHandler().setEnabled(not is_block_slicing_node)
+
if not scene_bounding_box:
scene_bounding_box = AxisAlignedBox.Null
@@ -1466,7 +1494,8 @@ class CuraApplication(QtApplication):
for file_name, nodes in objects_in_filename.items():
for node in nodes:
- job = ReadMeshJob(file_name)
+ file_path = os.path.normpath(os.path.dirname(file_name))
+ job = ReadMeshJob(file_name, add_to_recent_files = file_path != tempfile.gettempdir()) # Don't add temp files to the recent files list
job._node = node # type: ignore
job.finished.connect(self._reloadMeshFinished)
if has_merged_nodes:
@@ -1502,12 +1531,8 @@ class CuraApplication(QtApplication):
# Compute the center of the objects
object_centers = []
- # Forget about the translation that the original objects have
- zero_translation = Matrix(data=numpy.zeros(3))
for mesh, node in zip(meshes, group_node.getChildren()):
- transformation = node.getLocalTransformation()
- transformation.setTranslation(zero_translation)
- transformed_mesh = mesh.getTransformed(transformation)
+ transformed_mesh = mesh.getTransformed(Matrix()) # Forget about the transformations that the original object had.
center = transformed_mesh.getCenterPosition()
if center is not None:
object_centers.append(center)
@@ -1522,7 +1547,7 @@ class CuraApplication(QtApplication):
# Move each node to the same position.
for mesh, node in zip(meshes, group_node.getChildren()):
- node.setTransformation(Matrix())
+ node.setTransformation(Matrix()) # Removes any changes in position and rotation.
# Align the object around its zero position
# and also apply the offset to center it inside the group.
node.setPosition(-mesh.getZeroPosition() - offset)
@@ -1720,15 +1745,17 @@ class CuraApplication(QtApplication):
def log(self, msg):
Logger.log("d", msg)
- openProjectFile = pyqtSignal(QUrl, arguments = ["project_file"]) # Emitted when a project file is about to open.
+ openProjectFile = pyqtSignal(QUrl, bool, arguments = ["project_file", "add_to_recent_files"]) # Emitted when a project file is about to open.
+ @pyqtSlot(QUrl, str, bool)
@pyqtSlot(QUrl, str)
@pyqtSlot(QUrl)
- def readLocalFile(self, file: QUrl, project_mode: Optional[str] = None):
+ def readLocalFile(self, file: QUrl, project_mode: Optional[str] = None, add_to_recent_files: bool = True):
"""Open a local file
:param project_mode: How to handle project files. Either None(default): Follow user preference, "open_as_model"
or "open_as_project". This parameter is only considered if the file is a project file.
+ :param add_to_recent_files: Whether or not to add the file as an option to the Recent Files list.
"""
Logger.log("i", "Attempting to read file %s", file.toString())
if not file.isValid():
@@ -1749,12 +1776,12 @@ class CuraApplication(QtApplication):
if is_project_file and project_mode == "open_as_project":
# open as project immediately without presenting a dialog
workspace_handler = self.getWorkspaceFileHandler()
- workspace_handler.readLocalFile(file)
+ workspace_handler.readLocalFile(file, add_to_recent_files_hint = add_to_recent_files)
return
if is_project_file and project_mode == "always_ask":
# present a dialog asking to open as project or import models
- self.callLater(self.openProjectFile.emit, file)
+ self.callLater(self.openProjectFile.emit, file, add_to_recent_files)
return
# Either the file is a model file or we want to load only models from project. Continue to load models.
@@ -1790,7 +1817,7 @@ class CuraApplication(QtApplication):
if extension in self._non_sliceable_extensions:
self.deleteAll(only_selectable = False)
- job = ReadMeshJob(f)
+ job = ReadMeshJob(f, add_to_recent_files = add_to_recent_files)
job.finished.connect(self._readMeshFinished)
job.start()
@@ -1841,6 +1868,7 @@ class CuraApplication(QtApplication):
else:
node = CuraSceneNode()
node.setMeshData(original_node.getMeshData())
+ node.source_mime_type = original_node.source_mime_type
# Setting meshdata does not apply scaling.
if original_node.getScale() != Vector(1.0, 1.0, 1.0):
@@ -1905,6 +1933,11 @@ class CuraApplication(QtApplication):
arrange(nodes_to_arrange, self.getBuildVolume(), fixed_nodes)
except:
Logger.logException("e", "Failed to arrange the models")
+
+ # Ensure that we don't have any weird floaty objects (CURA-7855)
+ for node in nodes_to_arrange:
+ node.translate(Vector(0, -node.getBoundingBox().bottom, 0), SceneNode.TransformSpace.World)
+
self.fileCompleted.emit(file_name)
def addNonSliceableExtension(self, extension):
@@ -1921,7 +1954,7 @@ class CuraApplication(QtApplication):
try:
result = workspace_reader.preRead(file_path, show_dialog=False)
return result == WorkspaceReader.PreReadResult.accepted
- except Exception:
+ except:
Logger.logException("e", "Could not check file %s", file_url)
return False
diff --git a/cura/LayerPolygon.py b/cura/LayerPolygon.py
index 6e518e984a..7f62a0a8fa 100644
--- a/cura/LayerPolygon.py
+++ b/cura/LayerPolygon.py
@@ -65,7 +65,7 @@ class LayerPolygon:
# When type is used as index returns true if type == LayerPolygon.InfillType or type == LayerPolygon.SkinType or type == LayerPolygon.SupportInfillType
# Should be generated in better way, not hardcoded.
- self._is_infill_or_skin_type_map = numpy.array([0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 1, 0], dtype = numpy.bool)
+ self._is_infill_or_skin_type_map = numpy.array([0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 1, 0], dtype = bool)
self._build_cache_line_mesh_mask = None # type: Optional[numpy.ndarray]
self._build_cache_needed_points = None # type: Optional[numpy.ndarray]
@@ -73,18 +73,17 @@ class LayerPolygon:
def buildCache(self) -> None:
# For the line mesh we do not draw Infill or Jumps. Therefore those lines are filtered out.
self._build_cache_line_mesh_mask = numpy.ones(self._jump_mask.shape, dtype = bool)
- mesh_line_count = numpy.sum(self._build_cache_line_mesh_mask)
self._index_begin = 0
- self._index_end = mesh_line_count
+ self._index_end = cast(int, numpy.sum(self._build_cache_line_mesh_mask))
- self._build_cache_needed_points = numpy.ones((len(self._types), 2), dtype = numpy.bool)
+ self._build_cache_needed_points = numpy.ones((len(self._types), 2), dtype = bool)
# Only if the type of line segment changes do we need to add an extra vertex to change colors
self._build_cache_needed_points[1:, 0][:, numpy.newaxis] = self._types[1:] != self._types[:-1]
# Mark points as unneeded if they are of types we don't want in the line mesh according to the calculated mask
numpy.logical_and(self._build_cache_needed_points, self._build_cache_line_mesh_mask, self._build_cache_needed_points )
self._vertex_begin = 0
- self._vertex_end = numpy.sum( self._build_cache_needed_points )
+ self._vertex_end = cast(int, numpy.sum(self._build_cache_needed_points))
def build(self, vertex_offset: int, index_offset: int, vertices: numpy.ndarray, colors: numpy.ndarray, line_dimensions: numpy.ndarray, feedrates: numpy.ndarray, extruders: numpy.ndarray, line_types: numpy.ndarray, indices: numpy.ndarray) -> None:
"""Set all the arrays provided by the function caller, representing the LayerPolygon
diff --git a/cura/Machines/MaterialNode.py b/cura/Machines/MaterialNode.py
index c78c6aff03..18db7d982d 100644
--- a/cura/Machines/MaterialNode.py
+++ b/cura/Machines/MaterialNode.py
@@ -88,8 +88,10 @@ class MaterialNode(ContainerNode):
variant = self.variant.variant_name)
else:
qualities_any_material = container_registry.findInstanceContainersMetadata(type = "quality", definition = self.variant.machine.quality_definition)
- for material_metadata in container_registry.findInstanceContainersMetadata(type = "material", material = my_material_type):
- qualities.extend((quality for quality in qualities_any_material if quality.get("material") == material_metadata["base_file"]))
+
+ all_material_base_files = {material_metadata["base_file"] for material_metadata in container_registry.findInstanceContainersMetadata(type = "material", material = my_material_type)}
+
+ qualities.extend((quality for quality in qualities_any_material if quality.get("material") in all_material_base_files))
if not qualities: # No quality profiles found. Go by GUID then.
my_guid = self.guid
diff --git a/cura/Machines/Models/ExtrudersModel.py b/cura/Machines/Models/ExtrudersModel.py
index 98865ed37e..1aba1d871a 100644
--- a/cura/Machines/Models/ExtrudersModel.py
+++ b/cura/Machines/Models/ExtrudersModel.py
@@ -53,6 +53,9 @@ class ExtrudersModel(ListModel):
EnabledRole = Qt.UserRole + 11
"""Is the extruder enabled?"""
+ MaterialTypeRole = Qt.UserRole + 12
+ """The type of the material (e.g. PLA, ABS, PETG, etc.)."""
+
defaultColors = ["#ffc924", "#86ec21", "#22eeee", "#245bff", "#9124ff", "#ff24c8"]
"""List of colours to display if there is no material or the material has no known colour. """
@@ -75,6 +78,7 @@ class ExtrudersModel(ListModel):
self.addRoleName(self.StackRole, "stack")
self.addRoleName(self.MaterialBrandRole, "material_brand")
self.addRoleName(self.ColorNameRole, "color_name")
+ self.addRoleName(self.MaterialTypeRole, "material_type")
self._update_extruder_timer = QTimer()
self._update_extruder_timer.setInterval(100)
self._update_extruder_timer.setSingleShot(True)
@@ -193,7 +197,8 @@ class ExtrudersModel(ListModel):
"variant": extruder.variant.getName() if extruder.variant else "", # e.g. print core
"stack": extruder,
"material_brand": material_brand,
- "color_name": color_name
+ "color_name": color_name,
+ "material_type": extruder.material.getMetaDataEntry("material") if extruder.material else "",
}
items.append(item)
@@ -210,7 +215,7 @@ class ExtrudersModel(ListModel):
"id": "",
"name": catalog.i18nc("@menuitem", "Not overridden"),
"enabled": True,
- "color": "#ffffff",
+ "color": "transparent",
"index": -1,
"definition": "",
"material": "",
@@ -218,6 +223,7 @@ class ExtrudersModel(ListModel):
"stack": None,
"material_brand": "",
"color_name": "",
+ "material_type": "",
}
items.append(item)
if self._items != items:
diff --git a/cura/Machines/Models/MachineModelUtils.py b/cura/Machines/Models/MachineModelUtils.py
index a23b1ff3a5..b4fff37724 100644
--- a/cura/Machines/Models/MachineModelUtils.py
+++ b/cura/Machines/Models/MachineModelUtils.py
@@ -1,4 +1,4 @@
-# Copyright (c) 2019 Ultimaker B.V.
+# Copyright (c) 2021 Ultimaker B.V.
# Cura is released under the terms of the LGPLv3 or higher.
from typing import TYPE_CHECKING
@@ -34,4 +34,4 @@ def fetchLayerHeight(quality_group: "QualityGroup") -> float:
if isinstance(layer_height, SettingFunction):
layer_height = layer_height(global_stack)
- return float(layer_height)
+ return round(float(layer_height), 3)
diff --git a/cura/Machines/Models/MaterialManagementModel.py b/cura/Machines/Models/MaterialManagementModel.py
index 4a696ec974..6663dbdae1 100644
--- a/cura/Machines/Models/MaterialManagementModel.py
+++ b/cura/Machines/Models/MaterialManagementModel.py
@@ -1,10 +1,11 @@
-# Copyright (c) 2019 Ultimaker B.V.
+# Copyright (c) 2021 Ultimaker B.V.
# Cura is released under the terms of the LGPLv3 or higher.
import copy # To duplicate materials.
-from PyQt5.QtCore import QObject, pyqtSignal, pyqtSlot # To allow the preference page proxy to be used from the actual preferences page.
+from PyQt5.QtCore import pyqtProperty, pyqtSignal, pyqtSlot, QObject, QUrl
from typing import Any, Dict, Optional, TYPE_CHECKING
import uuid # To generate new GUIDs for new materials.
+import zipfile # To export all materials in a .zip archive.
from UM.i18n import i18nCatalog
from UM.Logger import Logger
@@ -20,11 +21,6 @@ if TYPE_CHECKING:
catalog = i18nCatalog("cura")
class MaterialManagementModel(QObject):
- """Proxy class to the materials page in the preferences.
-
- This class handles the actions in that page, such as creating new materials, renaming them, etc.
- """
-
favoritesChanged = pyqtSignal(str)
"""Triggered when a favorite is added or removed.
@@ -79,6 +75,7 @@ class MaterialManagementModel(QObject):
:param material_node: The material to remove.
"""
+ Logger.info(f"Removing material {material_node.container_id}")
container_registry = CuraContainerRegistry.getInstance()
materials_this_base_file = container_registry.findContainersMetadata(base_file = material_node.base_file)
@@ -194,6 +191,7 @@ class MaterialManagementModel(QObject):
:return: The root material ID of the duplicate material.
"""
+ Logger.info(f"Duplicating material {material_node.base_file} to {new_base_id}")
return self.duplicateMaterialByBaseFile(material_node.base_file, new_base_id, new_metadata)
@pyqtSlot(result = str)
@@ -262,3 +260,40 @@ class MaterialManagementModel(QObject):
self.favoritesChanged.emit(material_base_file)
except ValueError: # Material was not in the favorites list.
Logger.log("w", "Material {material_base_file} was already not a favorite material.".format(material_base_file = material_base_file))
+
+ @pyqtSlot(result = QUrl)
+ def getPreferredExportAllPath(self) -> QUrl:
+ """
+ Get the preferred path to export materials to.
+
+ If there is a removable drive, that should be the preferred path. Otherwise it should be the most recent local
+ file path.
+ :return: The preferred path to export all materials to.
+ """
+ cura_application = cura.CuraApplication.CuraApplication.getInstance()
+ device_manager = cura_application.getOutputDeviceManager()
+ devices = device_manager.getOutputDevices()
+ for device in devices:
+ if device.__class__.__name__ == "RemovableDriveOutputDevice":
+ return QUrl.fromLocalFile(device.getId())
+ else: # No removable drives? Use local path.
+ return cura_application.getDefaultPath("dialog_material_path")
+
+ @pyqtSlot(QUrl)
+ def exportAll(self, file_path: QUrl) -> None:
+ """
+ Export all materials to a certain file path.
+ :param file_path: The path to export the materials to.
+ """
+ registry = CuraContainerRegistry.getInstance()
+
+ archive = zipfile.ZipFile(file_path.toLocalFile(), "w", compression = zipfile.ZIP_DEFLATED)
+ for metadata in registry.findInstanceContainersMetadata(type = "material"):
+ if metadata["base_file"] != metadata["id"]: # Only process base files.
+ continue
+ if metadata["id"] == "empty_material": # Don't export the empty material.
+ continue
+ material = registry.findContainers(id = metadata["id"])[0]
+ suffix = registry.getMimeTypeForContainer(type(material)).preferredSuffix
+ filename = metadata["id"] + "." + suffix
+ archive.writestr(filename, material.serialize())
diff --git a/cura/Machines/Models/QualitySettingsModel.py b/cura/Machines/Models/QualitySettingsModel.py
index 43f5c71e15..89a996fba1 100644
--- a/cura/Machines/Models/QualitySettingsModel.py
+++ b/cura/Machines/Models/QualitySettingsModel.py
@@ -99,7 +99,7 @@ class QualitySettingsModel(ListModel):
if self._selected_position == self.GLOBAL_STACK_POSITION:
quality_node = quality_group.node_for_global
else:
- quality_node = quality_group.nodes_for_extruders.get(str(self._selected_position))
+ quality_node = quality_group.nodes_for_extruders.get(self._selected_position)
settings_keys = quality_group.getAllKeys()
quality_containers = []
if quality_node is not None and quality_node.container is not None:
@@ -114,10 +114,13 @@ class QualitySettingsModel(ListModel):
global_container = None if len(global_containers) == 0 else global_containers[0]
extruders_containers = {pos: container_registry.findContainers(id = quality_changes_group.metadata_per_extruder[pos]["id"]) for pos in quality_changes_group.metadata_per_extruder}
extruders_container = {pos: None if not containers else containers[0] for pos, containers in extruders_containers.items()}
+ quality_changes_metadata = None
if self._selected_position == self.GLOBAL_STACK_POSITION and global_container:
quality_changes_metadata = global_container.getMetaData()
else:
- quality_changes_metadata = extruders_container.get(str(self._selected_position))
+ extruder = extruders_container.get(self._selected_position)
+ if extruder:
+ quality_changes_metadata = extruder.getMetaData()
if quality_changes_metadata is not None: # It can be None if number of extruders are changed during runtime.
container = container_registry.findContainers(id = quality_changes_metadata["id"])
if container:
diff --git a/cura/Machines/Models/SettingVisibilityPresetsModel.py b/cura/Machines/Models/SettingVisibilityPresetsModel.py
index 6b5766c127..d268774850 100644
--- a/cura/Machines/Models/SettingVisibilityPresetsModel.py
+++ b/cura/Machines/Models/SettingVisibilityPresetsModel.py
@@ -19,6 +19,8 @@ class SettingVisibilityPresetsModel(QObject):
onItemsChanged = pyqtSignal()
activePresetChanged = pyqtSignal()
+ Version = 2
+
def __init__(self, preferences: Preferences, parent = None) -> None:
super().__init__(parent)
diff --git a/cura/OAuth2/AuthorizationHelpers.py b/cura/OAuth2/AuthorizationHelpers.py
index f7fe6958a1..5b95b3a3bb 100644
--- a/cura/OAuth2/AuthorizationHelpers.py
+++ b/cura/OAuth2/AuthorizationHelpers.py
@@ -1,12 +1,12 @@
-# Copyright (c) 2020 Ultimaker B.V.
+# Copyright (c) 2021 Ultimaker B.V.
# Cura is released under the terms of the LGPLv3 or higher.
+
from datetime import datetime
import json
import random
from hashlib import sha512
from base64 import b64encode
-from typing import Optional, Any, Dict, Tuple
-
+from typing import Optional
import requests
from UM.i18n import i18nCatalog
@@ -58,7 +58,7 @@ class AuthorizationHelpers:
:return: An AuthenticationResponse object.
"""
- Logger.log("d", "Refreshing the access token.")
+ Logger.log("d", "Refreshing the access token for [%s]", self._settings.OAUTH_SERVER_URL)
data = {
"client_id": self._settings.CLIENT_ID if self._settings.CLIENT_ID is not None else "",
"redirect_uri": self._settings.CALLBACK_URL if self._settings.CALLBACK_URL is not None else "",
@@ -69,7 +69,9 @@ class AuthorizationHelpers:
try:
return self.parseTokenResponse(requests.post(self._token_url, data = data)) # type: ignore
except requests.exceptions.ConnectionError:
- return AuthenticationResponse(success=False, err_message="Unable to connect to remote server")
+ return AuthenticationResponse(success = False, err_message = "Unable to connect to remote server")
+ except OSError as e:
+ return AuthenticationResponse(success = False, err_message = "Operating system is unable to set up a secure connection: {err}".format(err = str(e)))
@staticmethod
def parseTokenResponse(token_response: requests.models.Response) -> "AuthenticationResponse":
@@ -108,10 +110,12 @@ class AuthorizationHelpers:
"""
try:
- token_request = requests.get("{}/check-token".format(self._settings.OAUTH_SERVER_URL), headers = {
+ check_token_url = "{}/check-token".format(self._settings.OAUTH_SERVER_URL)
+ Logger.log("d", "Checking the access token for [%s]", check_token_url)
+ token_request = requests.get(check_token_url, headers = {
"Authorization": "Bearer {}".format(access_token)
})
- except requests.exceptions.ConnectionError:
+ except (requests.exceptions.ConnectionError, requests.exceptions.Timeout):
# Connection was suddenly dropped. Nothing we can do about that.
Logger.logException("w", "Something failed while attempting to parse the JWT token")
return None
diff --git a/cura/OAuth2/AuthorizationService.py b/cura/OAuth2/AuthorizationService.py
index 9a5c81ae55..96091f9c11 100644
--- a/cura/OAuth2/AuthorizationService.py
+++ b/cura/OAuth2/AuthorizationService.py
@@ -1,4 +1,4 @@
-# Copyright (c) 2019 Ultimaker B.V.
+# Copyright (c) 2021 Ultimaker B.V.
# Cura is released under the terms of the LGPLv3 or higher.
import json
@@ -113,8 +113,10 @@ class AuthorizationService:
# The token could not be refreshed using the refresh token. We should login again.
return None
# Ensure it gets stored as otherwise we only have it in memory. The stored refresh token has been deleted
- # from the server already.
- self._storeAuthData(self._auth_data)
+ # from the server already. Do not store the auth_data if we could not get new auth_data (eg due to a
+ # network error), since this would cause an infinite loop trying to get new auth-data
+ if self._auth_data.success:
+ self._storeAuthData(self._auth_data)
return self._auth_helpers.parseJWT(self._auth_data.access_token)
def getAccessToken(self) -> Optional[str]:
@@ -241,13 +243,13 @@ class AuthorizationService:
self._unable_to_get_data_message = Message(i18n_catalog.i18nc("@info", "Unable to reach the Ultimaker account server."), title = i18n_catalog.i18nc("@info:title", "Warning"))
self._unable_to_get_data_message.show()
- except ValueError:
+ except (ValueError, TypeError):
Logger.logException("w", "Could not load auth data from preferences")
def _storeAuthData(self, auth_data: Optional[AuthenticationResponse] = None) -> None:
"""Store authentication data in preferences."""
- Logger.log("d", "Attempting to store the auth data")
+ Logger.log("d", "Attempting to store the auth data for [%s]", self._settings.OAUTH_SERVER_URL)
if self._preferences is None:
Logger.log("e", "Unable to save authentication data, since no preference has been set!")
return
@@ -255,10 +257,9 @@ class AuthorizationService:
self._auth_data = auth_data
if auth_data:
self._user_profile = self.getUserProfile()
- self._preferences.setValue(self._settings.AUTH_DATA_PREFERENCE_KEY, json.dumps(vars(auth_data)))
+ self._preferences.setValue(self._settings.AUTH_DATA_PREFERENCE_KEY, json.dumps(auth_data.dump()))
else:
self._user_profile = None
self._preferences.resetPreference(self._settings.AUTH_DATA_PREFERENCE_KEY)
self.accessTokenChanged.emit()
-
diff --git a/cura/OAuth2/KeyringAttribute.py b/cura/OAuth2/KeyringAttribute.py
new file mode 100644
index 0000000000..9bb6e3c267
--- /dev/null
+++ b/cura/OAuth2/KeyringAttribute.py
@@ -0,0 +1,83 @@
+# Copyright (c) 2021 Ultimaker B.V.
+# Cura is released under the terms of the LGPLv3 or higher.
+from typing import Type, TYPE_CHECKING, Optional, List
+
+import keyring
+from keyring.backend import KeyringBackend
+from keyring.errors import NoKeyringError, PasswordSetError, KeyringLocked
+
+from UM.Logger import Logger
+
+if TYPE_CHECKING:
+ from cura.OAuth2.Models import BaseModel
+
+# Need to do some extra workarounds on windows:
+import sys
+from UM.Platform import Platform
+if Platform.isWindows() and hasattr(sys, "frozen"):
+ import win32timezone
+ from keyring.backends.Windows import WinVaultKeyring
+ keyring.set_keyring(WinVaultKeyring())
+if Platform.isOSX() and hasattr(sys, "frozen"):
+ from keyring.backends.macOS import Keyring
+ keyring.set_keyring(Keyring())
+
+# Even if errors happen, we don't want this stored locally:
+DONT_EVER_STORE_LOCALLY: List[str] = ["refresh_token"]
+
+
+class KeyringAttribute:
+ """
+ Descriptor for attributes that need to be stored in the keyring. With Fallback behaviour to the preference cfg file
+ """
+ def __get__(self, instance: "BaseModel", owner: type) -> Optional[str]:
+ if self._store_secure: # type: ignore
+ try:
+ value = keyring.get_password("cura", self._keyring_name)
+ return value if value != "" else None
+ except NoKeyringError:
+ self._store_secure = False
+ Logger.logException("w", "No keyring backend present")
+ return getattr(instance, self._name)
+ except KeyringLocked:
+ self._store_secure = False
+ Logger.log("i", "Access to the keyring was denied.")
+ return getattr(instance, self._name)
+ else:
+ return getattr(instance, self._name)
+
+ def __set__(self, instance: "BaseModel", value: Optional[str]):
+ if self._store_secure:
+ setattr(instance, self._name, None)
+ if value is not None:
+ try:
+ keyring.set_password("cura", self._keyring_name, value)
+ except (PasswordSetError, KeyringLocked):
+ self._store_secure = False
+ if self._name not in DONT_EVER_STORE_LOCALLY:
+ setattr(instance, self._name, value)
+ Logger.logException("w", "Keyring access denied")
+ except NoKeyringError:
+ self._store_secure = False
+ if self._name not in DONT_EVER_STORE_LOCALLY:
+ setattr(instance, self._name, value)
+ Logger.logException("w", "No keyring backend present")
+ except BaseException as e:
+ # A BaseException can occur in Windows when the keyring attempts to write a token longer than 1024
+ # characters in the Windows Credentials Manager.
+ self._store_secure = False
+ if self._name not in DONT_EVER_STORE_LOCALLY:
+ setattr(instance, self._name, value)
+ Logger.log("w", "Keyring failed: {}".format(e))
+ else:
+ setattr(instance, self._name, value)
+
+ def __set_name__(self, owner: type, name: str):
+ self._name = "_{}".format(name)
+ self._keyring_name = name
+ self._store_secure = False
+ try:
+ self._store_secure = KeyringBackend.viable
+ except NoKeyringError:
+ Logger.logException("w", "Could not use keyring")
+ setattr(owner, self._name, None)
diff --git a/cura/OAuth2/LocalAuthorizationServer.py b/cura/OAuth2/LocalAuthorizationServer.py
index ac14b00985..219191c295 100644
--- a/cura/OAuth2/LocalAuthorizationServer.py
+++ b/cura/OAuth2/LocalAuthorizationServer.py
@@ -54,6 +54,7 @@ class LocalAuthorizationServer:
if self._web_server:
# If the server is already running (because of a previously aborted auth flow), we don't have to start it.
# We still inject the new verification code though.
+ Logger.log("d", "Auth web server was already running. Updating the verification code")
self._web_server.setVerificationCode(verification_code)
return
@@ -85,6 +86,7 @@ class LocalAuthorizationServer:
except OSError:
# OS error can happen if the socket was already closed. We really don't care about that case.
pass
+ Logger.log("d", "Local oauth2 web server was shut down")
self._web_server = None
self._web_server_thread = None
@@ -96,12 +98,13 @@ class LocalAuthorizationServer:
:return: None
"""
+ Logger.log("d", "Local web server for authorization has started")
if self._web_server:
if sys.platform == "win32":
try:
self._web_server.serve_forever()
- except OSError as e:
- Logger.warning(str(e))
+ except OSError:
+ Logger.logException("w", "An exception happened while serving the auth server")
else:
# Leave the default behavior in non-windows platforms
self._web_server.serve_forever()
diff --git a/cura/OAuth2/Models.py b/cura/OAuth2/Models.py
index f49fdc1421..4c84872a09 100644
--- a/cura/OAuth2/Models.py
+++ b/cura/OAuth2/Models.py
@@ -1,6 +1,8 @@
-# Copyright (c) 2020 Ultimaker B.V.
+# Copyright (c) 2021 Ultimaker B.V.
# Cura is released under the terms of the LGPLv3 or higher.
-from typing import Optional, Dict, Any, List
+from typing import Optional, Dict, Any, List, Union
+from copy import deepcopy
+from cura.OAuth2.KeyringAttribute import KeyringAttribute
class BaseModel:
@@ -37,12 +39,29 @@ class AuthenticationResponse(BaseModel):
# Data comes from the token response with success flag and error message added.
success = True # type: bool
token_type = None # type: Optional[str]
- access_token = None # type: Optional[str]
- refresh_token = None # type: Optional[str]
expires_in = None # type: Optional[str]
scope = None # type: Optional[str]
err_message = None # type: Optional[str]
received_at = None # type: Optional[str]
+ access_token = KeyringAttribute()
+ refresh_token = KeyringAttribute()
+
+ def __init__(self, **kwargs: Any) -> None:
+ self.access_token = kwargs.pop("access_token", None)
+ self.refresh_token = kwargs.pop("refresh_token", None)
+ super(AuthenticationResponse, self).__init__(**kwargs)
+
+ def dump(self) -> Dict[str, Union[bool, Optional[str]]]:
+ """
+ Dumps the dictionary of Authentication attributes. KeyringAttributes are transformed to public attributes
+ If the keyring was used, these will have a None value, otherwise they will have the secret value
+
+ :return: Dictionary of Authentication attributes
+ """
+ dumped = deepcopy(vars(self))
+ dumped["access_token"] = dumped.pop("_access_token")
+ dumped["refresh_token"] = dumped.pop("_refresh_token")
+ return dumped
class ResponseStatus(BaseModel):
diff --git a/cura/Scene/CuraSceneNode.py b/cura/Scene/CuraSceneNode.py
index 93a1511681..5fbaded650 100644
--- a/cura/Scene/CuraSceneNode.py
+++ b/cura/Scene/CuraSceneNode.py
@@ -119,21 +119,23 @@ class CuraSceneNode(SceneNode):
self._aabb = None
if self._mesh_data:
self._aabb = self._mesh_data.getExtents(self.getWorldTransformation(copy = False))
- else: # If there is no mesh_data, use a bounding box that encompasses the local (0,0,0)
- position = self.getWorldPosition()
- self._aabb = AxisAlignedBox(minimum = position, maximum = position)
for child in self.getAllChildren():
if child.callDecoration("isNonPrintingMesh"):
# Non-printing-meshes inside a group should not affect push apart or drop to build plate
continue
- if not child.getMeshData():
- # Nodes without mesh data should not affect bounding boxes of their parents.
+ child_bb = child.getBoundingBox()
+ if child_bb is None or child_bb.minimum == child_bb.maximum:
+ # Child had a degenerate bounding box, such as an empty group. Don't count it along.
continue
if self._aabb is None:
- self._aabb = child.getBoundingBox()
+ self._aabb = child_bb
else:
- self._aabb = self._aabb + child.getBoundingBox()
+ self._aabb = self._aabb + child_bb
+
+ if self._aabb is None: # No children that should be included? Just use your own position then, but it's an invalid AABB.
+ position = self.getWorldPosition()
+ self._aabb = AxisAlignedBox(minimum = position, maximum = position)
def __deepcopy__(self, memo: Dict[int, object]) -> "CuraSceneNode":
"""Taken from SceneNode, but replaced SceneNode with CuraSceneNode"""
@@ -142,6 +144,7 @@ class CuraSceneNode(SceneNode):
copy.setTransformation(self.getLocalTransformation(copy= False))
copy.setMeshData(self._mesh_data)
copy.setVisible(cast(bool, deepcopy(self._visible, memo)))
+ copy.source_mime_type = cast(str, deepcopy(self.source_mime_type, memo))
copy._selectable = cast(bool, deepcopy(self._selectable, memo))
copy._name = cast(str, deepcopy(self._name, memo))
for decorator in self._decorators:
diff --git a/cura/Settings/ContainerManager.py b/cura/Settings/ContainerManager.py
index 08fdf707cf..45f2edab20 100644
--- a/cura/Settings/ContainerManager.py
+++ b/cura/Settings/ContainerManager.py
@@ -1,4 +1,4 @@
-# Copyright (c) 2020 Ultimaker B.V.
+# Copyright (c) 2021 Ultimaker B.V.
# Cura is released under the terms of the LGPLv3 or higher.
import os
@@ -221,6 +221,7 @@ class ContainerManager(QObject):
except OSError:
return {"status": "error", "message": "Unable to write to this location.", "path": file_url}
+ Logger.info("Successfully exported container to {path}".format(path = file_url))
return {"status": "success", "message": "Successfully exported container", "path": file_url}
@pyqtSlot(QUrl, result = "QVariantMap")
@@ -240,6 +241,7 @@ class ContainerManager(QObject):
file_url = file_url_or_string.toLocalFile()
else:
file_url = file_url_or_string
+ Logger.info(f"Importing material from {file_url}")
if not file_url or not os.path.exists(file_url):
return {"status": "error", "message": "Invalid path"}
diff --git a/cura/Settings/CuraContainerRegistry.py b/cura/Settings/CuraContainerRegistry.py
index 24b7436bad..7e6c3f5d20 100644
--- a/cura/Settings/CuraContainerRegistry.py
+++ b/cura/Settings/CuraContainerRegistry.py
@@ -1,4 +1,4 @@
-# Copyright (c) 2019 Ultimaker B.V.
+# Copyright (c) 2021 Ultimaker B.V.
# Cura is released under the terms of the LGPLv3 or higher.
import os
@@ -381,9 +381,10 @@ class CuraContainerRegistry(ContainerRegistry):
if profile_count > 1:
continue
# Only one profile found, this should not ever be the case, so that profile needs to be removed!
- Logger.log("d", "Found an invalid quality_changes profile with the name %s. Going to remove that now", profile_name)
invalid_quality_changes = ContainerRegistry.getInstance().findContainersMetadata(name=profile_name)
- self.removeContainer(invalid_quality_changes[0]["id"])
+ if invalid_quality_changes:
+ Logger.log("d", "Found an invalid quality_changes profile with the name %s. Going to remove that now", profile_name)
+ self.removeContainer(invalid_quality_changes[0]["id"])
@override(ContainerRegistry)
def _isMetadataValid(self, metadata: Optional[Dict[str, Any]]) -> bool:
@@ -400,7 +401,9 @@ class CuraContainerRegistry(ContainerRegistry):
try:
if int(metadata["setting_version"]) != cura.CuraApplication.CuraApplication.SettingVersion:
return False
- except ValueError: #Not parsable as int.
+ except ValueError: # Not parsable as int.
+ return False
+ except TypeError: # Expecting string input here, not e.g. list or anything.
return False
return True
diff --git a/cura/Settings/GlobalStack.py b/cura/Settings/GlobalStack.py
index 2c7cbf5e25..282034c0ee 100755
--- a/cura/Settings/GlobalStack.py
+++ b/cura/Settings/GlobalStack.py
@@ -86,6 +86,14 @@ class GlobalStack(CuraContainerStack):
def supportsNetworkConnection(self):
return self.getMetaDataEntry("supports_network_connection", False)
+ @pyqtProperty(bool, constant = True)
+ def supportsMaterialExport(self):
+ """
+ Whether the printer supports Cura's export format of material profiles.
+ :return: ``True`` if it supports it, or ``False`` if not.
+ """
+ return self.getMetaDataEntry("supports_material_export", False)
+
@classmethod
def getLoadingPriority(cls) -> int:
return 2
diff --git a/cura/Settings/MachineNameValidator.py b/cura/Settings/MachineNameValidator.py
index c3ca4ed369..99a5c7da0a 100644
--- a/cura/Settings/MachineNameValidator.py
+++ b/cura/Settings/MachineNameValidator.py
@@ -1,4 +1,4 @@
-# Copyright (c) 2016 Ultimaker B.V.
+# Copyright (c) 2021 Ultimaker B.V.
# Cura is released under the terms of the LGPLv3 or higher.
from PyQt5.QtCore import pyqtSlot, pyqtProperty, QObject, pyqtSignal, QRegExp
@@ -23,7 +23,7 @@ class MachineNameValidator(QObject):
#Compute the validation regex for printer names. This is limited by the maximum file name length.
try:
filename_max_length = os.statvfs(Resources.getDataStoragePath()).f_namemax
- except AttributeError: #Doesn't support statvfs. Probably because it's not a Unix system.
+ except (AttributeError, EnvironmentError): # Doesn't support statvfs. Probably because it's not a Unix system. Or perhaps there is no permission or it doesn't exist.
filename_max_length = 255 #Assume it's Windows on NTFS.
machine_name_max_length = filename_max_length - len("_current_settings.") - len(ContainerRegistry.getMimeTypeForContainer(InstanceContainer).preferredSuffix)
# Characters that urllib.parse.quote_plus escapes count for 12! So now
diff --git a/cura/Snapshot.py b/cura/Snapshot.py
index 6f12aa88ba..ca9c442fb5 100644
--- a/cura/Snapshot.py
+++ b/cura/Snapshot.py
@@ -1,4 +1,4 @@
-# Copyright (c) 2018 Ultimaker B.V.
+# Copyright (c) 2021 Ultimaker B.V.
# Cura is released under the terms of the LGPLv3 or higher.
import numpy
@@ -25,8 +25,8 @@ class Snapshot:
pixels = numpy.frombuffer(pixel_array, dtype=numpy.uint8).reshape([height, width, 4])
# Find indices of non zero pixels
nonzero_pixels = numpy.nonzero(pixels)
- min_y, min_x, min_a_ = numpy.amin(nonzero_pixels, axis=1)
- max_y, max_x, max_a_ = numpy.amax(nonzero_pixels, axis=1)
+ min_y, min_x, min_a_ = numpy.amin(nonzero_pixels, axis=1) # type: ignore
+ max_y, max_x, max_a_ = numpy.amax(nonzero_pixels, axis=1) # type: ignore
return min_x, max_x, min_y, max_y
@@ -42,8 +42,8 @@ class Snapshot:
"""
scene = Application.getInstance().getController().getScene()
- active_camera = scene.getActiveCamera()
- render_width, render_height = active_camera.getWindowSize()
+ active_camera = scene.getActiveCamera() or scene.findCamera("3d")
+ render_width, render_height = (width, height) if active_camera is None else active_camera.getWindowSize()
render_width = int(render_width)
render_height = int(render_height)
preview_pass = PreviewPass(render_width, render_height)
diff --git a/cura/UI/ObjectsModel.py b/cura/UI/ObjectsModel.py
index 02d4096278..0c109d7a4a 100644
--- a/cura/UI/ObjectsModel.py
+++ b/cura/UI/ObjectsModel.py
@@ -132,9 +132,26 @@ class ObjectsModel(ListModel):
is_group = bool(node.callDecoration("isGroup"))
+ name_handled_as_group = False
force_rename = False
- if not is_group:
- # Handle names for individual nodes
+ if is_group:
+ # Handle names for grouped nodes
+ original_name = self._group_name_prefix
+
+ current_name = node.getName()
+ if current_name.startswith(self._group_name_prefix):
+ # This group has a standard group name, but we may need to renumber it
+ name_index = int(current_name.split("#")[-1])
+ name_handled_as_group = True
+ elif not current_name:
+ # Force rename this group because this node has not been named as a group yet, probably because
+ # it's a newly created group.
+ name_index = 0
+ force_rename = True
+ name_handled_as_group = True
+
+ if not is_group or not name_handled_as_group:
+ # Handle names for individual nodes or groups that already have a non-group name
name = node.getName()
name_match = self._naming_regex.fullmatch(name)
@@ -144,18 +161,6 @@ class ObjectsModel(ListModel):
else:
original_name = name_match.groups()[0]
name_index = int(name_match.groups()[1])
- else:
- # Handle names for grouped nodes
- original_name = self._group_name_prefix
-
- current_name = node.getName()
- if current_name.startswith(self._group_name_prefix):
- name_index = int(current_name.split("#")[-1])
- else:
- # Force rename this group because this node has not been named as a group yet, probably because
- # it's a newly created group.
- name_index = 0
- force_rename = True
if original_name not in name_to_node_info_dict:
# Keep track of 2 things:
diff --git a/cura/UI/PrintInformation.py b/cura/UI/PrintInformation.py
index 22710165b3..d6bd336558 100644
--- a/cura/UI/PrintInformation.py
+++ b/cura/UI/PrintInformation.py
@@ -4,7 +4,6 @@
import json
import math
import os
-import unicodedata
from typing import Dict, List, Optional, TYPE_CHECKING
from PyQt5.QtCore import QObject, pyqtSignal, pyqtProperty, pyqtSlot, QTimer
@@ -301,10 +300,11 @@ class PrintInformation(QObject):
if self._base_name == "":
self._job_name = self.UNTITLED_JOB_NAME
self._is_user_specified_job_name = False
+ self._application.getController().getScene().clearMetaData()
self.jobNameChanged.emit()
return
- base_name = self._stripAccents(self._base_name)
+ base_name = self._base_name
self._defineAbbreviatedMachineName()
# Only update the job name when it's not user-specified.
@@ -400,11 +400,6 @@ class PrintInformation(QObject):
self._abbr_machine = self._application.getMachineManager().getAbbreviatedMachineName(active_machine_type_name)
- def _stripAccents(self, to_strip: str) -> str:
- """Utility method that strips accents from characters (eg: â -> a)"""
-
- return ''.join(char for char in unicodedata.normalize('NFD', to_strip) if unicodedata.category(char) != 'Mn')
-
@pyqtSlot(result = "QVariantMap")
def getFeaturePrintTimes(self) -> Dict[str, Duration]:
result = {}
diff --git a/cura/UI/TextManager.py b/cura/UI/TextManager.py
index dbe7940f26..e45689936b 100644
--- a/cura/UI/TextManager.py
+++ b/cura/UI/TextManager.py
@@ -1,4 +1,4 @@
-# Copyright (c) 2019 Ultimaker B.V.
+# Copyright (c) 2021 Ultimaker B.V.
# Cura is released under the terms of the LGPLv3 or higher.
import collections
@@ -6,9 +6,11 @@ from typing import Optional, Dict, List, cast
from PyQt5.QtCore import QObject, pyqtSlot
+from UM.i18n import i18nCatalog
from UM.Resources import Resources
from UM.Version import Version
+catalog = i18nCatalog("cura")
#
# This manager provides means to load texts to QML.
@@ -30,30 +32,33 @@ class TextManager(QObject):
# Load change log texts and organize them with a dict
try:
file_path = Resources.getPath(Resources.Texts, "change_log.txt")
- except FileNotFoundError:
+ except FileNotFoundError as e:
# I have no idea how / when this happens, but we're getting crash reports about it.
- return ""
+ return catalog.i18nc("@text:window", "The release notes could not be opened.") + " " + str(e)
change_logs_dict = {} # type: Dict[Version, Dict[str, List[str]]]
- with open(file_path, "r", encoding = "utf-8") as f:
- open_version = None # type: Optional[Version]
- open_header = "" # Initialise to an empty header in case there is no "*" in the first line of the changelog
- for line in f:
- line = line.replace("\n", "")
- if "[" in line and "]" in line:
- line = line.replace("[", "")
- line = line.replace("]", "")
- open_version = Version(line)
- if open_version > Version([14, 99, 99]): # Bit of a hack: We released the 15.x.x versions before 2.x
- open_version = Version([0, open_version.getMinor(), open_version.getRevision(), open_version.getPostfixVersion()])
- open_header = ""
- change_logs_dict[open_version] = collections.OrderedDict()
- elif line.startswith("*"):
- open_header = line.replace("*", "")
- change_logs_dict[cast(Version, open_version)][open_header] = []
- elif line != "":
- if open_header not in change_logs_dict[cast(Version, open_version)]:
+ try:
+ with open(file_path, "r", encoding = "utf-8") as f:
+ open_version = None # type: Optional[Version]
+ open_header = "" # Initialise to an empty header in case there is no "*" in the first line of the changelog
+ for line in f:
+ line = line.replace("\n", "")
+ if "[" in line and "]" in line:
+ line = line.replace("[", "")
+ line = line.replace("]", "")
+ open_version = Version(line)
+ if open_version > Version([14, 99, 99]): # Bit of a hack: We released the 15.x.x versions before 2.x
+ open_version = Version([0, open_version.getMinor(), open_version.getRevision(), open_version.getPostfixVersion()])
+ open_header = ""
+ change_logs_dict[open_version] = collections.OrderedDict()
+ elif line.startswith("*"):
+ open_header = line.replace("*", "")
change_logs_dict[cast(Version, open_version)][open_header] = []
- change_logs_dict[cast(Version, open_version)][open_header].append(line)
+ elif line != "":
+ if open_header not in change_logs_dict[cast(Version, open_version)]:
+ change_logs_dict[cast(Version, open_version)][open_header] = []
+ change_logs_dict[cast(Version, open_version)][open_header].append(line)
+ except EnvironmentError as e:
+ return catalog.i18nc("@text:window", "The release notes could not be opened.") + " " + str(e)
# Format changelog text
content = ""
diff --git a/cura/UI/WelcomePagesModel.py b/cura/UI/WelcomePagesModel.py
index b816833d67..3c2d0503ab 100644
--- a/cura/UI/WelcomePagesModel.py
+++ b/cura/UI/WelcomePagesModel.py
@@ -239,9 +239,6 @@ class WelcomePagesModel(ListModel):
{"id": "user_agreement",
"page_url": self._getBuiltinWelcomePagePath("UserAgreementContent.qml"),
},
- {"id": "whats_new",
- "page_url": self._getBuiltinWelcomePagePath("WhatsNewContent.qml"),
- },
{"id": "data_collections",
"page_url": self._getBuiltinWelcomePagePath("DataCollectionsContent.qml"),
},
@@ -259,13 +256,21 @@ class WelcomePagesModel(ListModel):
},
{"id": "add_cloud_printers",
"page_url": self._getBuiltinWelcomePagePath("AddCloudPrintersView.qml"),
- "is_final_page": True, # If we end up in this page, the next button will close the dialog
- "next_page_button_text": self._catalog.i18nc("@action:button", "Finish"),
+ "next_page_button_text": self._catalog.i18nc("@action:button", "Next"),
+ "next_page_id": "whats_new",
},
{"id": "machine_actions",
"page_url": self._getBuiltinWelcomePagePath("FirstStartMachineActionsContent.qml"),
"should_show_function": self.shouldShowMachineActions,
},
+ {"id": "whats_new",
+ "page_url": self._getBuiltinWelcomePagePath("WhatsNewContent.qml"),
+ "next_page_button_text": self._catalog.i18nc("@action:button", "Skip"),
+ },
+ {"id": "changelog",
+ "page_url": self._getBuiltinWelcomePagePath("ChangelogContent.qml"),
+ "next_page_button_text": self._catalog.i18nc("@action:button", "Finish"),
+ },
]
pages_to_show = all_pages_list
diff --git a/cura/UI/WhatsNewPagesModel.py b/cura/UI/WhatsNewPagesModel.py
index 5b968ae574..11320a0ebb 100644
--- a/cura/UI/WhatsNewPagesModel.py
+++ b/cura/UI/WhatsNewPagesModel.py
@@ -1,8 +1,12 @@
-# Copyright (c) 2019 Ultimaker B.V.
+# Copyright (c) 2021 Ultimaker B.V.
# Cura is released under the terms of the LGPLv3 or higher.
-
from .WelcomePagesModel import WelcomePagesModel
+import os
+from typing import Optional, Dict, List, Tuple
+from PyQt5.QtCore import pyqtProperty, pyqtSlot
+from UM.Logger import Logger
+from UM.Resources import Resources
#
# This Qt ListModel is more or less the same the WelcomePagesModel, except that this model is only for showing the
@@ -10,13 +14,84 @@ from .WelcomePagesModel import WelcomePagesModel
#
class WhatsNewPagesModel(WelcomePagesModel):
+ image_formats = [".png", ".jpg", ".jpeg", ".gif", ".svg"]
+ text_formats = [".txt", ".htm", ".html"]
+ image_key = "image"
+ text_key = "text"
+
+ @staticmethod
+ def _collectOrdinalFiles(resource_type: int, include: List[str]) -> Tuple[Dict[int, str], int]:
+ result = {} #type: Dict[int, str]
+ highest = -1
+ try:
+ folder_path = Resources.getPath(resource_type, "whats_new")
+ for _, _, files in os.walk(folder_path):
+ for filename in files:
+ basename = os.path.basename(filename)
+ base, ext = os.path.splitext(basename)
+ if ext.lower() not in include or not base.isdigit():
+ continue
+ page_no = int(base)
+ highest = max(highest, page_no)
+ result[page_no] = os.path.join(folder_path, filename)
+ except FileNotFoundError:
+ Logger.logException("w", "Could not find 'whats_new' folder for resource-type {0}".format(resource_type))
+ return result, highest
+
+ @staticmethod
+ def _loadText(filename: str) -> str:
+ result = ""
+ try:
+ with open(filename, "r", encoding="utf-8") as file:
+ result = file.read()
+ except OSError:
+ Logger.logException("w", "Could not open {0}".format(filename))
+ return result
+
def initialize(self) -> None:
self._pages = []
self._pages.append({"id": "whats_new",
"page_url": self._getBuiltinWelcomePagePath("WhatsNewContent.qml"),
+ "next_page_button_text": self._catalog.i18nc("@action:button", "Skip"),
+ "next_page_id": "changelog"
+ })
+ self._pages.append({"id": "changelog",
+ "page_url": self._getBuiltinWelcomePagePath("ChangelogContent.qml"),
"next_page_button_text": self._catalog.i18nc("@action:button", "Close"),
})
self.setItems(self._pages)
+ images, max_image = WhatsNewPagesModel._collectOrdinalFiles(Resources.Images, WhatsNewPagesModel.image_formats)
+ texts, max_text = WhatsNewPagesModel._collectOrdinalFiles(Resources.Texts, WhatsNewPagesModel.text_formats)
+ highest = max(max_image, max_text)
+
+ self._subpages = [] #type: List[Dict[str, Optional[str]]]
+ for n in range(0, highest + 1):
+ self._subpages.append({
+ WhatsNewPagesModel.image_key: None if n not in images else images[n],
+ WhatsNewPagesModel.text_key: None if n not in texts else self._loadText(texts[n])
+ })
+ if len(self._subpages) == 0:
+ self._subpages.append({WhatsNewPagesModel.text_key: "~ There Is Nothing New Under The Sun ~"})
+
+ def _getSubpageItem(self, page: int, item: str) -> Optional[str]:
+ if 0 <= page < self.subpageCount and item in self._subpages[page]:
+ return self._subpages[page][item]
+ else:
+ return None
+
+ @pyqtProperty(int, constant = True)
+ def subpageCount(self) -> int:
+ return len(self._subpages)
+
+ @pyqtSlot(int, result = str)
+ def getSubpageImageSource(self, page: int) -> str:
+ result = self._getSubpageItem(page, WhatsNewPagesModel.image_key)
+ return "file:///" + (result if result else Resources.getPath(Resources.Images, "cura-icon.png"))
+
+ @pyqtSlot(int, result = str)
+ def getSubpageText(self, page: int) -> str:
+ result = self._getSubpageItem(page, WhatsNewPagesModel.text_key)
+ return result if result else "* * *"
__all__ = ["WhatsNewPagesModel"]
diff --git a/cura_app.py b/cura_app.py
index cc8a1d575c..57692ec0ae 100755
--- a/cura_app.py
+++ b/cura_app.py
@@ -16,14 +16,6 @@ import argparse
import faulthandler
import os
-# Workaround for a race condition on certain systems where there
-# is a race condition between Arcus and PyQt. Importing Arcus
-# first seems to prevent Sip from going into a state where it
-# tries to create PyQt objects on a non-main thread.
-import Arcus # @UnusedImport
-import Savitar # @UnusedImport
-import pynest2d # @UnusedImport
-
from PyQt5.QtNetwork import QSslConfiguration, QSslSocket
from UM.Platform import Platform
@@ -226,6 +218,12 @@ if Platform.isLinux() and getattr(sys, "frozen", False):
import trimesh.exchange.load
os.environ["LD_LIBRARY_PATH"] = old_env
+# WORKAROUND: Cura#5488
+# When using the KDE qqc2-desktop-style, the UI layout is completely broken, and
+# even worse, it crashes when switching to the "Preview" pane.
+if Platform.isLinux():
+ os.environ["QT_QUICK_CONTROLS_STYLE"] = "default"
+
if ApplicationMetadata.CuraDebugMode:
ssl_conf = QSslConfiguration.defaultConfiguration()
ssl_conf.setPeerVerifyMode(QSslSocket.VerifyNone)
diff --git a/docker/build.sh b/docker/build.sh
index be1c5f9be3..990d28d2e8 100755
--- a/docker/build.sh
+++ b/docker/build.sh
@@ -7,7 +7,7 @@ SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
PROJECT_DIR="$( cd "${SCRIPT_DIR}/.." && pwd )"
# Make sure that environment variables are set properly
-source /opt/rh/devtoolset-7/enable
+source /opt/rh/devtoolset-8/enable
export PATH="${CURA_BUILD_ENV_PATH}/bin:${PATH}"
export PKG_CONFIG_PATH="${CURA_BUILD_ENV_PATH}/lib/pkgconfig:${PKG_CONFIG_PATH}"
diff --git a/docs/How_to_use_the_flame_graph_profiler.md b/docs/How_to_use_the_flame_graph_profiler.md
index b1cdaf358e..b40a86bb24 100644
--- a/docs/How_to_use_the_flame_graph_profiler.md
+++ b/docs/How_to_use_the_flame_graph_profiler.md
@@ -27,7 +27,7 @@ Note: The profiler front-end itself is quite "heavy" (ok, not optimised). It run
What the Profiler Sees
----------------------
-The profiler doesn't capture every function call in Cura. It hooks into a number of important systems which give a good picture of activity without too much run time overhead. The most important system is Uranium's signal mechanism and PyQt5 slots. Functions which are called via the signal mechanism are recorded and thier names appear in the results. PyQt5 slots appear in the results with the prefix `[SLOT]`.
+The profiler doesn't capture every function call in Cura. It hooks into a number of important systems which give a good picture of activity without too much run time overhead. The most important system is Uranium's signal mechanism and PyQt5 slots. Functions which are called via the signal mechanism are recorded and their names appear in the results. PyQt5 slots appear in the results with the prefix `[SLOT]`.
Note that not all slots are captured. Only those slots which belong to classes which use the `pyqtSlot` decorator from the `UM.FlameProfiler` module.
diff --git a/docs/scene/images/components_interacting_with_scene.jpg b/docs/scene/images/components_interacting_with_scene.jpg
new file mode 100644
index 0000000000..34e34e25af
Binary files /dev/null and b/docs/scene/images/components_interacting_with_scene.jpg differ
diff --git a/docs/scene/images/components_interacting_with_scene.png b/docs/scene/images/components_interacting_with_scene.png
new file mode 100644
index 0000000000..a01a138811
Binary files /dev/null and b/docs/scene/images/components_interacting_with_scene.png differ
diff --git a/docs/scene/images/layer_data_scene_node.jpg b/docs/scene/images/layer_data_scene_node.jpg
new file mode 100644
index 0000000000..313b409ddf
Binary files /dev/null and b/docs/scene/images/layer_data_scene_node.jpg differ
diff --git a/docs/scene/images/mirror_tool.jpg b/docs/scene/images/mirror_tool.jpg
new file mode 100644
index 0000000000..e3d485008e
Binary files /dev/null and b/docs/scene/images/mirror_tool.jpg differ
diff --git a/docs/scene/images/per_objectsettings_tool.jpg b/docs/scene/images/per_objectsettings_tool.jpg
new file mode 100644
index 0000000000..0634177d4b
Binary files /dev/null and b/docs/scene/images/per_objectsettings_tool.jpg differ
diff --git a/docs/scene/images/rotate_tool.jpg b/docs/scene/images/rotate_tool.jpg
new file mode 100644
index 0000000000..4e10569678
Binary files /dev/null and b/docs/scene/images/rotate_tool.jpg differ
diff --git a/docs/scene/images/scale_tool.jpg b/docs/scene/images/scale_tool.jpg
new file mode 100644
index 0000000000..c413aa0caf
Binary files /dev/null and b/docs/scene/images/scale_tool.jpg differ
diff --git a/docs/scene/images/scene_example.jpg b/docs/scene/images/scene_example.jpg
new file mode 100644
index 0000000000..5e787c4420
Binary files /dev/null and b/docs/scene/images/scene_example.jpg differ
diff --git a/docs/scene/images/scene_example_scene_graph.jpg b/docs/scene/images/scene_example_scene_graph.jpg
new file mode 100644
index 0000000000..da8c10169d
Binary files /dev/null and b/docs/scene/images/scene_example_scene_graph.jpg differ
diff --git a/docs/scene/images/selection_tool.jpg b/docs/scene/images/selection_tool.jpg
new file mode 100644
index 0000000000..c9058de526
Binary files /dev/null and b/docs/scene/images/selection_tool.jpg differ
diff --git a/docs/scene/images/support_blocker_tool.jpg b/docs/scene/images/support_blocker_tool.jpg
new file mode 100644
index 0000000000..bdc4b118c2
Binary files /dev/null and b/docs/scene/images/support_blocker_tool.jpg differ
diff --git a/docs/scene/images/tools_tool-handles_class_diagram.jpg b/docs/scene/images/tools_tool-handles_class_diagram.jpg
new file mode 100644
index 0000000000..cd58fad066
Binary files /dev/null and b/docs/scene/images/tools_tool-handles_class_diagram.jpg differ
diff --git a/docs/scene/images/translate_tool.jpg b/docs/scene/images/translate_tool.jpg
new file mode 100644
index 0000000000..80886a7f17
Binary files /dev/null and b/docs/scene/images/translate_tool.jpg differ
diff --git a/docs/scene/operations.md b/docs/scene/operations.md
new file mode 100644
index 0000000000..fe625514be
--- /dev/null
+++ b/docs/scene/operations.md
@@ -0,0 +1,113 @@
+# Operations and the OperationStack
+
+Cura supports an operation stack. The `OperationStack` class maintains a history of the operations performed in Cura, which allows for undo and redo actions. Every operation registers itself in the stack. The OperationStuck supports the following functions:
+
+ * `push(operation)`: Pushes an operation in the stack and applies the operation. This function is called when an operation pushes itself in the stack.
+ * `undo()`: Reverses the actions performed by the last operation and reduces the current index of the stack.
+ * `redo()`: Applies the actions performed by the next operation in the stack and increments the current index of the stack.
+ * `getOperations()`: Returns a list of all the operations that are currently inside the OperationStack
+ * `canUndo()`: Indicates whether the index of the operation stack has reached the bottom of the stack, which means that there are no more operations to be undone.
+ * `canRedo()`: Indicates whether the index of the operation stack has reached the top of the stack, which means that there are no more operations to be redone.
+
+**Note 1:** When consecutive operations are performed very quickly after each other, they are merged together at the top of the stack. This action ensures that these minor operation will be undone with one Undo keystroke (e.g. when moving the object around and you press and release the left mouse button really fast, it is considered as one move operation).
+
+**Note 2:** When an operation is pushed in the middle of the stack, all operations above it are removed from the stack. This ensures that there won't be any "history branches" created.
+
+### Operations
+
+Every action that happens in the scene and affects one or multiple models is associated with a subclass of the `Operation` class and is it added to the `OperationStack`. The subclassed operations that can be found in Cura (excluding the ones from downloadable plugins) are the following:
+
+ * [GroupedOperation](#groupedoperation)
+ * [AddSceneNodeOperation](#addscenenodeoperation)
+ * [RemoveSceneNodeOperation](#removescenenodeoperation)
+ * [SetParentOperation](#setparentoperation)
+ * [SetTransformOperation](#settransformoperation)
+ * [SetObjectExtruderOperation](#setobjectextruderoperation)
+ * [GravityOperation](#gravityoperation)
+ * [PlatformPhysicsOperation](#platformphysicsoperation)
+ * [TranslateOperation](#translateoperation)
+ * [ScaleOperation](#scaleoperation)
+ * [RotateOperation](#rotateoperation)
+ * [MirrorOperation](#mirroroperation)
+ * [LayFlatOperation](#layflatoperation)
+ * [SetBuildPlateNumberOperation]()
+
+### GroupedOperation
+
+The `GroupedOperation` is an operation that groups several other operations together. The intent of this operation is to hide an underlying chain of operations from the user if they correspond to only one interaction with the user, such as an operation applied to multiple scene nodes or a re-arrangement of multiple items in the scene.
+
+Once a `GroupedOperation` is pushed into the stack, it applies all of its children operations in one go. Similarly, when it is undone, it reverses all its children operations at once.
+
+
+### AddSceneNodeOperation
+
+The `AddSceneNodeOperation` is added to the stack whenever a mesh is loaded inside the `Scene`, either by a `FileReader` or by inserting a [Support Blocker](tools.md#supporteraser-tool) in an object.
+
+### RemoveSceneNodeOperation
+
+The `RemoveSceneNodeOperation` is added to the stack whenever a mesh is removed from the Scene by the user or when the user requests to clear the build plate (_Ctrl+D_).
+
+### SetParentOperation
+
+The `SetParentOperation` changes the parent of a node. It is primarily used when grouping (the group node is set as the nodes' parent) and ungrouping (the group's children's parent is set to the group's parent before the group node is deleted), or when a SupportEraser node is added to the scene (to set the selected object as the Eraser's parent).
+
+### SetTransformOperation
+
+The `SetTransformOperation` translates, rotates, and scales a node all at once. This operation accepts a transformation matrix, an orientation matrix, and a scale matrix, and it is used by the _"Reset All Model Positions"_ and _"Reset All Model Transformations"_ options in the right-click (context) menu.
+
+### SetObjectExtruderOperation
+
+This operation is used to set the extruder with which a certain object should be printed with. It adds a [SettingOverrideDecorator](scene.md#settingoverridedecorator) to the object (if it doesn't have any) and then sets the extruder number via the decoration function `node.callDecoration("setActiveExtruder", extruder_id)`.
+
+### GravityOperation
+
+The `GravityOperation` moves a scene node down to 0 on the y-axis. It is currently used by the _"Lay flat"_ and _"Select face to align to the build plate"_ actions of the `RotationTool` to ensure that the object will end up touching the build plate after the corresponding rotation operations have be done.
+
+### PlatformPhysicsOperation
+
+The `PlatformPhysicsOperation` is generated by the `PlatformPhysics` class and it is associated with the preferences _"Ensure models are kept apart"_ and _"Automatically drop models to the build plate"_. If any of these preferences is set to true, the `PlatformPhysics` class periodically checks to make sure that the two conditions are met and if not, it calculates the move vector for each of the nodes that will satisfy the conditions.
+
+Once the move vectors have been computed, they are applied to the nodes through consecutive `PlatformPhysicsOperations`, whose job is to use the `translate` function on the nodes.
+
+**Note:** When there are multiple nodes, multiple `PlatformPhysicsOperations` may be generated (all models may be moved to ensure they are kept apart). These operations eventually get merged together by the `OperationStack` due to the fact that the individual operations are applied very fast one after the other.
+
+### TranslateOperation
+
+The `TranslateOperation` applies a linear transformation on a node, moving the node in the scene. This operation is primarily linked to the [TranslateTool](tools.md#translatetool) but it is also used in other places around Cura, such as arranging objects on the build plate (Ctrl+R) and centering an object to the build plate (via the right-click context menu's _"Center Selected Model"_ option).
+
+When an object is moved using the move tool handles, multiple translate operations are generated to make sure that the object is rendered properly while it is moved. These translate operations are merged together once the user releases the tool handle.
+
+**Note:** Some functionalities may move (translate) nodes without generating a TranslateOperation (such as when a model with is imported from a 3mf into a certain position). This ensures that the moving of the object cannot be accidentally undone by the user.
+
+### ScaleOperation
+
+The `ScaleOperation` scales the selected scene node uniformly or non-uniformly. This operation is primarily generated by the [ScaleTool](tools.md#scaletool).
+
+When an object is scaled using the scale tool handles, multiple scale operations are generated to make sure that the object is rendered properly while it is being resized. These scale operations are merged together once the user releases the tool handle.
+
+**Note:** When the _"Scale extremely small models"_ or the _"Scale large models"_ preferences are enabled the model is scaled when it is inserted into the build plate but it **DOES NOT** generate a `ScaleOperation`. This ensures that Cura doesn't register the scaling as an action that can be undone and the user doesn't accidentally end up with a very big or very small model.
+
+
+### RotateOperation
+
+The `RotateOperation` rotates the selected scene node(s) according to a given rotation quaternion and, optionally, around a given point. This operation is primarily generated by the [RotationTool](tools.md#rotatetool). It is also used by the arrange algorithm, which may rotate some models to fit them in the build plate.
+
+When an object is rotated using the rotate tool handles, multiple rotate operations are generated to make sure that the object is rendered properly while it is being rotated. These operations are merged together once the user releases the tool handle.
+
+### MirrorOperation
+
+The `MirrorOperation` mirrors the selected object. It is primarily associated with the [MirrorTool](tools.md#mirrortool) and allows for mirroring the object in a certain direction, using the `MirrorToolHandles`.
+
+The `MirrorOperation` accepts a transformation matrix that should only define values on the diagonal of the matrix, and only the values 1 or -1. It allows for mirroring around the center of the object or around the axis origin. The latter isn't used that often.
+
+### LayFlatOperation
+
+The `LayFlatOperation` computes some orientation to hopefully lay the object flat on the build plate. It is generated by the `layFlat()` function of the [RotateTool](tools.md#rotatetool). Contrary to the other operations, the `LayFlatOperation` is computed in a separate thread through the `LayFlatJob` since it can be quite computationally expensive.
+
+
+### SetBuildPlateNumberOperation
+
+The `SetBuildPlateNumberOperation` is linked to a legacy feature which allowed the user to have multiple build plates open in Cura at the same time. With this operation it was possible to transfer a node to another build plate through the node's [BuildPlateDecorator](scene.md#buildplatedecorator) by calling the decoration `node.callDecoration("setBuildPlateNumber", new_build_plate_nr)`.
+
+**Note:** Changing the active build plate is a disabled feature in Cura and it is intended to be completely removed (internal ticket: CURA-4975), along with the `SetBuildPlateNumberOperation`.
+
diff --git a/docs/scene/scene.md b/docs/scene/scene.md
index 5539df4a67..265554264c 100644
--- a/docs/scene/scene.md
+++ b/docs/scene/scene.md
@@ -8,19 +8,209 @@ Cura's scene graph is a mere tree data structure. This tree contains all scene n
The main idea behind the scene tree is that each scene node has a transformation applied to it. The scene nodes can be nested beneath other scene nodes. The transformation of the parents is then also applied to the children. This way you can have scene nodes grouped together and transform the group as a whole. Since the transformations are all linear, this ensures that the elements of this group stay in the same relative position and orientation. It will look as if the whole group is a single object. This idea is very common for games where objects are often composed of multiple 3D models but need to move together as a whole. For Cura it is used to group objects together and to transform the collision area correctly.
+Class Diagram
+----
+
+The following class diagram depicts the classes that interact with the Scene
+
+
+
+The scene lives in the Controller of the Application, and it is primarily interacting with SceneNode objects, which are the components of the Scene Graph.
+
+
A Typical Scene
----
-Cura's scene has a few nodes that are always present, and a few nodes that are repeated for every object that the user loads onto their build plate. To give an idea of how a scene normally looks, this is an overview of a typical scene tree for Cura.
+Cura's scene has a few nodes that are always present, and a few nodes that are repeated for every object that the user loads onto their build plate. The root of the scene graph is a SceneNode that lives inside the Scene and contains all the other children SceneNodes of the scene. Typically, inside the root you can find the SceneNodes that are always loaded (the Cameras, the [BuildVolume](build_volume.md), and the Platform), the objects that are loaded on the platform, and finally a ConvexHullNode for each object and each group of objects in the Scene.
-* Root
- * Camera
- * [Build volume](build_volume.md)
- * Platform
- * Object 1
- * Group 1
- * Object 2
- * Object 3
- * Object 1 convex hull node
- * Object 2 convex hull node
- * Object 3 convex hull node
- * Group 1 convex hull node
\ No newline at end of file
+Let's take the following example Scene:
+
+
+
+The scene graph in this case is the following:
+
+
+
+
+**Note 1:** The Platform is actually a child of the BuildVolume.
+
+**Note 2:** The ConvexHullNodes are not actually named after the object they decorate. Their names are used in the image to convey how the ConvexHullNodes are related to the objects in the scene.
+
+**Note 3:** The CuraSceneNode that holds the layer data (inside the BuildVolume) is created and destroyed according to the availability of sliced layer data provided by the CuraEngine. See the [LayerDataDecorator](#layerdatadecorator) for more information.
+
+Accessing SceneNodes in the Scene
+----
+
+SceneNodes can be accessed using a `BreadthFirstIterator` or a `DepthFirstIterator`. Each iterator traverses the scene graph and returns a Python iterator, which yields all the SceneNodes and their children.
+
+``` python
+for node in BreadthFirstIterator(scene.getRoot()):
+ # do stuff with the node
+```
+
+Example result when iterating the above scene graph:
+
+```python
+[i for i in BreadthFirstIterator(CuraApplication.getInstance().getController().getScene().getRoot()]
+```
+ * 00 = {SceneNode}
+ * 01 = {BuildVolume}
+ * 02 = {Camera}
+ * 03 = {CuraSceneNode}
+ * 04 = {CuraSceneNode}
+ * 05 = {Camera}
+ * 06 = {CuraSceneNode}
+ * 07 = {ConvexHullNode}
+ * 08 = {ConvexHullNode}
+ * 09 = {ConvexHullNode}
+ * 10 = {ConvexHullNode}
+ * 11 = {ConvexHullNode}
+ * 12 = {ConvexHullNode}
+ * 13 = {ConvexHullNode}
+ * 14 = {Platform}
+ * 15 = {CuraSceneNode}
+ * 16 = {CuraSceneNode}
+ * 17 = {CuraSceneNode}
+ * 18 = {CuraSceneNode}
+
+SceneNodeDecorators
+----
+
+SceneNodeDecorators are decorators that can be added to the nodes of the scene to provide them with additional functions.
+
+Cura provides the following classes derived from the SceneNodeDecorator class:
+ 1. [GroupDecorator](#groupdecorator)
+ 2. [ConvexHullDecorator](#convexhulldecorator)
+ 3. [SettingOverrideDecorator](#settingoverridedecorator)
+ 4. [SliceableObjectDecorator](#sliceableobjectdecorator)
+ 5. [LayerDataDecorator](#layerdatadecorator)
+ 6. [ZOffsetDecorator](#zoffsetdecorator)
+ 7. [BlockSlicingDecorator](#blockslicingdecorator)
+ 8. [GCodeListDecorator](#gcodelistdecorator)
+ 9. [BuildPlateDecorator](#buildplatedecorator)
+
+GroupDecorator
+----
+
+Whenever objects on the build plate are grouped together, a new node is added in the scene as the parent of the grouped objects. Group nodes can be identified when traversing the SceneGraph by running the following:
+
+```python
+node.callDecoration("isGroup") == True
+```
+
+Group nodes decorated by GroupDecorators are added in the scene either by reading project files which contain grouped objects, or when the user selects multiple objects and groups them together (Ctrl + G).
+
+Group nodes that are left with only one child are removed from the scene, making their only child a child of the group's parent. In addition, group nodes without any remaining children are removed from the scene.
+
+ConvexHullDecorator
+----
+
+As seen in the scene graph of the scene example, each CuraSceneNode that represents an object on the build plate is linked to a ConvexHullNode which is rendered as the object's shadow on the build plate. The ConvexHullDecorator is the link between these two nodes.
+
+In essence, the CuraSceneNode has a ConvexHullDecorator which points to the ConvexHullNode of the object. The data of the object's convex hull can be accessed via
+
+```python
+convex_hull_polygon = object_node.callDecoration("getConvexHull")
+```
+
+The ConvexHullDecorator also provides convex hulls that include the head, the fans, and the adhesion of the object. These are primarily used and rendered when One-at-a-time mode is activated.
+
+For more information on the functions added to the node by this decorator, visit the [ConvexHullDecorator.py](https://github.com/Ultimaker/Cura/blob/master/cura/Scene/ConvexHullDecorator.py).
+
+SettingOverrideDecorator
+----
+
+SettingOverrideDecorators are primarily used for modifier meshes such as support meshes, cutting meshes, infill meshes, and anti-overhang meshes. When a user converts an object to a modifier mesh, the object's node is decorated by a SettingOverrideDecorator. This decorator adds a PerObjectContainerStack to the CuraSceneNode, which allows the user to modify the settings of the specific model.
+
+For more information on the functions added to the node by this decorator, visit the [SettingOverrideDecorator.py](https://github.com/Ultimaker/Cura/blob/master/cura/Settings/SettingOverrideDecorator.py).
+
+
+SliceableObjectDecorator
+----
+
+This is a convenience decorator that allows us to easily identify the nodes which can be sliced. All **individual** objects (meshes) added to the build plate receive this decorator, apart from the nodes loaded from GCode files (.gcode, .g, .gz, .ufp).
+
+The SceneNodes that do not receive this decorator are:
+
+ - Cameras
+ - BuildVolume
+ - Platform
+ - ConvexHullNodes
+ - CuraSceneNodes that serve as group nodes (these have a GroupDecorator instead)
+ - The CuraSceneNode that serves as the layer data node
+ - ToolHandles
+ - NozzleNode
+ - Nodes that contain GCode data. See the [BlockSlicingDecorator](#blockslicingdecorator) for more information on that.
+
+This decorator provides the following function to the node:
+
+```python
+node.callDecoration("isSliceable")
+```
+
+LayerDataDecorator
+----
+
+Once the Slicing has completed and the CuraEngine has returned the slicing data, Cura creates a CuraSceneNode inside the BuildVolume which is decorated by a LayerDataDecorator. This decorator holds the layer data of the scene.
+
+
+
+The layer data can be accessed through the function given to the aforementioned CuraSceneNode by the LayerDataDecorator:
+
+```python
+node.callDecoration("getLayerData")
+```
+
+This CuraSceneNode is created once Cura has completed processing the Layer data (after the user clicks on the Preview tab after slicing). The CuraSceneNode then is destroyed once any action that changes the Scene occurs (e.g. if the user moves/rotates/scales an object or changes a setting value), indicating that the layer data is no longer available. When that happens, the "Slice" button becomes available again.
+
+ZOffsetDecorator
+----
+
+The ZOffsetDecorator is added to an object in the scene when that object is moved below the build plate. It is primarily used when the "Automatically drop models to the build plate" preference is enabled, in order to make sure that the GravityOperation, which drops the mode on the build plate, is not applied when the object is moved under the build plate.
+
+The amount the object is moved under the build plate can be retrieved by calling the "getZOffset" decoration on the node:
+
+```python
+z_offset = node.callDecoration("getZOffset")
+```
+
+The ZOffsetDecorator is removed from the node when the node is move above the build plate.
+
+BlockSlicingDecorator
+----
+
+The BlockSlicingDecorator is the opposite of the SliceableObjectDecorator. It is added on objects loaded on the scene which should not be sliced. This decorator is primarily added on objects loaded from ".gcode", ".ufp", ".g", and ".gz" files. Such an object already contains all the slice information and therefore should not allow Cura to slice it.
+
+If an object with a BlockSlicingDecorator appears in the scene, the backend (CuraEngine) and the print setup (changing print settings) become disabled, considering that G-code files cannot be modified.
+
+The BlockSlicingDecorator adds the following decoration function to the node:
+
+```python
+node.callDecoration("isBlockSlicing")
+```
+
+GCodeListDecorator
+----
+
+The GCodeListDecorator is also added only when a file containing GCode is loaded in the scene. It's purpose is to hold a list of all the GCode data of the loaded object.
+The GCode list data is stored in the scene's gcode_dict attribute which then is used in other places in the Cura code, e.g. to provide the GCode to the GCodeWriter or to the PostProcessingPlugin.
+
+The GCode data becomes available by calling the "getGCodeList" decoration of the node:
+
+```python
+gcode_list = node.callDecoration("getGCodeList")
+```
+
+The CuraSceneNode with the GCodeListDecorator is destroyed when another object or project file is loaded in the Scene.
+
+BuildPlateDecorator
+----
+
+The BuildPlateDecorator is added to all the CuraSceneNodes. This decorator is linked to a legacy feature which allowed the user to have multiple build plates open in Cura at the same time. With this decorator it was possible to determine which nodes are present on each build plate, and therefore, which objects should be visible in the currently active build plate. It indicates the number of the build plate this scene node belongs to, which currently is always the build plate -1.
+
+This decorator provides a function to the node that returns the number of the build plate it belongs to:
+
+```python
+node.callDecoration("getBuildPlateNumber")
+```
+
+**Note:** Changing the active build plate is a disabled feature in Cura and it is intended to be completely removed (internal ticket: CURA-4975).
diff --git a/docs/scene/tools.md b/docs/scene/tools.md
new file mode 100644
index 0000000000..0418bf4a97
--- /dev/null
+++ b/docs/scene/tools.md
@@ -0,0 +1,86 @@
+# Tools
+
+Tools are plugin objects which are used to manipulate or interact with the scene and the objects (node) in the scene.
+
+
+
+Tools live inside the Controller of the Application and may be associated with ToolHandles. Some of them interact with the scene as a whole (such as the Camera), while others interact with the objects (nodes) in the Scene (selection tool, rotate tool, scale tool etc.). The tools that are available in Cura (excluding the ones provided by downloadable plugins) are the following:
+
+ * [CameraTool](#cameratool)
+ * [SelectionTool](#selectiontool)
+ * [TranslateTool](#translatetool)
+ * [ScaleTool](#scaletool)
+ * [RotateTool](#rotatetool)
+ * [MirrorTool](#mirrortool)
+ * [PerObjectSettingsTool](#perobjectsettingstool)
+ * [SupportEraserTool](#supporteraser)
+
+*****
+
+### CameraTool
+
+The CameraTool is the tool that allows the user to manipulate the Camera. It provides the functions of moving, zooming, and rotating the Camera. This tool does not contain a handle.
+
+### SelectionTool
+This tool allows the user to select objects and groups of objects in the scene. The selected objects gain a blue outline and become available in the code through the Selection class.
+
+
+
+This tool does not contain a handle.
+
+### TranslateTool
+
+This tool allows the user to move the object around the build plate. The TranslateTool is activated once the user presses the Move icon in the tool sidebar or hits the shortcut (T) while an object is selected.
+
+
+
+The TranslateTool contains the TranslateToolHandle, which draws the arrow handles on the selected object(s). The TranslateTool generates TranslateOperations whenever the object is moved around the build plate.
+
+
+### ScaleTool
+
+This tool allows the user to scale the selected object(s). The ScaleTool is activated once the user presses the Scale icon in the tool sidebar or hits the shortcut (S) while an object is selected.
+
+
+
+The ScaleTool contains the ScaleToolHandle, which draws the box handles on the selected object(s). The ScaleTool generates ScaleOperations whenever the object is scaled.
+
+### RotateTool
+
+This tool allows the user to rotate the selected object(s). The RotateTool is activated once the user presses the Rotate icon in the tool sidebar or hits the shortcut (R) while an object is selected.
+
+
+
+The RotateTool contains the RotateToolHandle, which draws the donuts (tori) and arrow handles on the selected object(s). The RotateTool generates RotateOperations whenever the object is rotated or if a face is selected to be laid flat on the build plate. It also contains the `layFlat()` action, which generates the [LayFlatOperation](operations.md#layflatoperation).
+
+
+### MirrorTool
+
+This tool allows the user to mirror the selected object(s) in the required direction. The MirrorTool is activated once the user presses the Mirror icon in the tool sidebar or hits the shortcut (M) while an object is selected.
+
+
+
+The MirrorTool contains the MirrorToolHandle, which draws pyramid handles on the selected object(s). The MirrorTool generates MirrorOperations whenever the object is mirrored against an axis.
+
+### PerObjectSettingsTool
+
+This tool allows the user to change the mesh type of the object into one of the following:
+
+ * Normal Model
+ * Print as support
+ * Modify settings for overlaps
+ - Infill mesh only
+ - Cutting mesh
+ * Don't support overlaps
+
+
+
+Contrary to other tools, this tool doesn't have any handles and it does not generate any operations. This means that once an object's type is changed it cannot be undone/redone using the OperationStack. This tool adds a [SettingOverrideDecorator](scene.md#settingoverridedecorator) on the object's node instead, which allows the user to change certain settings only for this mesh.
+
+### SupportEraser tool
+
+This tool allows the user to add support blockers on the selected model. The SupportEraserTool is activated once the user pressed the Support Blocker icon in the tool sidebar or hits the shortcut (E) while an object is selected. With this tool active, the user can add support blockers (cubes) on the object by clicking on various places on the selected mesh.
+
+
+
+The SupportEraser uses a GroupOperation to add a new CuraSceneNode (the eraser) in the scene and set the selected model as the parent of the eraser. This means that the addition of Erasers in the scene can be undone/redone. The SupportEraser does not have any tool handles.
\ No newline at end of file
diff --git a/plugins/3MFReader/ThreeMFReader.py b/plugins/3MFReader/ThreeMFReader.py
index 2e3f5630c1..37ca1e98aa 100755
--- a/plugins/3MFReader/ThreeMFReader.py
+++ b/plugins/3MFReader/ThreeMFReader.py
@@ -1,4 +1,4 @@
-# Copyright (c) 2019 Ultimaker B.V.
+# Copyright (c) 2021 Ultimaker B.V.
# Cura is released under the terms of the LGPLv3 or higher.
import os.path
@@ -51,6 +51,10 @@ class ThreeMFReader(MeshReader):
self._root = None
self._base_name = ""
self._unit = None
+ self._empty_project = False
+
+ def emptyFileHintSet(self) -> bool:
+ return self._empty_project
def _createMatrixFromTransformationString(self, transformation: str) -> Matrix:
if transformation == "":
@@ -159,9 +163,9 @@ class ThreeMFReader(MeshReader):
um_node.callDecoration("getStack").getTop().setDefinition(definition_id)
setting_container = um_node.callDecoration("getStack").getTop()
-
+ known_setting_keys = um_node.callDecoration("getStack").getAllKeys()
for key in settings:
- setting_value = settings[key]
+ setting_value = settings[key].value
# Extruder_nr is a special case.
if key == "extruder_nr":
@@ -171,7 +175,10 @@ class ThreeMFReader(MeshReader):
else:
Logger.log("w", "Unable to find extruder in position %s", setting_value)
continue
- setting_container.setProperty(key, "value", setting_value)
+ if key in known_setting_keys:
+ setting_container.setProperty(key, "value", setting_value)
+ else:
+ um_node.metadata[key] = settings[key]
if len(um_node.getChildren()) > 0 and um_node.getMeshData() is None:
if len(um_node.getAllChildren()) == 1:
@@ -193,6 +200,7 @@ class ThreeMFReader(MeshReader):
return um_node
def _read(self, file_name: str) -> Union[SceneNode, List[SceneNode]]:
+ self._empty_project = False
result = []
# The base object of 3mf is a zipped archive.
try:
@@ -201,6 +209,10 @@ class ThreeMFReader(MeshReader):
parser = Savitar.ThreeMFParser()
scene_3mf = parser.parse(archive.open("3D/3dmodel.model").read())
self._unit = scene_3mf.getUnit()
+
+ for key, value in scene_3mf.getMetadata().items():
+ CuraApplication.getInstance().getController().getScene().setMetaDataEntry(key, value)
+
for node in scene_3mf.getSceneNodes():
um_node = self._convertSavitarNodeToUMNode(node, file_name)
if um_node is None:
@@ -257,6 +269,9 @@ class ThreeMFReader(MeshReader):
result.append(um_node)
+ if len(result) == 0:
+ self._empty_project = True
+
except Exception:
Logger.logException("e", "An exception occurred in 3mf reader.")
return []
diff --git a/plugins/3MFReader/ThreeMFWorkspaceReader.py b/plugins/3MFReader/ThreeMFWorkspaceReader.py
index 1c0088dd98..d0442e083b 100755
--- a/plugins/3MFReader/ThreeMFWorkspaceReader.py
+++ b/plugins/3MFReader/ThreeMFWorkspaceReader.py
@@ -1,4 +1,4 @@
-# Copyright (c) 2020 Ultimaker B.V.
+# Copyright (c) 2021 Ultimaker B.V.
# Cura is released under the terms of the LGPLv3 or higher.
from configparser import ConfigParser
@@ -412,7 +412,12 @@ class ThreeMFWorkspaceReader(WorkspaceReader):
quality_container_id = parser["containers"][str(_ContainerIndexes.Quality)]
quality_type = "empty_quality"
if quality_container_id not in ("empty", "empty_quality"):
- quality_type = instance_container_info_dict[quality_container_id].parser["metadata"]["quality_type"]
+ if quality_container_id in instance_container_info_dict:
+ quality_type = instance_container_info_dict[quality_container_id].parser["metadata"]["quality_type"]
+ else: # If a version upgrade changed the quality profile in the stack, we'll need to look for it in the built-in profiles instead of the workspace.
+ quality_matches = ContainerRegistry.getInstance().findContainersMetadata(id = quality_container_id)
+ if quality_matches: # If there's no profile with this ID, leave it empty_quality.
+ quality_type = quality_matches[0]["quality_type"]
# Get machine info
serialized = archive.open(global_stack_file).read().decode("utf-8")
@@ -1157,7 +1162,7 @@ class ThreeMFWorkspaceReader(WorkspaceReader):
return
machine_manager.setQualityChangesGroup(quality_changes_group, no_dialog = True)
else:
- self._quality_type_to_apply = self._quality_type_to_apply.lower()
+ self._quality_type_to_apply = self._quality_type_to_apply.lower() if self._quality_type_to_apply else None
quality_group_dict = container_tree.getCurrentQualityGroups()
if self._quality_type_to_apply in quality_group_dict:
quality_group = quality_group_dict[self._quality_type_to_apply]
diff --git a/plugins/3MFReader/WorkspaceDialog.qml b/plugins/3MFReader/WorkspaceDialog.qml
index 1fd20a3534..450f01fbd5 100644
--- a/plugins/3MFReader/WorkspaceDialog.qml
+++ b/plugins/3MFReader/WorkspaceDialog.qml
@@ -419,7 +419,7 @@ UM.Dialog
width: warningLabel.height
height: width
- source: UM.Theme.getIcon("notice")
+ source: UM.Theme.getIcon("Information")
color: palette.text
}
diff --git a/plugins/3MFReader/plugin.json b/plugins/3MFReader/plugin.json
index b80d83ae01..09fcf6c573 100644
--- a/plugins/3MFReader/plugin.json
+++ b/plugins/3MFReader/plugin.json
@@ -3,6 +3,6 @@
"author": "Ultimaker B.V.",
"version": "1.0.1",
"description": "Provides support for reading 3MF files.",
- "api": "7.4.0",
+ "api": 7,
"i18n-catalog": "cura"
}
diff --git a/plugins/3MFWriter/ThreeMFWriter.py b/plugins/3MFWriter/ThreeMFWriter.py
index 6c02935080..c85eca88bf 100644
--- a/plugins/3MFWriter/ThreeMFWriter.py
+++ b/plugins/3MFWriter/ThreeMFWriter.py
@@ -14,6 +14,7 @@ from cura.CuraApplication import CuraApplication
import Savitar
import numpy
+import datetime
MYPY = False
try:
@@ -108,7 +109,11 @@ class ThreeMFWriter(MeshWriter):
# Get values for all changed settings & save them.
for key in changed_setting_keys:
- savitar_node.setSetting(key, str(stack.getProperty(key, "value")))
+ savitar_node.setSetting("cura:" + key, str(stack.getProperty(key, "value")))
+
+ # Store the metadata.
+ for key, value in um_node.metadata.items():
+ savitar_node.setSetting(key, value)
for child_node in um_node.getChildren():
# only save the nodes on the active build plate
@@ -145,6 +150,22 @@ class ThreeMFWriter(MeshWriter):
model_relation_element = ET.SubElement(relations_element, "Relationship", Target = "/3D/3dmodel.model", Id = "rel0", Type = "http://schemas.microsoft.com/3dmanufacturing/2013/01/3dmodel")
savitar_scene = Savitar.Scene()
+
+ metadata_to_store = CuraApplication.getInstance().getController().getScene().getMetaData()
+
+ for key, value in metadata_to_store.items():
+ savitar_scene.setMetaDataEntry(key, value)
+
+ current_time_string = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
+ if "Application" not in metadata_to_store:
+ # This might sound a bit strange, but this field should store the original application that created
+ # the 3mf. So if it was already set, leave it to whatever it was.
+ savitar_scene.setMetaDataEntry("Application", CuraApplication.getInstance().getApplicationDisplayName())
+ if "CreationDate" not in metadata_to_store:
+ savitar_scene.setMetaDataEntry("CreationDate", current_time_string)
+
+ savitar_scene.setMetaDataEntry("ModificationDate", current_time_string)
+
transformation_matrix = Matrix()
transformation_matrix._data[1, 1] = 0
transformation_matrix._data[1, 2] = -1
diff --git a/plugins/3MFWriter/plugin.json b/plugins/3MFWriter/plugin.json
index 18611f84f0..8e6a5785a7 100644
--- a/plugins/3MFWriter/plugin.json
+++ b/plugins/3MFWriter/plugin.json
@@ -3,6 +3,6 @@
"author": "Ultimaker B.V.",
"version": "1.0.1",
"description": "Provides support for writing 3MF files.",
- "api": "7.4.0",
+ "api": 7,
"i18n-catalog": "cura"
}
diff --git a/plugins/AMFReader/AMFReader.py b/plugins/AMFReader/AMFReader.py
index ef785f2f53..5bbd25df1b 100644
--- a/plugins/AMFReader/AMFReader.py
+++ b/plugins/AMFReader/AMFReader.py
@@ -157,22 +157,22 @@ class AMFReader(MeshReader):
tri_faces = tri_node.faces
tri_vertices = tri_node.vertices
- indices = []
- vertices = []
+ indices_list = []
+ vertices_list = []
index_count = 0
face_count = 0
for tri_face in tri_faces:
face = []
for tri_index in tri_face:
- vertices.append(tri_vertices[tri_index])
+ vertices_list.append(tri_vertices[tri_index])
face.append(index_count)
index_count += 1
- indices.append(face)
+ indices_list.append(face)
face_count += 1
- vertices = numpy.asarray(vertices, dtype = numpy.float32)
- indices = numpy.asarray(indices, dtype = numpy.int32)
+ vertices = numpy.asarray(vertices_list, dtype = numpy.float32)
+ indices = numpy.asarray(indices_list, dtype = numpy.int32)
normals = calculateNormalsFromIndexedVertices(vertices, indices, face_count)
mesh_data = MeshData(vertices = vertices, indices = indices, normals = normals,file_name = file_name)
diff --git a/plugins/AMFReader/plugin.json b/plugins/AMFReader/plugin.json
index 632a2dcd7e..40b4917b97 100644
--- a/plugins/AMFReader/plugin.json
+++ b/plugins/AMFReader/plugin.json
@@ -3,5 +3,5 @@
"author": "fieldOfView",
"version": "1.0.0",
"description": "Provides support for reading AMF files.",
- "api": "7.4.0"
+ "api": 7
}
diff --git a/plugins/CuraDrive/plugin.json b/plugins/CuraDrive/plugin.json
index 14c3b45b6d..62a23e5882 100644
--- a/plugins/CuraDrive/plugin.json
+++ b/plugins/CuraDrive/plugin.json
@@ -3,6 +3,6 @@
"author": "Ultimaker B.V.",
"description": "Backup and restore your configuration.",
"version": "1.2.0",
- "api": "7.4.0",
+ "api": 7,
"i18n-catalog": "cura"
}
diff --git a/plugins/CuraDrive/src/CreateBackupJob.py b/plugins/CuraDrive/src/CreateBackupJob.py
index d427f03573..ab1989f382 100644
--- a/plugins/CuraDrive/src/CreateBackupJob.py
+++ b/plugins/CuraDrive/src/CreateBackupJob.py
@@ -5,7 +5,6 @@ import threading
from datetime import datetime
from typing import Any, Dict, Optional
-import sentry_sdk
from PyQt5.QtNetwork import QNetworkReply
from UM.Job import Job
@@ -99,13 +98,7 @@ class CreateBackupJob(Job):
if HttpRequestManager.safeHttpStatus(reply) == 400:
errors = json.loads(replyText)["errors"]
if "moreThanMaximum" in [error["code"] for error in errors if error["meta"] and error["meta"]["field_name"] == "backup_size"]:
- if self._backup_zip is None: # will never happen; keep mypy happy
- zip_error = "backup is None."
- else:
- zip_error = "{} exceeds max size.".format(str(len(self._backup_zip)))
- sentry_sdk.capture_message("backup failed: {}".format(zip_error), level ="warning")
self.backup_upload_error_message = catalog.i18nc("@error:file_size", "The backup exceeds the maximum file size.")
- from sentry_sdk import capture_message
self._job_done.set()
return
diff --git a/plugins/CuraDrive/src/DriveApiService.py b/plugins/CuraDrive/src/DriveApiService.py
index 2248b64389..6dd6f02b97 100644
--- a/plugins/CuraDrive/src/DriveApiService.py
+++ b/plugins/CuraDrive/src/DriveApiService.py
@@ -43,6 +43,10 @@ class DriveApiService:
return
backup_list_response = HttpRequestManager.readJSON(reply)
+ if backup_list_response is None:
+ Logger.error("List of back-ups can't be parsed.")
+ changed([])
+ return
if "data" not in backup_list_response:
Logger.log("w", "Could not get backups from remote, actual response body was: %s",
str(backup_list_response))
@@ -89,7 +93,7 @@ class DriveApiService:
def _onRestoreFinished(self, job: "RestoreBackupJob") -> None:
if job.restore_backup_error_message != "":
# If the job contains an error message we pass it along so the UI can display it.
- self.restoringStateChanged.emit(is_restoring=False)
+ self.restoringStateChanged.emit(is_restoring = False)
else:
self.restoringStateChanged.emit(is_restoring = False, error_message = job.restore_backup_error_message)
diff --git a/plugins/CuraDrive/src/DrivePluginExtension.py b/plugins/CuraDrive/src/DrivePluginExtension.py
index 8de4876f52..3a7a59a172 100644
--- a/plugins/CuraDrive/src/DrivePluginExtension.py
+++ b/plugins/CuraDrive/src/DrivePluginExtension.py
@@ -34,6 +34,9 @@ class DrivePluginExtension(QObject, Extension):
# Signal emitted when preferences changed (like auto-backup).
preferencesChanged = pyqtSignal()
+ # Signal emitted when the id of the backup-to-be-restored is changed
+ backupIdBeingRestoredChanged = pyqtSignal(arguments = ["backup_id_being_restored"])
+
DATE_FORMAT = "%d/%m/%Y %H:%M:%S"
def __init__(self) -> None:
@@ -45,6 +48,7 @@ class DrivePluginExtension(QObject, Extension):
self._backups = [] # type: List[Dict[str, Any]]
self._is_restoring_backup = False
self._is_creating_backup = False
+ self._backup_id_being_restored = ""
# Initialize services.
preferences = CuraApplication.getInstance().getPreferences()
@@ -52,6 +56,7 @@ class DrivePluginExtension(QObject, Extension):
# Attach signals.
CuraApplication.getInstance().getCuraAPI().account.loginStateChanged.connect(self._onLoginStateChanged)
+ CuraApplication.getInstance().applicationShuttingDown.connect(self._onApplicationShuttingDown)
self._drive_api_service.restoringStateChanged.connect(self._onRestoringStateChanged)
self._drive_api_service.creatingStateChanged.connect(self._onCreatingStateChanged)
@@ -75,6 +80,10 @@ class DrivePluginExtension(QObject, Extension):
if self._drive_window:
self._drive_window.show()
+ def _onApplicationShuttingDown(self):
+ if self._drive_window:
+ self._drive_window.hide()
+
def _autoBackup(self) -> None:
preferences = CuraApplication.getInstance().getPreferences()
if preferences.getValue(Settings.AUTO_BACKUP_ENABLED_PREFERENCE_KEY) and self._isLastBackupTooLongAgo():
@@ -100,10 +109,11 @@ class DrivePluginExtension(QObject, Extension):
if logged_in:
self.refreshBackups()
- def _onRestoringStateChanged(self, is_restoring: bool = False, error_message: str = None) -> None:
+ def _onRestoringStateChanged(self, is_restoring: bool = False, error_message: Optional[str] = None) -> None:
self._is_restoring_backup = is_restoring
self.restoringStateChanged.emit()
if error_message:
+ self.backupIdBeingRestored = ""
Message(error_message, title = catalog.i18nc("@info:title", "Backup")).show()
def _onCreatingStateChanged(self, is_creating: bool = False, error_message: str = None) -> None:
@@ -152,6 +162,7 @@ class DrivePluginExtension(QObject, Extension):
for backup in self._backups:
if backup.get("backup_id") == backup_id:
self._drive_api_service.restoreBackup(backup)
+ self.setBackupIdBeingRestored(backup_id)
return
Logger.log("w", "Unable to find backup with the ID %s", backup_id)
@@ -166,3 +177,12 @@ class DrivePluginExtension(QObject, Extension):
def _backupDeletedCallback(self, success: bool):
if success:
self.refreshBackups()
+
+ def setBackupIdBeingRestored(self, backup_id_being_restored: str) -> None:
+ if backup_id_being_restored != self._backup_id_being_restored:
+ self._backup_id_being_restored = backup_id_being_restored
+ self.backupIdBeingRestoredChanged.emit()
+
+ @pyqtProperty(str, fset = setBackupIdBeingRestored, notify = backupIdBeingRestoredChanged)
+ def backupIdBeingRestored(self) -> str:
+ return self._backup_id_being_restored
diff --git a/plugins/CuraDrive/src/RestoreBackupJob.py b/plugins/CuraDrive/src/RestoreBackupJob.py
index c60de116e0..f59acbc8b7 100644
--- a/plugins/CuraDrive/src/RestoreBackupJob.py
+++ b/plugins/CuraDrive/src/RestoreBackupJob.py
@@ -1,3 +1,6 @@
+# Copyright (c) 2021 Ultimaker B.V.
+# Cura is released under the terms of the LGPLv3 or higher.
+
import base64
import hashlib
import threading
@@ -56,14 +59,20 @@ class RestoreBackupJob(Job):
return
# We store the file in a temporary path fist to ensure integrity.
- temporary_backup_file = NamedTemporaryFile(delete = False)
- with open(temporary_backup_file.name, "wb") as write_backup:
- app = CuraApplication.getInstance()
- bytes_read = reply.read(self.DISK_WRITE_BUFFER_SIZE)
- while bytes_read:
- write_backup.write(bytes_read)
+ try:
+ temporary_backup_file = NamedTemporaryFile(delete = False)
+ with open(temporary_backup_file.name, "wb") as write_backup:
+ app = CuraApplication.getInstance()
bytes_read = reply.read(self.DISK_WRITE_BUFFER_SIZE)
- app.processEvents()
+ while bytes_read:
+ write_backup.write(bytes_read)
+ bytes_read = reply.read(self.DISK_WRITE_BUFFER_SIZE)
+ app.processEvents()
+ except EnvironmentError as e:
+ Logger.log("e", f"Unable to save backed up files due to computer limitations: {str(e)}")
+ self.restore_backup_error_message = self.DEFAULT_ERROR_MESSAGE
+ self._job_done.set()
+ return
if not self._verifyMd5Hash(temporary_backup_file.name, self._backup.get("md5_hash", "")):
# Don't restore the backup if the MD5 hashes do not match.
diff --git a/plugins/CuraDrive/src/qml/components/BackupListFooter.qml b/plugins/CuraDrive/src/qml/components/BackupListFooter.qml
index 8decdc5c27..15af7521ed 100644
--- a/plugins/CuraDrive/src/qml/components/BackupListFooter.qml
+++ b/plugins/CuraDrive/src/qml/components/BackupListFooter.qml
@@ -20,7 +20,7 @@ RowLayout
{
id: infoButton
text: catalog.i18nc("@button", "Want more?")
- iconSource: UM.Theme.getIcon("info")
+ iconSource: UM.Theme.getIcon("Information")
onClicked: Qt.openUrlExternally("https://goo.gl/forms/QACEP8pP3RV60QYG2")
visible: backupListFooter.showInfoButton
}
@@ -29,7 +29,7 @@ RowLayout
{
id: createBackupButton
text: catalog.i18nc("@button", "Backup Now")
- iconSource: UM.Theme.getIcon("plus")
+ iconSource: UM.Theme.getIcon("Plus")
enabled: !CuraDrive.isCreatingBackup && !CuraDrive.isRestoringBackup
onClicked: CuraDrive.createBackup()
busy: CuraDrive.isCreatingBackup
diff --git a/plugins/CuraDrive/src/qml/components/BackupListItem.qml b/plugins/CuraDrive/src/qml/components/BackupListItem.qml
index 5cdb500b4e..e35c8351b7 100644
--- a/plugins/CuraDrive/src/qml/components/BackupListItem.qml
+++ b/plugins/CuraDrive/src/qml/components/BackupListItem.qml
@@ -38,7 +38,7 @@ Item
height: UM.Theme.getSize("section_icon").height
color: UM.Theme.getColor("small_button_text")
hoverColor: UM.Theme.getColor("small_button_text_hover")
- iconSource: UM.Theme.getIcon("info")
+ iconSource: UM.Theme.getIcon("Information")
onClicked: backupListItem.showDetails = !backupListItem.showDetails
}
@@ -71,6 +71,7 @@ Item
text: catalog.i18nc("@button", "Restore")
enabled: !CuraDrive.isCreatingBackup && !CuraDrive.isRestoringBackup
onClicked: confirmRestoreDialog.visible = true
+ busy: CuraDrive.backupIdBeingRestored == modelData.backup_id && CuraDrive.isRestoringBackup
}
UM.SimpleButton
@@ -79,7 +80,7 @@ Item
height: UM.Theme.getSize("message_close").height
color: UM.Theme.getColor("small_button_text")
hoverColor: UM.Theme.getColor("small_button_text_hover")
- iconSource: UM.Theme.getIcon("cross1")
+ iconSource: UM.Theme.getIcon("Cancel")
onClicked: confirmDeleteDialog.visible = true
}
}
diff --git a/plugins/CuraDrive/src/qml/components/BackupListItemDetails.qml b/plugins/CuraDrive/src/qml/components/BackupListItemDetails.qml
index 4da15c6f16..a4f30edd19 100644
--- a/plugins/CuraDrive/src/qml/components/BackupListItemDetails.qml
+++ b/plugins/CuraDrive/src/qml/components/BackupListItemDetails.qml
@@ -1,4 +1,4 @@
-// Copyright (c) 2018 Ultimaker B.V.
+// Copyright (c) 2021 Ultimaker B.V.
// Cura is released under the terms of the LGPLv3 or higher.
import QtQuick 2.7
@@ -17,7 +17,7 @@ ColumnLayout
// Cura version
BackupListItemDetailsRow
{
- iconSource: UM.Theme.getIcon("application")
+ iconSource: UM.Theme.getIcon("UltimakerCura")
label: catalog.i18nc("@backuplist:label", "Cura Version")
value: backupDetailsData.metadata.cura_release
}
@@ -25,7 +25,7 @@ ColumnLayout
// Machine count.
BackupListItemDetailsRow
{
- iconSource: UM.Theme.getIcon("printer_single")
+ iconSource: UM.Theme.getIcon("Printer")
label: catalog.i18nc("@backuplist:label", "Machines")
value: backupDetailsData.metadata.machine_count
}
@@ -33,7 +33,7 @@ ColumnLayout
// Material count
BackupListItemDetailsRow
{
- iconSource: UM.Theme.getIcon("category_material")
+ iconSource: UM.Theme.getIcon("Spool")
label: catalog.i18nc("@backuplist:label", "Materials")
value: backupDetailsData.metadata.material_count
}
@@ -41,7 +41,7 @@ ColumnLayout
// Profile count.
BackupListItemDetailsRow
{
- iconSource: UM.Theme.getIcon("settings")
+ iconSource: UM.Theme.getIcon("Sliders")
label: catalog.i18nc("@backuplist:label", "Profiles")
value: backupDetailsData.metadata.profile_count
}
@@ -49,7 +49,7 @@ ColumnLayout
// Plugin count.
BackupListItemDetailsRow
{
- iconSource: UM.Theme.getIcon("plugin")
+ iconSource: UM.Theme.getIcon("Plugin")
label: catalog.i18nc("@backuplist:label", "Plugins")
value: backupDetailsData.metadata.plugin_count
}
diff --git a/plugins/CuraDrive/src/qml/pages/BackupsPage.qml b/plugins/CuraDrive/src/qml/pages/BackupsPage.qml
index c337294744..bb17cea973 100644
--- a/plugins/CuraDrive/src/qml/pages/BackupsPage.qml
+++ b/plugins/CuraDrive/src/qml/pages/BackupsPage.qml
@@ -69,7 +69,7 @@ Item
BackupListFooter
{
id: backupListFooter
- showInfoButton: backupList.model.length > 4
+
}
}
}
diff --git a/plugins/CuraEngineBackend/CuraEngineBackend.py b/plugins/CuraEngineBackend/CuraEngineBackend.py
index 4b196f7b5d..fa9a8c5474 100755
--- a/plugins/CuraEngineBackend/CuraEngineBackend.py
+++ b/plugins/CuraEngineBackend/CuraEngineBackend.py
@@ -1,14 +1,16 @@
-# Copyright (c) 2018 Ultimaker B.V.
+# Copyright (c) 2021 Ultimaker B.V.
# Cura is released under the terms of the LGPLv3 or higher.
import argparse #To run the engine in debug mode if the front-end is in debug mode.
from collections import defaultdict
import os
-from PyQt5.QtCore import QObject, QTimer, pyqtSlot
+from PyQt5.QtCore import QObject, QTimer, QUrl, pyqtSlot
import sys
from time import time
from typing import Any, cast, Dict, List, Optional, Set, TYPE_CHECKING
+from PyQt5.QtGui import QDesktopServices, QImage
+
from UM.Backend.Backend import Backend, BackendState
from UM.Scene.SceneNode import SceneNode
from UM.Signal import Signal
@@ -24,6 +26,8 @@ from UM.Tool import Tool #For typing.
from cura.CuraApplication import CuraApplication
from cura.Settings.ExtruderManager import ExtruderManager
+from cura.Snapshot import Snapshot
+from cura.Utils.Threading import call_on_qt_thread
from .ProcessSlicedLayersJob import ProcessSlicedLayersJob
from .StartSliceJob import StartSliceJob, StartJobResult
@@ -153,6 +157,20 @@ class CuraEngineBackend(QObject, Backend):
self.determineAutoSlicing()
application.getPreferences().preferenceChanged.connect(self._onPreferencesChanged)
+ self._slicing_error_message = Message(
+ text = catalog.i18nc("@message", "Slicing failed with an unexpected error. Please consider reporting a bug on our issue tracker."),
+ title = catalog.i18nc("@message:title", "Slicing failed")
+ )
+ self._slicing_error_message.addAction(
+ action_id = "report_bug",
+ name = catalog.i18nc("@message:button", "Report a bug"),
+ description = catalog.i18nc("@message:description", "Report a bug on Ultimaker Cura's issue tracker."),
+ icon = "[no_icon]"
+ )
+ self._slicing_error_message.actionTriggered.connect(self._reportBackendError)
+
+ self._snapshot = None #type: Optional[QImage]
+
application.initializationFinished.connect(self.initialize)
def initialize(self) -> None:
@@ -241,9 +259,27 @@ class CuraEngineBackend(QObject, Backend):
self.markSliceAll()
self.slice()
+ @call_on_qt_thread # must be called from the main thread because of OpenGL
+ def _createSnapshot(self) -> None:
+ self._snapshot = None
+ if not CuraApplication.getInstance().isVisible:
+ Logger.log("w", "Can't create snapshot when renderer not initialized.")
+ return
+ Logger.log("i", "Creating thumbnail image (just before slice)...")
+ try:
+ self._snapshot = Snapshot.snapshot(width = 300, height = 300)
+ except:
+ Logger.logException("w", "Failed to create snapshot image")
+ self._snapshot = None # Failing to create thumbnail should not fail creation of UFP
+
+ def getLatestSnapshot(self) -> Optional[QImage]:
+ return self._snapshot
+
def slice(self) -> None:
"""Perform a slice of the scene."""
+ self._createSnapshot()
+
Logger.log("i", "Starting to slice...")
self._slice_start_time = time()
if not self._build_plates_to_be_sliced:
@@ -331,7 +367,6 @@ class CuraEngineBackend(QObject, Backend):
def _onStartSliceCompleted(self, job: StartSliceJob) -> None:
"""Event handler to call when the job to initiate the slicing process is
-
completed.
When the start slice job is successfully completed, it will be happily
@@ -899,9 +934,22 @@ class CuraEngineBackend(QObject, Backend):
if not self._restart:
if self._process: # type: ignore
- Logger.log("d", "Backend quit with return code %s. Resetting process and socket.", self._process.wait()) # type: ignore
+ return_code = self._process.wait()
+ if return_code != 0:
+ Logger.log("e", f"Backend exited abnormally with return code {return_code}!")
+ self._slicing_error_message.show()
+ self.setState(BackendState.Error)
+ self.stopSlicing()
+ else:
+ Logger.log("d", "Backend finished slicing. Resetting process and socket.")
self._process = None # type: ignore
+ def _reportBackendError(self, _message_id: str, _action_id: str) -> None:
+ """
+ Triggered when the user wants to report an error in the back-end.
+ """
+ QDesktopServices.openUrl(QUrl("https://github.com/Ultimaker/Cura/issues/new/choose"))
+
def _onGlobalStackChanged(self) -> None:
"""Called when the global container stack changes"""
diff --git a/plugins/CuraEngineBackend/plugin.json b/plugins/CuraEngineBackend/plugin.json
index d87cb1b34a..e3e9324315 100644
--- a/plugins/CuraEngineBackend/plugin.json
+++ b/plugins/CuraEngineBackend/plugin.json
@@ -2,7 +2,7 @@
"name": "CuraEngine Backend",
"author": "Ultimaker B.V.",
"description": "Provides the link to the CuraEngine slicing backend.",
- "api": "7.4.0",
+ "api": 7,
"version": "1.0.1",
"i18n-catalog": "cura"
}
diff --git a/plugins/CuraProfileReader/plugin.json b/plugins/CuraProfileReader/plugin.json
index ad68c08a17..e4f26532a5 100644
--- a/plugins/CuraProfileReader/plugin.json
+++ b/plugins/CuraProfileReader/plugin.json
@@ -3,6 +3,6 @@
"author": "Ultimaker B.V.",
"version": "1.0.1",
"description": "Provides support for importing Cura profiles.",
- "api": "7.4.0",
+ "api": 7,
"i18n-catalog": "cura"
}
diff --git a/plugins/CuraProfileWriter/plugin.json b/plugins/CuraProfileWriter/plugin.json
index 6dd815ed21..0dc4453329 100644
--- a/plugins/CuraProfileWriter/plugin.json
+++ b/plugins/CuraProfileWriter/plugin.json
@@ -3,6 +3,6 @@
"author": "Ultimaker B.V.",
"version": "1.0.1",
"description": "Provides support for exporting Cura profiles.",
- "api": "7.4.0",
+ "api": 7,
"i18n-catalog":"cura"
}
diff --git a/plugins/DigitalLibrary/__init__.py b/plugins/DigitalLibrary/__init__.py
new file mode 100644
index 0000000000..968aef66ee
--- /dev/null
+++ b/plugins/DigitalLibrary/__init__.py
@@ -0,0 +1,17 @@
+# Copyright (c) 2021 Ultimaker B.V.
+# Cura is released under the terms of the LGPLv3 or higher.
+
+from UM.MimeTypeDatabase import MimeType, MimeTypeDatabase
+from .src import DigitalFactoryFileProvider, DigitalFactoryOutputDevicePlugin, DigitalFactoryController
+
+
+def getMetaData():
+ return {}
+
+
+def register(app):
+ df_controller = DigitalFactoryController.DigitalFactoryController(app)
+ return {
+ "file_provider": DigitalFactoryFileProvider.DigitalFactoryFileProvider(df_controller),
+ "output_device": DigitalFactoryOutputDevicePlugin.DigitalFactoryOutputDevicePlugin(df_controller)
+ }
diff --git a/plugins/DigitalLibrary/plugin.json b/plugins/DigitalLibrary/plugin.json
new file mode 100644
index 0000000000..848346704f
--- /dev/null
+++ b/plugins/DigitalLibrary/plugin.json
@@ -0,0 +1,8 @@
+{
+ "name": "Ultimaker Digital Library",
+ "author": "Ultimaker B.V.",
+ "description": "Connects to the Digital Library, allowing Cura to open files from and save files to the Digital Library.",
+ "version": "1.0.0",
+ "api": 7,
+ "i18n-catalog": "cura"
+}
diff --git a/plugins/DigitalLibrary/resources/images/arrow_down.svg b/plugins/DigitalLibrary/resources/images/arrow_down.svg
new file mode 100644
index 0000000000..d11d6a63fd
--- /dev/null
+++ b/plugins/DigitalLibrary/resources/images/arrow_down.svg
@@ -0,0 +1,6 @@
+
+
+
diff --git a/plugins/DigitalLibrary/resources/images/digital_factory.svg b/plugins/DigitalLibrary/resources/images/digital_factory.svg
new file mode 100644
index 0000000000..d8c30f62f2
--- /dev/null
+++ b/plugins/DigitalLibrary/resources/images/digital_factory.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/plugins/DigitalLibrary/resources/images/placeholder.svg b/plugins/DigitalLibrary/resources/images/placeholder.svg
new file mode 100644
index 0000000000..cc674a4b38
--- /dev/null
+++ b/plugins/DigitalLibrary/resources/images/placeholder.svg
@@ -0,0 +1,3 @@
+
diff --git a/plugins/DigitalLibrary/resources/images/projects_not_found.svg b/plugins/DigitalLibrary/resources/images/projects_not_found.svg
new file mode 100644
index 0000000000..ba118ebc0a
--- /dev/null
+++ b/plugins/DigitalLibrary/resources/images/projects_not_found.svg
@@ -0,0 +1,52 @@
+
+
diff --git a/plugins/DigitalLibrary/resources/images/update.svg b/plugins/DigitalLibrary/resources/images/update.svg
new file mode 100644
index 0000000000..4a1aecab81
--- /dev/null
+++ b/plugins/DigitalLibrary/resources/images/update.svg
@@ -0,0 +1,9 @@
+
+
+
diff --git a/plugins/DigitalLibrary/resources/qml/CreateNewProjectPopup.qml b/plugins/DigitalLibrary/resources/qml/CreateNewProjectPopup.qml
new file mode 100644
index 0000000000..a7297c12fb
--- /dev/null
+++ b/plugins/DigitalLibrary/resources/qml/CreateNewProjectPopup.qml
@@ -0,0 +1,159 @@
+// Copyright (C) 2021 Ultimaker B.V.
+
+import QtQuick 2.10
+import QtQuick.Window 2.2
+import QtQuick.Controls 1.4 as OldControls // TableView doesn't exist in the QtQuick Controls 2.x in 5.10, so use the old one
+import QtQuick.Controls 2.3
+import QtQuick.Controls.Styles 1.4
+
+import UM 1.2 as UM
+import Cura 1.6 as Cura
+
+import DigitalFactory 1.0 as DF
+
+
+Popup
+{
+ id: base
+
+ padding: UM.Theme.getSize("default_margin").width
+
+ closePolicy: Popup.CloseOnEscape
+ focus: true
+ modal: true
+ background: Cura.RoundedRectangle
+ {
+ cornerSide: Cura.RoundedRectangle.Direction.All
+ border.color: UM.Theme.getColor("lining")
+ border.width: UM.Theme.getSize("default_lining").width
+ radius: UM.Theme.getSize("default_radius").width
+ width: parent.width
+ height: parent.height
+ color: UM.Theme.getColor("main_background")
+ }
+
+ Connections
+ {
+ target: manager
+
+ function onCreatingNewProjectStatusChanged(status)
+ {
+ if (status == DF.RetrievalStatus.Success)
+ {
+ base.close();
+ }
+ }
+ }
+
+ onOpened:
+ {
+ newProjectNameTextField.text = ""
+ newProjectNameTextField.focus = true
+ }
+
+ Label
+ {
+ id: createNewLibraryProjectLabel
+ text: "Create new Library project"
+ font: UM.Theme.getFont("medium")
+ color: UM.Theme.getColor("small_button_text")
+ anchors
+ {
+ top: parent.top
+ left: parent.left
+ right: parent.right
+ }
+ }
+
+ Label
+ {
+ id: projectNameLabel
+ text: "Project Name"
+ font: UM.Theme.getFont("default")
+ color: UM.Theme.getColor("text")
+ anchors
+ {
+ top: createNewLibraryProjectLabel.bottom
+ topMargin: UM.Theme.getSize("default_margin").width
+ left: parent.left
+ right: parent.right
+ }
+ }
+
+ Cura.TextField
+ {
+ id: newProjectNameTextField
+ width: parent.width
+ anchors
+ {
+ top: projectNameLabel.bottom
+ topMargin: UM.Theme.getSize("thin_margin").width
+ left: parent.left
+ right: parent.right
+ }
+ validator: RegExpValidator
+ {
+ regExp: /^[^\\\/\*\?\|\[\]]{0,99}$/
+ }
+
+ text: PrintInformation.jobName
+ font: UM.Theme.getFont("default")
+ placeholderText: "Enter a name for your new project."
+ onAccepted:
+ {
+ if (verifyProjectCreationButton.enabled)
+ {
+ verifyProjectCreationButton.clicked()
+ }
+ }
+ }
+
+ Label
+ {
+ id: errorWhileCreatingProjectLabel
+ text: manager.projectCreationErrorText
+ width: parent.width
+ wrapMode: Text.WordWrap
+ font: UM.Theme.getFont("default")
+ color: UM.Theme.getColor("error")
+ visible: manager.creatingNewProjectStatus == DF.RetrievalStatus.Failed
+ anchors
+ {
+ top: newProjectNameTextField.bottom
+ left: parent.left
+ right: parent.right
+ }
+ }
+
+ Cura.SecondaryButton
+ {
+ id: cancelProjectCreationButton
+
+ anchors.bottom: parent.bottom
+ anchors.left: parent.left
+
+ text: "Cancel"
+
+ onClicked:
+ {
+ base.close()
+ }
+ busy: false
+ }
+
+ Cura.PrimaryButton
+ {
+ id: verifyProjectCreationButton
+
+ anchors.bottom: parent.bottom
+ anchors.right: parent.right
+ text: "Create"
+ enabled: newProjectNameTextField.text.length >= 2 && !busy
+
+ onClicked:
+ {
+ manager.createLibraryProjectAndSetAsPreselected(newProjectNameTextField.text)
+ }
+ busy: manager.creatingNewProjectStatus == DF.RetrievalStatus.InProgress
+ }
+}
diff --git a/plugins/DigitalLibrary/resources/qml/DigitalFactoryOpenDialog.qml b/plugins/DigitalLibrary/resources/qml/DigitalFactoryOpenDialog.qml
new file mode 100644
index 0000000000..58958e0069
--- /dev/null
+++ b/plugins/DigitalLibrary/resources/qml/DigitalFactoryOpenDialog.qml
@@ -0,0 +1,61 @@
+// Copyright (C) 2021 Ultimaker B.V.
+
+import QtQuick 2.10
+import QtQuick.Window 2.2
+import QtQuick.Controls 1.4 as OldControls // TableView doesn't exist in the QtQuick Controls 2.x in 5.10, so use the old one
+import QtQuick.Controls 2.3
+import QtQuick.Controls.Styles 1.4
+
+import UM 1.2 as UM
+import Cura 1.6 as Cura
+
+import DigitalFactory 1.0 as DF
+
+Window
+{
+ id: digitalFactoryOpenDialogBase
+ title: "Open file from Library"
+
+ modality: Qt.ApplicationModal
+ width: 800 * screenScaleFactor
+ height: 600 * screenScaleFactor
+ minimumWidth: 800 * screenScaleFactor
+ minimumHeight: 600 * screenScaleFactor
+
+ Shortcut
+ {
+ sequence: "Esc"
+ onActivated: digitalFactoryOpenDialogBase.close()
+ }
+ color: UM.Theme.getColor("main_background")
+
+ SelectProjectPage
+ {
+ visible: manager.selectedProjectIndex == -1
+ createNewProjectButtonVisible: false
+ }
+
+ OpenProjectFilesPage
+ {
+ visible: manager.selectedProjectIndex >= 0
+ onOpenFilePressed: digitalFactoryOpenDialogBase.close()
+ }
+
+
+ BusyIndicator
+ {
+ // Shows up while Cura is waiting to receive the user's projects from the digital factory library
+ id: retrievingProjectsBusyIndicator
+
+ anchors {
+ verticalCenter: parent.verticalCenter
+ horizontalCenter: parent.horizontalCenter
+ }
+
+ width: parent.width / 4
+ height: width
+ visible: manager.retrievingProjectsStatus == DF.RetrievalStatus.InProgress
+ running: visible
+ palette.dark: UM.Theme.getColor("text")
+ }
+}
diff --git a/plugins/DigitalLibrary/resources/qml/DigitalFactorySaveDialog.qml b/plugins/DigitalLibrary/resources/qml/DigitalFactorySaveDialog.qml
new file mode 100644
index 0000000000..6d870d0c78
--- /dev/null
+++ b/plugins/DigitalLibrary/resources/qml/DigitalFactorySaveDialog.qml
@@ -0,0 +1,62 @@
+// Copyright (C) 2021 Ultimaker B.V.
+
+import QtQuick 2.10
+import QtQuick.Window 2.2
+import QtQuick.Controls 1.4 as OldControls // TableView doesn't exist in the QtQuick Controls 2.x in 5.10, so use the old one
+import QtQuick.Controls 2.3
+import QtQuick.Controls.Styles 1.4
+
+import UM 1.2 as UM
+import Cura 1.6 as Cura
+
+import DigitalFactory 1.0 as DF
+
+Window
+{
+ id: digitalFactorySaveDialogBase
+ title: "Save Cura project to Library"
+
+ modality: Qt.ApplicationModal
+ width: 800 * screenScaleFactor
+ height: 600 * screenScaleFactor
+ minimumWidth: 800 * screenScaleFactor
+ minimumHeight: 600 * screenScaleFactor
+
+ Shortcut
+ {
+ sequence: "Esc"
+ onActivated: digitalFactorySaveDialogBase.close()
+ }
+ color: UM.Theme.getColor("main_background")
+
+ SelectProjectPage
+ {
+ visible: manager.selectedProjectIndex == -1
+ createNewProjectButtonVisible: true
+ }
+
+ SaveProjectFilesPage
+ {
+ visible: manager.selectedProjectIndex >= 0
+ onSavePressed: digitalFactorySaveDialogBase.close()
+ onSelectDifferentProjectPressed: manager.clearProjectSelection()
+ }
+
+
+ BusyIndicator
+ {
+ // Shows up while Cura is waiting to receive the user's projects from the digital factory library
+ id: retrievingProjectsBusyIndicator
+
+ anchors {
+ verticalCenter: parent.verticalCenter
+ horizontalCenter: parent.horizontalCenter
+ }
+
+ width: parent.width / 4
+ height: width
+ visible: manager.retrievingProjectsStatus == DF.RetrievalStatus.InProgress
+ running: visible
+ palette.dark: UM.Theme.getColor("text")
+ }
+}
diff --git a/plugins/DigitalLibrary/resources/qml/LoadMoreProjectsCard.qml b/plugins/DigitalLibrary/resources/qml/LoadMoreProjectsCard.qml
new file mode 100644
index 0000000000..45a0c6886d
--- /dev/null
+++ b/plugins/DigitalLibrary/resources/qml/LoadMoreProjectsCard.qml
@@ -0,0 +1,129 @@
+// Copyright (C) 2021 Ultimaker B.V.
+import QtQuick 2.10
+import QtQuick.Controls 2.3
+
+import UM 1.2 as UM
+import Cura 1.6 as Cura
+
+Cura.RoundedRectangle
+{
+ id: base
+ cornerSide: Cura.RoundedRectangle.Direction.All
+ border.color: UM.Theme.getColor("lining")
+ border.width: UM.Theme.getSize("default_lining").width
+ radius: UM.Theme.getSize("default_radius").width
+ signal clicked()
+ property var hasMoreProjectsToLoad
+ enabled: hasMoreProjectsToLoad
+ color: UM.Theme.getColor("main_background")
+
+ MouseArea
+ {
+ id: cardMouseArea
+ anchors.fill: parent
+ hoverEnabled: true
+ }
+
+ Row
+ {
+ id: projectInformationRow
+ anchors.horizontalCenter: parent.horizontalCenter
+ anchors.verticalCenter: parent.verticalCenter
+
+ UM.RecolorImage
+ {
+ id: projectImage
+ anchors.verticalCenter: parent.verticalCenter
+ width: UM.Theme.getSize("section").height
+ height: width
+ color: UM.Theme.getColor("text_link")
+ source: "../images/arrow_down.svg"
+ }
+
+ Label
+ {
+ id: displayNameLabel
+ anchors.verticalCenter: parent.verticalCenter
+ text: "Load more projects"
+ color: UM.Theme.getColor("text_link")
+ font: UM.Theme.getFont("medium_bold")
+ }
+ }
+
+ Component.onCompleted:
+ {
+ cardMouseArea.clicked.connect(base.clicked)
+ }
+
+ states:
+ [
+ State
+ {
+ name: "canLoadMoreProjectsAndHovered";
+ when: base.hasMoreProjectsToLoad && cardMouseArea.containsMouse
+ PropertyChanges
+ {
+ target: projectImage
+ color: UM.Theme.getColor("text_link")
+ source: "../images/arrow_down.svg"
+ }
+ PropertyChanges
+ {
+ target: displayNameLabel
+ color: UM.Theme.getColor("text_link")
+ text: "Load more projects"
+ }
+ PropertyChanges
+ {
+ target: base
+ color: UM.Theme.getColor("action_button_hovered")
+ }
+ },
+
+ State
+ {
+ name: "canLoadMoreProjectsAndNotHovered";
+ when: base.hasMoreProjectsToLoad && !cardMouseArea.containsMouse
+ PropertyChanges
+ {
+ target: projectImage
+ color: UM.Theme.getColor("text_link")
+ source: "../images/arrow_down.svg"
+ }
+ PropertyChanges
+ {
+ target: displayNameLabel
+ color: UM.Theme.getColor("text_link")
+ text: "Load more projects"
+ }
+ PropertyChanges
+ {
+ target: base
+ color: UM.Theme.getColor("main_background")
+ }
+ },
+
+ State
+ {
+ name: "noMoreProjectsToLoad"
+ when: !base.hasMoreProjectsToLoad
+ PropertyChanges
+ {
+ target: projectImage
+ color: UM.Theme.getColor("action_button_disabled_text")
+ source: "../images/update.svg"
+ }
+ PropertyChanges
+ {
+ target: displayNameLabel
+ color: UM.Theme.getColor("action_button_disabled_text")
+ text: "No more projects to load"
+ }
+ PropertyChanges
+ {
+ target: base
+ color: UM.Theme.getColor("action_button_disabled")
+ }
+ }
+ ]
+}
\ No newline at end of file
diff --git a/plugins/DigitalLibrary/resources/qml/OpenProjectFilesPage.qml b/plugins/DigitalLibrary/resources/qml/OpenProjectFilesPage.qml
new file mode 100644
index 0000000000..5b237a3e48
--- /dev/null
+++ b/plugins/DigitalLibrary/resources/qml/OpenProjectFilesPage.qml
@@ -0,0 +1,203 @@
+// Copyright (C) 2021 Ultimaker B.V.
+
+import QtQuick 2.10
+import QtQuick.Window 2.2
+import QtQuick.Controls 1.4 as OldControls // TableView doesn't exist in the QtQuick Controls 2.x in 5.10, so use the old one
+import QtQuick.Controls 2.3
+import QtQuick.Controls.Styles 1.4
+
+import UM 1.2 as UM
+import Cura 1.6 as Cura
+
+import DigitalFactory 1.0 as DF
+
+
+Item
+{
+ id: base
+ width: parent.width
+ height: parent.height
+
+ property var fileModel: manager.digitalFactoryFileModel
+
+ signal openFilePressed()
+ signal selectDifferentProjectPressed()
+
+ anchors
+ {
+ fill: parent
+ margins: UM.Theme.getSize("default_margin").width
+ }
+
+ ProjectSummaryCard
+ {
+ id: projectSummaryCard
+
+ anchors.top: parent.top
+
+ property var selectedItem: manager.digitalFactoryProjectModel.getItem(manager.selectedProjectIndex)
+
+ imageSource: selectedItem.thumbnailUrl || "../images/placeholder.svg"
+ projectNameText: selectedItem.displayName || ""
+ projectUsernameText: selectedItem.username || ""
+ projectLastUpdatedText: "Last updated: " + selectedItem.lastUpdated
+ cardMouseAreaEnabled: false
+ }
+
+ Rectangle
+ {
+ id: projectFilesContent
+ width: parent.width
+ anchors.top: projectSummaryCard.bottom
+ anchors.topMargin: UM.Theme.getSize("default_margin").width
+ anchors.bottom: selectDifferentProjectButton.top
+ anchors.bottomMargin: UM.Theme.getSize("default_margin").width
+
+ color: UM.Theme.getColor("main_background")
+ border.width: UM.Theme.getSize("default_lining").width
+ border.color: UM.Theme.getColor("lining")
+
+
+ Cura.TableView
+ {
+ id: filesTableView
+ anchors.fill: parent
+ model: manager.digitalFactoryFileModel
+ visible: model.count != 0 && manager.retrievingFileStatus != DF.RetrievalStatus.InProgress
+ selectionMode: OldControls.SelectionMode.SingleSelection
+ onDoubleClicked:
+ {
+ manager.setSelectedFileIndices([row]);
+ openFilesButton.clicked();
+ }
+
+ OldControls.TableViewColumn
+ {
+ id: fileNameColumn
+ role: "fileName"
+ title: "Name"
+ width: Math.round(filesTableView.width / 3)
+ }
+
+ OldControls.TableViewColumn
+ {
+ id: usernameColumn
+ role: "username"
+ title: "Uploaded by"
+ width: Math.round(filesTableView.width / 3)
+ }
+
+ OldControls.TableViewColumn
+ {
+ role: "uploadedAt"
+ title: "Uploaded at"
+ }
+
+ Connections
+ {
+ target: filesTableView.selection
+ function onSelectionChanged()
+ {
+ let newSelection = [];
+ filesTableView.selection.forEach(function(rowIndex) { newSelection.push(rowIndex); });
+ manager.setSelectedFileIndices(newSelection);
+ }
+ }
+ }
+
+ Label
+ {
+ id: emptyProjectLabel
+ anchors.horizontalCenter: parent.horizontalCenter
+ anchors.verticalCenter: parent.verticalCenter
+ text: "Select a project to view its files."
+ font: UM.Theme.getFont("default")
+ color: UM.Theme.getColor("setting_category_text")
+
+ Connections
+ {
+ target: manager
+ function onSelectedProjectIndexChanged(newProjectIndex)
+ {
+ emptyProjectLabel.visible = (newProjectIndex == -1)
+ }
+ }
+ }
+
+ Label
+ {
+ id: noFilesInProjectLabel
+ anchors.horizontalCenter: parent.horizontalCenter
+ anchors.verticalCenter: parent.verticalCenter
+ visible: (manager.digitalFactoryFileModel.count == 0 && !emptyProjectLabel.visible && !retrievingFilesBusyIndicator.visible)
+ text: "No supported files in this project."
+ font: UM.Theme.getFont("default")
+ color: UM.Theme.getColor("setting_category_text")
+ }
+
+ BusyIndicator
+ {
+ // Shows up while Cura is waiting to receive the files of a project from the digital factory library
+ id: retrievingFilesBusyIndicator
+
+ anchors
+ {
+ verticalCenter: parent.verticalCenter
+ horizontalCenter: parent.horizontalCenter
+ }
+
+ width: parent.width / 4
+ height: width
+ visible: manager.retrievingFilesStatus == DF.RetrievalStatus.InProgress
+ running: visible
+ palette.dark: UM.Theme.getColor("text")
+ }
+
+ Connections
+ {
+ target: manager.digitalFactoryFileModel
+
+ function onItemsChanged()
+ {
+ // Make sure no files are selected when the file model changes
+ filesTableView.currentRow = -1
+ filesTableView.selection.clear()
+ }
+ }
+ }
+ Cura.SecondaryButton
+ {
+ id: selectDifferentProjectButton
+
+ anchors.bottom: parent.bottom
+ anchors.left: parent.left
+ text: "Change Library project"
+
+ onClicked:
+ {
+ manager.clearProjectSelection()
+ }
+ busy: false
+ }
+
+ Cura.PrimaryButton
+ {
+ id: openFilesButton
+
+ anchors.bottom: parent.bottom
+ anchors.right: parent.right
+ text: "Open"
+ enabled: filesTableView.selection.count > 0
+ onClicked:
+ {
+ manager.openSelectedFiles()
+ }
+ busy: false
+ }
+
+ Component.onCompleted:
+ {
+ openFilesButton.clicked.connect(base.openFilePressed)
+ selectDifferentProjectButton.clicked.connect(base.selectDifferentProjectPressed)
+ }
+}
\ No newline at end of file
diff --git a/plugins/DigitalLibrary/resources/qml/ProjectSummaryCard.qml b/plugins/DigitalLibrary/resources/qml/ProjectSummaryCard.qml
new file mode 100644
index 0000000000..4374b2f998
--- /dev/null
+++ b/plugins/DigitalLibrary/resources/qml/ProjectSummaryCard.qml
@@ -0,0 +1,92 @@
+// Copyright (C) 2021 Ultimaker B.V.
+import QtQuick 2.10
+import QtQuick.Controls 2.3
+
+import UM 1.2 as UM
+import Cura 1.6 as Cura
+
+Cura.RoundedRectangle
+{
+ id: base
+ width: parent.width
+ height: projectImage.height + 2 * UM.Theme.getSize("default_margin").width
+ cornerSide: Cura.RoundedRectangle.Direction.All
+ border.color: UM.Theme.getColor("lining")
+ border.width: UM.Theme.getSize("default_lining").width
+ radius: UM.Theme.getSize("default_radius").width
+ color: UM.Theme.getColor("main_background")
+ signal clicked()
+ property alias imageSource: projectImage.source
+ property alias projectNameText: displayNameLabel.text
+ property alias projectUsernameText: usernameLabel.text
+ property alias projectLastUpdatedText: lastUpdatedLabel.text
+ property alias cardMouseAreaEnabled: cardMouseArea.enabled
+
+ onVisibleChanged: color = UM.Theme.getColor("main_background")
+
+ MouseArea
+ {
+ id: cardMouseArea
+ anchors.fill: parent
+ hoverEnabled: true
+ onEntered: base.color = UM.Theme.getColor("action_button_hovered")
+ onExited: base.color = UM.Theme.getColor("main_background")
+ onClicked: base.clicked()
+ }
+ Row
+ {
+ id: projectInformationRow
+ width: parent.width
+ padding: UM.Theme.getSize("default_margin").width
+ spacing: UM.Theme.getSize("default_margin").width
+
+ Image
+ {
+ id: projectImage
+ anchors.verticalCenter: parent.verticalCenter
+ width: UM.Theme.getSize("toolbox_thumbnail_small").width
+ height: Math.round(width * 3/4)
+ sourceSize.width: width
+ sourceSize.height: height
+ fillMode: Image.PreserveAspectFit
+ mipmap: true
+ }
+ Column
+ {
+ id: projectLabelsColumn
+ height: projectImage.height
+ width: parent.width - x - UM.Theme.getSize("default_margin").width
+ anchors.verticalCenter: parent.verticalCenter
+
+ Label
+ {
+ id: displayNameLabel
+ width: parent.width
+ height: Math.round(parent.height / 3)
+ elide: Text.ElideRight
+ color: UM.Theme.getColor("text")
+ font: UM.Theme.getFont("default_bold")
+ }
+
+ Label
+ {
+ id: usernameLabel
+ width: parent.width
+ height: Math.round(parent.height / 3)
+ elide: Text.ElideRight
+ color: UM.Theme.getColor("small_button_text")
+ font: UM.Theme.getFont("default")
+ }
+
+ Label
+ {
+ id: lastUpdatedLabel
+ width: parent.width
+ height: Math.round(parent.height / 3)
+ elide: Text.ElideRight
+ color: UM.Theme.getColor("small_button_text")
+ font: UM.Theme.getFont("default")
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/plugins/DigitalLibrary/resources/qml/SaveProjectFilesPage.qml b/plugins/DigitalLibrary/resources/qml/SaveProjectFilesPage.qml
new file mode 100644
index 0000000000..30e3513019
--- /dev/null
+++ b/plugins/DigitalLibrary/resources/qml/SaveProjectFilesPage.qml
@@ -0,0 +1,259 @@
+// Copyright (C) 2021 Ultimaker B.V.
+
+import QtQuick 2.10
+import QtQuick.Window 2.2
+import QtQuick.Controls 1.4 as OldControls // TableView doesn't exist in the QtQuick Controls 2.x in 5.10, so use the old one
+import QtQuick.Controls 2.3
+import QtQuick.Controls.Styles 1.4
+
+import UM 1.2 as UM
+import Cura 1.6 as Cura
+
+import DigitalFactory 1.0 as DF
+
+
+Item
+{
+ id: base
+ width: parent.width
+ height: parent.height
+ property var fileModel: manager.digitalFactoryFileModel
+
+ signal savePressed()
+ signal selectDifferentProjectPressed()
+
+ anchors
+ {
+ fill: parent
+ margins: UM.Theme.getSize("default_margin").width
+ }
+
+ ProjectSummaryCard
+ {
+ id: projectSummaryCard
+
+ anchors.top: parent.top
+
+ property var selectedItem: manager.digitalFactoryProjectModel.getItem(manager.selectedProjectIndex)
+
+ imageSource: selectedItem.thumbnailUrl || "../images/placeholder.svg"
+ projectNameText: selectedItem.displayName || ""
+ projectUsernameText: selectedItem.username || ""
+ projectLastUpdatedText: "Last updated: " + selectedItem.lastUpdated
+ cardMouseAreaEnabled: false
+ }
+
+ Label
+ {
+ id: fileNameLabel
+ anchors.top: projectSummaryCard.bottom
+ anchors.topMargin: UM.Theme.getSize("default_margin").height
+ text: "Cura project name"
+ font: UM.Theme.getFont("medium")
+ color: UM.Theme.getColor("text")
+ }
+
+
+ Cura.TextField
+ {
+ id: dfFilenameTextfield
+ width: parent.width
+ anchors.left: parent.left
+ anchors.top: fileNameLabel.bottom
+ anchors.topMargin: UM.Theme.getSize("thin_margin").height
+ validator: RegExpValidator
+ {
+ regExp: /^[\w\-\. ()]{0,255}$/
+ }
+
+ text: PrintInformation.jobName
+ font: UM.Theme.getFont("medium")
+ placeholderText: "Enter the name of the file."
+ onAccepted: { if (saveButton.enabled) {saveButton.clicked()}}
+ }
+
+
+ Rectangle
+ {
+ id: projectFilesContent
+ width: parent.width
+ anchors.top: dfFilenameTextfield.bottom
+ anchors.topMargin: UM.Theme.getSize("wide_margin").height
+ anchors.bottom: selectDifferentProjectButton.top
+ anchors.bottomMargin: UM.Theme.getSize("default_margin").width
+
+ color: UM.Theme.getColor("main_background")
+ border.width: UM.Theme.getSize("default_lining").width
+ border.color: UM.Theme.getColor("lining")
+
+
+ Cura.TableView
+ {
+ id: filesTableView
+ anchors.fill: parent
+ model: manager.digitalFactoryFileModel
+ visible: model.count != 0 && manager.retrievingFileStatus != DF.RetrievalStatus.InProgress
+ selectionMode: OldControls.SelectionMode.NoSelection
+
+ OldControls.TableViewColumn
+ {
+ id: fileNameColumn
+ role: "fileName"
+ title: "@tableViewColumn:title", "Name"
+ width: Math.round(filesTableView.width / 3)
+ }
+
+ OldControls.TableViewColumn
+ {
+ id: usernameColumn
+ role: "username"
+ title: "Uploaded by"
+ width: Math.round(filesTableView.width / 3)
+ }
+
+ OldControls.TableViewColumn
+ {
+ role: "uploadedAt"
+ title: "Uploaded at"
+ }
+ }
+
+ Label
+ {
+ id: emptyProjectLabel
+ anchors.horizontalCenter: parent.horizontalCenter
+ anchors.verticalCenter: parent.verticalCenter
+ text: "Select a project to view its files."
+ font: UM.Theme.getFont("default")
+ color: UM.Theme.getColor("setting_category_text")
+
+ Connections
+ {
+ target: manager
+ function onSelectedProjectIndexChanged()
+ {
+ emptyProjectLabel.visible = (manager.newProjectIndex == -1)
+ }
+ }
+ }
+
+ Label
+ {
+ id: noFilesInProjectLabel
+ anchors.horizontalCenter: parent.horizontalCenter
+ anchors.verticalCenter: parent.verticalCenter
+ visible: (manager.digitalFactoryFileModel.count == 0 && !emptyProjectLabel.visible && !retrievingFilesBusyIndicator.visible)
+ text: "No supported files in this project."
+ font: UM.Theme.getFont("default")
+ color: UM.Theme.getColor("setting_category_text")
+ }
+
+ BusyIndicator
+ {
+ // Shows up while Cura is waiting to receive the files of a project from the digital factory library
+ id: retrievingFilesBusyIndicator
+
+ anchors
+ {
+ verticalCenter: parent.verticalCenter
+ horizontalCenter: parent.horizontalCenter
+ }
+
+ width: parent.width / 4
+ height: width
+ visible: manager.retrievingFilesStatus == DF.RetrievalStatus.InProgress
+ running: visible
+ palette.dark: UM.Theme.getColor("text")
+ }
+
+ Connections
+ {
+ target: manager.digitalFactoryFileModel
+
+ function onItemsChanged()
+ {
+ // Make sure no files are selected when the file model changes
+ filesTableView.currentRow = -1
+ filesTableView.selection.clear()
+ }
+ }
+ }
+ Cura.SecondaryButton
+ {
+ id: selectDifferentProjectButton
+
+ anchors.bottom: parent.bottom
+ anchors.left: parent.left
+ text: "Change Library project"
+
+ onClicked:
+ {
+ manager.selectedProjectIndex = -1
+ }
+ busy: false
+ }
+
+ Cura.PrimaryButton
+ {
+ id: saveButton
+
+ anchors.bottom: parent.bottom
+ anchors.right: parent.right
+ text: "Save"
+ enabled: (asProjectCheckbox.checked || asSlicedCheckbox.checked) && dfFilenameTextfield.text.length >= 1
+
+ onClicked:
+ {
+ let saveAsFormats = [];
+ if (asProjectCheckbox.checked)
+ {
+ saveAsFormats.push("3mf");
+ }
+ if (asSlicedCheckbox.checked)
+ {
+ saveAsFormats.push("ufp");
+ }
+ manager.saveFileToSelectedProject(dfFilenameTextfield.text, saveAsFormats);
+ }
+ busy: false
+ }
+
+ Row
+ {
+
+ id: saveAsFormatRow
+ anchors.verticalCenter: saveButton.verticalCenter
+ anchors.right: saveButton.left
+ anchors.rightMargin: UM.Theme.getSize("thin_margin").height
+ width: childrenRect.width
+ spacing: UM.Theme.getSize("default_margin").width
+
+ Cura.CheckBox
+ {
+ id: asProjectCheckbox
+ height: UM.Theme.getSize("checkbox").height
+ anchors.verticalCenter: parent.verticalCenter
+ checked: true
+ text: "Save Cura project"
+ font: UM.Theme.getFont("medium")
+ }
+
+ Cura.CheckBox
+ {
+ id: asSlicedCheckbox
+ height: UM.Theme.getSize("checkbox").height
+ anchors.verticalCenter: parent.verticalCenter
+
+ enabled: UM.Backend.state == UM.Backend.Done
+ checked: UM.Backend.state == UM.Backend.Done
+ text: "Save print file"
+ font: UM.Theme.getFont("medium")
+ }
+ }
+
+ Component.onCompleted:
+ {
+ saveButton.clicked.connect(base.savePressed)
+ selectDifferentProjectButton.clicked.connect(base.selectDifferentProjectPressed)
+ }
+}
diff --git a/plugins/DigitalLibrary/resources/qml/SelectProjectPage.qml b/plugins/DigitalLibrary/resources/qml/SelectProjectPage.qml
new file mode 100644
index 0000000000..8b919e299d
--- /dev/null
+++ b/plugins/DigitalLibrary/resources/qml/SelectProjectPage.qml
@@ -0,0 +1,231 @@
+// Copyright (C) 2021 Ultimaker B.V.
+// Cura is released under the terms of the LGPLv3 or higher.
+
+import QtQuick 2.10
+import QtQuick.Window 2.2
+import QtQuick.Controls 1.4 as OldControls // TableView doesn't exist in the QtQuick Controls 2.x in 5.10, so use the old one
+import QtQuick.Controls 2.3
+import QtQuick.Controls.Styles 1.4
+import QtQuick.Layouts 1.1
+
+import UM 1.2 as UM
+import Cura 1.6 as Cura
+
+import DigitalFactory 1.0 as DF
+
+
+Item
+{
+ id: base
+
+ width: parent.width
+ height: parent.height
+ property bool createNewProjectButtonVisible: true
+
+ anchors
+ {
+ top: parent.top
+ bottom: parent.bottom
+ left: parent.left
+ right: parent.right
+ margins: UM.Theme.getSize("default_margin").width
+ }
+
+ RowLayout
+ {
+ id: headerRow
+
+ anchors
+ {
+ top: parent.top
+ left: parent.left
+ right: parent.right
+ }
+ height: childrenRect.height
+ spacing: UM.Theme.getSize("default_margin").width
+
+ Cura.TextField
+ {
+ id: searchBar
+ Layout.fillWidth: true
+ implicitHeight: createNewProjectButton.height
+
+ onTextEdited: manager.projectFilter = text //Update the search filter when editing this text field.
+
+ leftIcon: UM.Theme.getIcon("Magnifier")
+ placeholderText: "Search"
+ }
+
+ Cura.SecondaryButton
+ {
+ id: createNewProjectButton
+
+ text: "New Library project"
+ visible: createNewProjectButtonVisible && manager.userAccountCanCreateNewLibraryProject && (manager.retrievingProjectsStatus == DF.RetrievalStatus.Success || manager.retrievingProjectsStatus == DF.RetrievalStatus.Failed)
+
+ onClicked:
+ {
+ createNewProjectPopup.open()
+ }
+ busy: manager.creatingNewProjectStatus == DF.RetrievalStatus.InProgress
+ }
+
+
+ Cura.SecondaryButton
+ {
+ id: upgradePlanButton
+
+ text: "Upgrade plan"
+ iconSource: UM.Theme.getIcon("LinkExternal")
+ visible: createNewProjectButtonVisible && !manager.userAccountCanCreateNewLibraryProject && (manager.retrievingProjectsStatus == DF.RetrievalStatus.Success || manager.retrievingProjectsStatus == DF.RetrievalStatus.Failed)
+ tooltip: "You have reached the maximum number of projects allowed by your subscription. Please upgrade to the Professional subscription to create more projects."
+ tooltipWidth: parent.width * 0.5
+
+ onClicked: Qt.openUrlExternally("https://ultimaker.com/software/ultimaker-essentials/sign-up-cura?utm_source=cura&utm_medium=software&utm_campaign=lib-max")
+ }
+ }
+
+ Item
+ {
+ id: noLibraryProjectsContainer
+ anchors
+ {
+ top: parent.top
+ bottom: parent.bottom
+ left: parent.left
+ right: parent.right
+ }
+ visible: manager.digitalFactoryProjectModel.count == 0 && (manager.retrievingProjectsStatus == DF.RetrievalStatus.Success || manager.retrievingProjectsStatus == DF.RetrievalStatus.Failed)
+
+ Column
+ {
+ anchors.centerIn: parent
+ spacing: UM.Theme.getSize("thin_margin").height
+ Image
+ {
+ id: digitalFactoryImage
+ anchors.horizontalCenter: parent.horizontalCenter
+ source: searchBar.text === "" ? "../images/digital_factory.svg" : "../images/projects_not_found.svg"
+ fillMode: Image.PreserveAspectFit
+ width: parent.width - 2 * UM.Theme.getSize("thick_margin").width
+ }
+
+ Label
+ {
+ id: noLibraryProjectsLabel
+ anchors.horizontalCenter: parent.horizontalCenter
+ text: searchBar.text === "" ? "It appears that you don't have any projects in the Library yet." : "No projects found that match the search query."
+ font: UM.Theme.getFont("medium")
+ color: UM.Theme.getColor("text")
+ }
+
+ Cura.TertiaryButton
+ {
+ id: visitDigitalLibraryButton
+ anchors.horizontalCenter: parent.horizontalCenter
+ text: "Visit Digital Library"
+ onClicked: Qt.openUrlExternally(CuraApplication.ultimakerDigitalFactoryUrl + "/app/library")
+ visible: searchBar.text === "" //Show the link to Digital Library when there are no projects in the user's Library.
+ }
+ }
+ }
+
+ Item
+ {
+ id: projectListContainer
+ anchors
+ {
+ top: headerRow.bottom
+ topMargin: UM.Theme.getSize("default_margin").height
+ bottom: parent.bottom
+ left: parent.left
+ right: parent.right
+ }
+ visible: manager.digitalFactoryProjectModel.count > 0
+
+ // Use a flickable and a column with a repeater instead of a ListView in a ScrollView, because the ScrollView cannot
+ // have additional children (aside from the view inside it), which wouldn't allow us to add the LoadMoreProjectsCard
+ // in it.
+ Flickable
+ {
+ id: flickableView
+ clip: true
+ contentWidth: parent.width
+ contentHeight: projectsListView.implicitHeight
+ anchors.fill: parent
+
+ ScrollBar.vertical: ScrollBar
+ {
+ // Vertical ScrollBar, styled similarly to the scrollBar in the settings panel
+ id: verticalScrollBar
+ visible: flickableView.contentHeight > flickableView.height
+
+ background: Rectangle
+ {
+ implicitWidth: UM.Theme.getSize("scrollbar").width
+ radius: Math.round(implicitWidth / 2)
+ color: UM.Theme.getColor("scrollbar_background")
+ }
+
+ contentItem: Rectangle
+ {
+ id: scrollViewHandle
+ implicitWidth: UM.Theme.getSize("scrollbar").width
+ radius: Math.round(implicitWidth / 2)
+
+ color: verticalScrollBar.pressed ? UM.Theme.getColor("scrollbar_handle_down") : verticalScrollBar.hovered ? UM.Theme.getColor("scrollbar_handle_hover") : UM.Theme.getColor("scrollbar_handle")
+ Behavior on color { ColorAnimation { duration: 50; } }
+ }
+ }
+
+ Column
+ {
+ id: projectsListView
+ width: verticalScrollBar.visible ? parent.width - verticalScrollBar.width - UM.Theme.getSize("default_margin").width : parent.width
+ anchors.top: parent.top
+ spacing: UM.Theme.getSize("narrow_margin").width
+
+ Repeater
+ {
+ model: manager.digitalFactoryProjectModel
+ delegate: ProjectSummaryCard
+ {
+ id: projectSummaryCard
+ imageSource: model.thumbnailUrl || "../images/placeholder.svg"
+ projectNameText: model.displayName
+ projectUsernameText: model.username
+ projectLastUpdatedText: "Last updated: " + model.lastUpdated
+
+ onClicked:
+ {
+ manager.selectedProjectIndex = index
+ }
+ }
+ }
+
+ LoadMoreProjectsCard
+ {
+ id: loadMoreProjectsCard
+ height: UM.Theme.getSize("toolbox_thumbnail_small").height
+ width: parent.width
+ visible: manager.digitalFactoryProjectModel.count > 0
+ hasMoreProjectsToLoad: manager.hasMoreProjectsToLoad
+
+ onClicked:
+ {
+ manager.loadMoreProjects()
+ }
+ }
+ }
+ }
+ }
+
+ CreateNewProjectPopup
+ {
+ id: createNewProjectPopup
+ width: 400 * screenScaleFactor
+ height: 220 * screenScaleFactor
+ x: Math.round((parent.width - width) / 2)
+ y: Math.round((parent.height - height) / 2)
+ }
+}
\ No newline at end of file
diff --git a/plugins/DigitalLibrary/src/BaseModel.py b/plugins/DigitalLibrary/src/BaseModel.py
new file mode 100644
index 0000000000..5bfd14feba
--- /dev/null
+++ b/plugins/DigitalLibrary/src/BaseModel.py
@@ -0,0 +1,74 @@
+# Copyright (c) 2021 Ultimaker B.V.
+# Cura is released under the terms of the LGPLv3 or higher.
+
+from datetime import datetime, timezone
+from typing import TypeVar, Dict, List, Any, Type, Union
+
+
+# Type variable used in the parse methods below, which should be a subclass of BaseModel.
+T = TypeVar("T", bound="BaseModel")
+
+
+class BaseModel:
+
+ def __init__(self, **kwargs) -> None:
+ self.__dict__.update(kwargs)
+ self.validate()
+
+ # Validates the model, raising an exception if the model is invalid.
+ def validate(self) -> None:
+ pass
+
+ def __eq__(self, other):
+ """Checks whether the two models are equal.
+
+ :param other: The other model.
+ :return: True if they are equal, False if they are different.
+ """
+ return type(self) == type(other) and self.toDict() == other.toDict()
+
+ def __ne__(self, other) -> bool:
+ """Checks whether the two models are different.
+
+ :param other: The other model.
+ :return: True if they are different, False if they are the same.
+ """
+ return type(self) != type(other) or self.toDict() != other.toDict()
+
+ def toDict(self) -> Dict[str, Any]:
+ """Converts the model into a serializable dictionary"""
+
+ return self.__dict__
+
+ @staticmethod
+ def parseModel(model_class: Type[T], values: Union[T, Dict[str, Any]]) -> T:
+ """Parses a single model.
+
+ :param model_class: The model class.
+ :param values: The value of the model, which is usually a dictionary, but may also be already parsed.
+ :return: An instance of the model_class given.
+ """
+ if isinstance(values, dict):
+ return model_class(**values)
+ return values
+
+ @classmethod
+ def parseModels(cls, model_class: Type[T], values: List[Union[T, Dict[str, Any]]]) -> List[T]:
+ """Parses a list of models.
+
+ :param model_class: The model class.
+ :param values: The value of the list. Each value is usually a dictionary, but may also be already parsed.
+ :return: A list of instances of the model_class given.
+ """
+ return [cls.parseModel(model_class, value) for value in values]
+
+ @staticmethod
+ def parseDate(date: Union[str, datetime]) -> datetime:
+ """Parses the given date string.
+
+ :param date: The date to parse.
+ :return: The parsed date.
+ """
+ if isinstance(date, datetime):
+ return date
+ return datetime.strptime(date, "%Y-%m-%dT%H:%M:%S.%fZ").replace(tzinfo=timezone.utc)
diff --git a/plugins/DigitalLibrary/src/CloudError.py b/plugins/DigitalLibrary/src/CloudError.py
new file mode 100644
index 0000000000..3c3f5eece2
--- /dev/null
+++ b/plugins/DigitalLibrary/src/CloudError.py
@@ -0,0 +1,31 @@
+# Copyright (c) 2021 Ultimaker B.V.
+# Cura is released under the terms of the LGPLv3 or higher.
+from typing import Dict, Optional, Any
+
+from .BaseModel import BaseModel
+
+
+class CloudError(BaseModel):
+ """Class representing errors generated by the servers, according to the JSON-API standard."""
+
+ def __init__(self, id: str, code: str, title: str, http_status: str, detail: Optional[str] = None,
+ meta: Optional[Dict[str, Any]] = None, **kwargs) -> None:
+ """Creates a new error object.
+
+ :param id: Unique identifier for this particular occurrence of the problem.
+ :param title: A short, human-readable summary of the problem that SHOULD NOT change from occurrence to occurrence
+ of the problem, except for purposes of localization.
+ :param code: An application-specific error code, expressed as a string value.
+ :param detail: A human-readable explanation specific to this occurrence of the problem. Like title, this field's
+ value can be localized.
+ :param http_status: The HTTP status code applicable to this problem, converted to string.
+ :param meta: Non-standard meta-information about the error, depending on the error code.
+ """
+
+ self.id = id
+ self.code = code
+ self.http_status = http_status
+ self.title = title
+ self.detail = detail
+ self.meta = meta
+ super().__init__(**kwargs)
diff --git a/plugins/DigitalLibrary/src/DFFileExportAndUploadManager.py b/plugins/DigitalLibrary/src/DFFileExportAndUploadManager.py
new file mode 100644
index 0000000000..69163f9cdf
--- /dev/null
+++ b/plugins/DigitalLibrary/src/DFFileExportAndUploadManager.py
@@ -0,0 +1,373 @@
+# Copyright (c) 2021 Ultimaker B.V.
+# Cura is released under the terms of the LGPLv3 or higher.
+import json
+import threading
+from json import JSONDecodeError
+from typing import List, Dict, Any, Callable, Union, Optional
+
+from PyQt5.QtCore import QUrl
+from PyQt5.QtGui import QDesktopServices
+from PyQt5.QtNetwork import QNetworkReply
+
+from UM.FileHandler.FileHandler import FileHandler
+from UM.Logger import Logger
+from UM.Message import Message
+from UM.Scene.SceneNode import SceneNode
+from cura.CuraApplication import CuraApplication
+from .DFLibraryFileUploadRequest import DFLibraryFileUploadRequest
+from .DFLibraryFileUploadResponse import DFLibraryFileUploadResponse
+from .DFPrintJobUploadRequest import DFPrintJobUploadRequest
+from .DFPrintJobUploadResponse import DFPrintJobUploadResponse
+from .DigitalFactoryApiClient import DigitalFactoryApiClient
+from .ExportFileJob import ExportFileJob
+
+
+class DFFileExportAndUploadManager:
+ """
+ Class responsible for exporting the scene and uploading the exported data to the Digital Factory Library. Since 3mf
+ and UFP files may need to be uploaded at the same time, this class keeps a single progress and success message for
+ both files and updates those messages according to the progress of both the file job uploads.
+ """
+ def __init__(self, file_handlers: Dict[str, FileHandler],
+ nodes: List[SceneNode],
+ library_project_id: str,
+ library_project_name: str,
+ file_name: str,
+ formats: List[str],
+ on_upload_error: Callable[[], Any],
+ on_upload_success: Callable[[], Any],
+ on_upload_finished: Callable[[], Any] ,
+ on_upload_progress: Callable[[int], Any]) -> None:
+
+ self._file_handlers = file_handlers # type: Dict[str, FileHandler]
+ self._nodes = nodes # type: List[SceneNode]
+ self._library_project_id = library_project_id # type: str
+ self._library_project_name = library_project_name # type: str
+ self._file_name = file_name # type: str
+ self._upload_jobs = [] # type: List[ExportFileJob]
+ self._formats = formats # type: List[str]
+ self._api = DigitalFactoryApiClient(application = CuraApplication.getInstance(), on_error = lambda error: Logger.log("e", str(error)))
+
+ # Functions of the parent class that should be called based on the upload process output
+ self._on_upload_error = on_upload_error
+ self._on_upload_success = on_upload_success
+ self._on_upload_finished = on_upload_finished
+ self._on_upload_progress = on_upload_progress
+
+ # Lock used for updating the progress message (since the progress is changed by two parallel upload jobs) or
+ # show the success message (once both upload jobs are done)
+ self._message_lock = threading.Lock()
+
+ self._file_upload_job_metadata = self.initializeFileUploadJobMetadata() # type: Dict[str, Dict[str, Any]]
+
+ self.progress_message = Message(
+ title = "Uploading...",
+ text = "Uploading files to '{}'".format(self._library_project_name),
+ progress = -1,
+ lifetime = 0,
+ dismissable = False,
+ use_inactivity_timer = False
+ )
+
+ self._generic_success_message = Message(
+ text = "Your {} uploaded to '{}'.".format("file was" if len(self._file_upload_job_metadata) <= 1 else "files were", self._library_project_name),
+ title = "Upload successful",
+ lifetime = 0,
+ )
+ self._generic_success_message.addAction(
+ "open_df_project",
+ "Open project",
+ "open-folder", "Open the project containing the file in Digital Library"
+ )
+ self._generic_success_message.actionTriggered.connect(self._onMessageActionTriggered)
+
+
+
+ def _onCuraProjectFileExported(self, job: ExportFileJob) -> None:
+ """Handler for when the DF Library workspace file (3MF) has been created locally.
+
+ It can now be sent over the Digital Factory API.
+ """
+ if not job.getOutput():
+ self._onJobExportError(job.getFileName())
+ return
+ self._file_upload_job_metadata[job.getFileName()]["export_job_output"] = job.getOutput()
+ request = DFLibraryFileUploadRequest(
+ content_type = job.getMimeType(),
+ file_name = job.getFileName(),
+ file_size = len(job.getOutput()),
+ library_project_id = self._library_project_id
+ )
+ self._api.requestUpload3MF(request, on_finished = self._uploadFileData, on_error = self._onRequestUploadCuraProjectFileFailed)
+
+ def _onPrintFileExported(self, job: ExportFileJob) -> None:
+ """Handler for when the DF Library print job file (UFP) has been created locally.
+
+ It can now be sent over the Digital Factory API.
+ """
+ if not job.getOutput():
+ self._onJobExportError(job.getFileName())
+ return
+ self._file_upload_job_metadata[job.getFileName()]["export_job_output"] = job.getOutput()
+ request = DFPrintJobUploadRequest(
+ content_type = job.getMimeType(),
+ job_name = job.getFileName(),
+ file_size = len(job.getOutput()),
+ library_project_id = self._library_project_id
+ )
+ self._api.requestUploadUFP(request, on_finished = self._uploadFileData, on_error = self._onRequestUploadPrintFileFailed)
+
+ def _uploadFileData(self, file_upload_response: Union[DFLibraryFileUploadResponse, DFPrintJobUploadResponse]) -> None:
+ """Uploads the exported file data after the file or print job upload has been registered at the Digital Factory
+ Library API.
+
+ :param file_upload_response: The response received from the Digital Factory Library API.
+ """
+ if isinstance(file_upload_response, DFLibraryFileUploadResponse):
+ file_name = file_upload_response.file_name
+ elif isinstance(file_upload_response, DFPrintJobUploadResponse):
+ file_name = file_upload_response.job_name if file_upload_response.job_name is not None else ""
+ else:
+ Logger.log("e", "Wrong response type received. Aborting uploading file to the Digital Library")
+ return
+ with self._message_lock:
+ self.progress_message.show()
+ self._file_upload_job_metadata[file_name]["file_upload_response"] = file_upload_response
+ job_output = self._file_upload_job_metadata[file_name]["export_job_output"]
+
+ with self._message_lock:
+ self._file_upload_job_metadata[file_name]["upload_status"] = "uploading"
+
+ self._api.uploadExportedFileData(file_upload_response,
+ job_output,
+ on_finished = self._onFileUploadFinished,
+ on_success = self._onUploadSuccess,
+ on_progress = self._onUploadProgress,
+ on_error = self._onUploadError)
+
+ def _onUploadProgress(self, filename: str, progress: int) -> None:
+ """
+ Updates the progress message according to the total progress of the two files and displays it to the user. It is
+ made thread-safe with a lock, since the progress can be updated by two separate upload jobs
+
+ :param filename: The name of the file for which we have progress (including the extension).
+ :param progress: The progress percentage
+ """
+ with self._message_lock:
+ self._file_upload_job_metadata[filename]["upload_progress"] = progress
+ self._file_upload_job_metadata[filename]["upload_status"] = "uploading"
+ total_progress = self.getTotalProgress()
+ self.progress_message.setProgress(total_progress)
+ self.progress_message.show()
+ self._on_upload_progress(progress)
+
+ def _onUploadSuccess(self, filename: str) -> None:
+ """
+ Sets the upload status to success and the progress of the file with the given filename to 100%. This function is
+ should be called only if the file has uploaded all of its data successfully (i.e. no error occurred during the
+ upload process).
+
+ :param filename: The name of the file that was uploaded successfully (including the extension).
+ """
+ with self._message_lock:
+ self._file_upload_job_metadata[filename]["upload_status"] = "success"
+ self._file_upload_job_metadata[filename]["upload_progress"] = 100
+ self._on_upload_success()
+
+ def _onFileUploadFinished(self, filename: str) -> None:
+ """
+ Callback that makes sure the correct messages are displayed according to the statuses of the individual jobs.
+
+ This function is called whenever an upload job has finished, regardless if it had errors or was successful.
+ Both jobs have to have finished for the messages to show.
+
+ :param filename: The name of the file that has finished uploading (including the extension).
+ """
+ with self._message_lock:
+
+ # All files have finished their uploading process
+ if all([(file_upload_job["upload_progress"] == 100 and file_upload_job["upload_status"] != "uploading") for file_upload_job in self._file_upload_job_metadata.values()]):
+
+ # Reset and hide the progress message
+ self.progress_message.setProgress(-1)
+ self.progress_message.hide()
+
+ # All files were successfully uploaded.
+ if all([(file_upload_job["upload_status"] == "success") for file_upload_job in self._file_upload_job_metadata.values()]):
+ # Show a single generic success message for all files
+ self._generic_success_message.show()
+ else: # One or more files failed to upload.
+ # Show individual messages for each file, according to their statuses
+ for filename, upload_job_metadata in self._file_upload_job_metadata.items():
+ if upload_job_metadata["upload_status"] == "success":
+ upload_job_metadata["file_upload_success_message"].show()
+ else:
+ upload_job_metadata["file_upload_failed_message"].show()
+
+ # Call the parent's finished function
+ self._on_upload_finished()
+
+ def _onJobExportError(self, filename: str) -> None:
+ """
+ Displays an appropriate message when the process to export a file fails.
+
+ :param filename: The name of the file that failed to be exported (including the extension).
+ """
+ Logger.log("d", "Error while exporting file '{}'".format(filename))
+ with self._message_lock:
+ # Set the progress to 100% when the upload job fails, to avoid having the progress message stuck
+ self._file_upload_job_metadata[filename]["upload_status"] = "failed"
+ self._file_upload_job_metadata[filename]["upload_progress"] = 100
+ self._file_upload_job_metadata[filename]["file_upload_failed_message"] = Message(
+ text = "Failed to export the file '{}'. The upload process is aborted.".format(filename),
+ title = "Export error",
+ lifetime = 0
+ )
+ self._on_upload_error()
+ self._onFileUploadFinished(filename)
+
+ def _onRequestUploadCuraProjectFileFailed(self, reply: "QNetworkReply", network_error: "QNetworkReply.NetworkError") -> None:
+ """
+ Displays an appropriate message when the request to upload the Cura project file (.3mf) to the Digital Library fails.
+ This means that something went wrong with the initial request to create a "file" entry in the digital library.
+ """
+ reply_string = bytes(reply.readAll()).decode()
+ filename_3mf = self._file_name + ".3mf"
+ Logger.log("d", "An error occurred while uploading the Cura project file '{}' to the Digital Library project '{}': {}".format(filename_3mf, self._library_project_id, reply_string))
+ with self._message_lock:
+ # Set the progress to 100% when the upload job fails, to avoid having the progress message stuck
+ self._file_upload_job_metadata[filename_3mf]["upload_status"] = "failed"
+ self._file_upload_job_metadata[filename_3mf]["upload_progress"] = 100
+
+ human_readable_error = self.extractErrorTitle(reply_string)
+ self._file_upload_job_metadata[filename_3mf]["file_upload_failed_message"] = Message(
+ text = "Failed to upload the file '{}' to '{}'. {}".format(filename_3mf, self._library_project_name, human_readable_error),
+ title = "File upload error",
+ lifetime = 0
+ )
+ self._on_upload_error()
+ self._onFileUploadFinished(filename_3mf)
+
+ def _onRequestUploadPrintFileFailed(self, reply: "QNetworkReply", network_error: "QNetworkReply.NetworkError") -> None:
+ """
+ Displays an appropriate message when the request to upload the print file (.ufp) to the Digital Library fails.
+ This means that something went wrong with the initial request to create a "file" entry in the digital library.
+ """
+ reply_string = bytes(reply.readAll()).decode()
+ filename_ufp = self._file_name + ".ufp"
+ Logger.log("d", "An error occurred while uploading the print job file '{}' to the Digital Library project '{}': {}".format(filename_ufp, self._library_project_id, reply_string))
+ with self._message_lock:
+ # Set the progress to 100% when the upload job fails, to avoid having the progress message stuck
+ self._file_upload_job_metadata[filename_ufp]["upload_status"] = "failed"
+ self._file_upload_job_metadata[filename_ufp]["upload_progress"] = 100
+
+ human_readable_error = self.extractErrorTitle(reply_string)
+ self._file_upload_job_metadata[filename_ufp]["file_upload_failed_message"] = Message(
+ title = "File upload error",
+ text = "Failed to upload the file '{}' to '{}'. {}".format(filename_ufp, self._library_project_name, human_readable_error),
+ lifetime = 0
+ )
+ self._on_upload_error()
+ self._onFileUploadFinished(filename_ufp)
+
+ @staticmethod
+ def extractErrorTitle(reply_body: Optional[str]) -> str:
+ error_title = ""
+ if reply_body:
+ try:
+ reply_dict = json.loads(reply_body)
+ except JSONDecodeError:
+ Logger.logException("w", "Unable to extract title from reply body")
+ return error_title
+ if "errors" in reply_dict and len(reply_dict["errors"]) >= 1 and "title" in reply_dict["errors"][0]:
+ error_title = reply_dict["errors"][0]["title"]
+ return error_title
+
+ def _onUploadError(self, filename: str, reply: "QNetworkReply", error: "QNetworkReply.NetworkError") -> None:
+ """
+ Displays the given message if uploading the mesh has failed due to a generic error (i.e. lost connection).
+ If one of the two files fail, this error function will set its progress as finished, to make sure that the
+ progress message doesn't get stuck.
+
+ :param filename: The name of the file that failed to upload (including the extension).
+ """
+ reply_string = bytes(reply.readAll()).decode()
+ Logger.log("d", "Error while uploading '{}' to the Digital Library project '{}'. Reply: {}".format(filename, self._library_project_id, reply_string))
+ with self._message_lock:
+ # Set the progress to 100% when the upload job fails, to avoid having the progress message stuck
+ self._file_upload_job_metadata[filename]["upload_status"] = "failed"
+ self._file_upload_job_metadata[filename]["upload_progress"] = 100
+ human_readable_error = self.extractErrorTitle(reply_string)
+ self._file_upload_job_metadata[filename]["file_upload_failed_message"] = Message(
+ title = "File upload error",
+ text = "Failed to upload the file '{}' to '{}'. {}".format(self._file_name, self._library_project_name, human_readable_error),
+ lifetime = 0
+ )
+
+ self._on_upload_error()
+
+ def getTotalProgress(self) -> int:
+ """
+ Returns the total upload progress of all the upload jobs
+
+ :return: The average progress percentage
+ """
+ return int(sum([file_upload_job["upload_progress"] for file_upload_job in self._file_upload_job_metadata.values()]) / len(self._file_upload_job_metadata.values()))
+
+ def _onMessageActionTriggered(self, message, action):
+ if action == "open_df_project":
+ project_url = "{}/app/library/project/{}?wait_for_new_files=true".format(CuraApplication.getInstance().ultimakerDigitalFactoryUrl, self._library_project_id)
+ QDesktopServices.openUrl(QUrl(project_url))
+ message.hide()
+
+ def start(self) -> None:
+ for job in self._upload_jobs:
+ job.start()
+
+ def initializeFileUploadJobMetadata(self) -> Dict[str, Any]:
+ metadata = {}
+ self._upload_jobs = []
+ if "3mf" in self._formats and "3mf" in self._file_handlers and self._file_handlers["3mf"]:
+ filename_3mf = self._file_name + ".3mf"
+ metadata[filename_3mf] = {
+ "export_job_output" : None,
+ "upload_progress" : -1,
+ "upload_status" : "",
+ "file_upload_response": None,
+ "file_upload_success_message": Message(
+ text = "'{}' was uploaded to '{}'.".format(filename_3mf, self._library_project_name),
+ title = "Upload successful",
+ lifetime = 0,
+ ),
+ "file_upload_failed_message": Message(
+ text = "Failed to upload the file '{}' to '{}'.".format(filename_3mf, self._library_project_name),
+ title = "File upload error",
+ lifetime = 0
+ )
+ }
+ job_3mf = ExportFileJob(self._file_handlers["3mf"], self._nodes, self._file_name, "3mf")
+ job_3mf.finished.connect(self._onCuraProjectFileExported)
+ self._upload_jobs.append(job_3mf)
+
+ if "ufp" in self._formats and "ufp" in self._file_handlers and self._file_handlers["ufp"]:
+ filename_ufp = self._file_name + ".ufp"
+ metadata[filename_ufp] = {
+ "export_job_output" : None,
+ "upload_progress" : -1,
+ "upload_status" : "",
+ "file_upload_response": None,
+ "file_upload_success_message": Message(
+ text = "'{}' was uploaded to '{}'.".format(filename_ufp, self._library_project_name),
+ title = "Upload successful",
+ lifetime = 0,
+ ),
+ "file_upload_failed_message": Message(
+ text = "Failed to upload the file '{}' to '{}'.".format(filename_ufp, self._library_project_name),
+ title = "File upload error",
+ lifetime = 0
+ )
+ }
+ job_ufp = ExportFileJob(self._file_handlers["ufp"], self._nodes, self._file_name, "ufp")
+ job_ufp.finished.connect(self._onPrintFileExported)
+ self._upload_jobs.append(job_ufp)
+ return metadata
diff --git a/plugins/DigitalLibrary/src/DFFileUploader.py b/plugins/DigitalLibrary/src/DFFileUploader.py
new file mode 100644
index 0000000000..10fee03c4c
--- /dev/null
+++ b/plugins/DigitalLibrary/src/DFFileUploader.py
@@ -0,0 +1,149 @@
+# Copyright (c) 2021 Ultimaker B.V.
+# Cura is released under the terms of the LGPLv3 or higher.
+
+from PyQt5.QtNetwork import QNetworkRequest, QNetworkReply
+from typing import Callable, Any, cast, Optional, Union
+
+from UM.Logger import Logger
+from UM.TaskManagement.HttpRequestManager import HttpRequestManager
+from .DFLibraryFileUploadResponse import DFLibraryFileUploadResponse
+from .DFPrintJobUploadResponse import DFPrintJobUploadResponse
+
+
+class DFFileUploader:
+ """Class responsible for uploading meshes to the the digital factory library in separate requests."""
+
+ # The maximum amount of times to retry if the server returns one of the RETRY_HTTP_CODES
+ MAX_RETRIES = 10
+
+ # The HTTP codes that should trigger a retry.
+ RETRY_HTTP_CODES = {500, 502, 503, 504}
+
+ def __init__(self,
+ http: HttpRequestManager,
+ df_file: Union[DFLibraryFileUploadResponse, DFPrintJobUploadResponse],
+ data: bytes,
+ on_finished: Callable[[str], Any],
+ on_success: Callable[[str], Any],
+ on_progress: Callable[[str, int], Any],
+ on_error: Callable[[str, "QNetworkReply", "QNetworkReply.NetworkError"], Any]
+ ) -> None:
+ """Creates a mesh upload object.
+
+ :param http: The network access manager that will handle the HTTP requests.
+ :param df_file: The file response that was received by the Digital Factory after registering the upload.
+ :param data: The mesh bytes to be uploaded.
+ :param on_finished: The method to be called when done.
+ :param on_success: The method to be called when the upload is successful.
+ :param on_progress: The method to be called when the progress changes (receives a percentage 0-100).
+ :param on_error: The method to be called when an error occurs.
+ """
+
+ self._http = http # type: HttpRequestManager
+ self._df_file = df_file # type: Union[DFLibraryFileUploadResponse, DFPrintJobUploadResponse]
+ self._file_name = ""
+ if isinstance(self._df_file, DFLibraryFileUploadResponse):
+ self._file_name = self._df_file.file_name
+ elif isinstance(self._df_file, DFPrintJobUploadResponse):
+ if self._df_file.job_name is not None:
+ self._file_name = self._df_file.job_name
+ else:
+ self._file_name = ""
+ else:
+ raise TypeError("Incorrect input type")
+ self._data = data # type: bytes
+
+ self._on_finished = on_finished
+ self._on_success = on_success
+ self._on_progress = on_progress
+ self._on_error = on_error
+
+ self._retries = 0
+ self._finished = False
+
+ def start(self) -> None:
+ """Starts uploading the mesh."""
+
+ if self._finished:
+ # reset state.
+ self._retries = 0
+ self._finished = False
+ self._upload()
+
+ def stop(self):
+ """Stops uploading the mesh, marking it as finished."""
+
+ Logger.log("i", "Finished uploading")
+ self._finished = True # Signal to any ongoing retries that we should stop retrying.
+ self._on_finished(self._file_name)
+
+ def _upload(self) -> None:
+ """
+ Uploads the file to the Digital Factory Library project
+ """
+ if self._finished:
+ raise ValueError("The upload is already finished")
+ if isinstance(self._df_file, DFLibraryFileUploadResponse):
+ Logger.log("i", "Uploading Cura project file '{file_name}' via link '{upload_url}'".format(file_name = self._df_file.file_name, upload_url = self._df_file.upload_url))
+ elif isinstance(self._df_file, DFPrintJobUploadResponse):
+ Logger.log("i", "Uploading Cura print file '{file_name}' via link '{upload_url}'".format(file_name = self._df_file.job_name, upload_url = self._df_file.upload_url))
+ self._http.put(
+ url = cast(str, self._df_file.upload_url),
+ headers_dict = {"Content-Type": cast(str, self._df_file.content_type)},
+ data = self._data,
+ callback = self._onUploadFinished,
+ error_callback = self._onUploadError,
+ upload_progress_callback = self._onUploadProgressChanged
+ )
+
+ def _onUploadProgressChanged(self, bytes_sent: int, bytes_total: int) -> None:
+ """Handles an update to the upload progress
+
+ :param bytes_sent: The amount of bytes sent in the current request.
+ :param bytes_total: The amount of bytes to send in the current request.
+ """
+ Logger.debug("Cloud upload progress %s / %s", bytes_sent, bytes_total)
+ if bytes_total:
+ self._on_progress(self._file_name, int(bytes_sent / len(self._data) * 100))
+
+ def _onUploadError(self, reply: QNetworkReply, error: QNetworkReply.NetworkError) -> None:
+ """Handles an error uploading."""
+
+ body = bytes(reply.peek(reply.bytesAvailable())).decode()
+ Logger.log("e", "Received error while uploading: %s", body)
+ self._on_error(self._file_name, reply, error)
+ self.stop()
+
+ def _onUploadFinished(self, reply: QNetworkReply) -> None:
+ """
+ Checks whether a chunk of data was uploaded successfully, starting the next chunk if needed.
+ """
+
+ Logger.log("i", "Finished callback %s %s",
+ reply.attribute(QNetworkRequest.HttpStatusCodeAttribute), reply.url().toString())
+
+ status_code = reply.attribute(QNetworkRequest.HttpStatusCodeAttribute) # type: Optional[int]
+ if not status_code:
+ Logger.log("e", "Reply contained no status code.")
+ self._onUploadError(reply, None)
+ return
+
+ # check if we should retry the last chunk
+ if self._retries < self.MAX_RETRIES and status_code in self.RETRY_HTTP_CODES:
+ self._retries += 1
+ Logger.log("i", "Retrying %s/%s request %s", self._retries, self.MAX_RETRIES, reply.url().toString())
+ try:
+ self._upload()
+ except ValueError: # Asynchronously it could have completed in the meanwhile.
+ pass
+ return
+
+ # Http codes that are not to be retried are assumed to be errors.
+ if status_code > 308:
+ self._onUploadError(reply, None)
+ return
+
+ Logger.log("d", "status_code: %s, Headers: %s, body: %s", status_code,
+ [bytes(header).decode() for header in reply.rawHeaderList()], bytes(reply.readAll()).decode())
+ self._on_success(self._file_name)
+ self.stop()
diff --git a/plugins/DigitalLibrary/src/DFLibraryFileUploadRequest.py b/plugins/DigitalLibrary/src/DFLibraryFileUploadRequest.py
new file mode 100644
index 0000000000..d9f1af1490
--- /dev/null
+++ b/plugins/DigitalLibrary/src/DFLibraryFileUploadRequest.py
@@ -0,0 +1,16 @@
+# Copyright (c) 2021 Ultimaker B.V.
+# Cura is released under the terms of the LGPLv3 or higher.
+
+# Model that represents the request to upload a file to a DF Library project
+from .BaseModel import BaseModel
+
+
+class DFLibraryFileUploadRequest(BaseModel):
+
+ def __init__(self, content_type: str, file_name: str, file_size: int, library_project_id: str, **kwargs) -> None:
+
+ self.content_type = content_type
+ self.file_name = file_name
+ self.file_size = file_size
+ self.library_project_id = library_project_id
+ super().__init__(**kwargs)
diff --git a/plugins/DigitalLibrary/src/DFLibraryFileUploadResponse.py b/plugins/DigitalLibrary/src/DFLibraryFileUploadResponse.py
new file mode 100644
index 0000000000..3093c39076
--- /dev/null
+++ b/plugins/DigitalLibrary/src/DFLibraryFileUploadResponse.py
@@ -0,0 +1,49 @@
+# Copyright (c) 2021 Ultimaker B.V.
+# Cura is released under the terms of the LGPLv3 or higher.
+from datetime import datetime
+from typing import Optional
+
+from .BaseModel import BaseModel
+
+
+class DFLibraryFileUploadResponse(BaseModel):
+ """
+ Model that represents the response received from the Digital Factory after requesting to upload a file in a Library project
+ """
+
+ def __init__(self, client_id: str, content_type: str, file_id: str, file_name: str, library_project_id: str,
+ status: str, uploaded_at: str, user_id: str, username: str, download_url: Optional[str] = None,
+ file_size: Optional[int] = None, status_description: Optional[str] = None,
+ upload_url: Optional[str] = None, **kwargs) -> None:
+
+ """
+ :param client_id: The ID of the OAuth2 client that uploaded this file
+ :param content_type: The content type of the Digital Library project file
+ :param file_id: The ID of the library project file
+ :param file_name: The name of the file
+ :param library_project_id: The ID of the library project, in which the file will be uploaded
+ :param status: The status of the Digital Library project file
+ :param uploaded_at: The time on which the file was uploaded
+ :param user_id: The ID of the user that uploaded this file
+ :param username: The user's unique username
+ :param download_url: A signed URL to download the resulting file. Only available when the job is finished
+ :param file_size: The size of the uploaded file (in bytes)
+ :param status_description: Contains more details about the status, e.g. the cause of failures
+ :param upload_url: The one-time use URL where the file must be uploaded to (only if status is uploading)
+ :param kwargs: Other keyword arguments that may be included in the response
+ """
+
+ self.client_id = client_id # type: str
+ self.content_type = content_type # type: str
+ self.file_id = file_id # type: str
+ self.file_name = file_name # type: str
+ self.library_project_id = library_project_id # type: str
+ self.status = status # type: str
+ self.uploaded_at = self.parseDate(uploaded_at) # type: datetime
+ self.user_id = user_id # type: str
+ self.username = username # type: str
+ self.download_url = download_url # type: Optional[str]
+ self.file_size = file_size # type: Optional[int]
+ self.status_description = status_description # type: Optional[str]
+ self.upload_url = upload_url # type: Optional[str]
+ super().__init__(**kwargs)
diff --git a/plugins/DigitalLibrary/src/DFPrintJobUploadRequest.py b/plugins/DigitalLibrary/src/DFPrintJobUploadRequest.py
new file mode 100644
index 0000000000..ab434e3f04
--- /dev/null
+++ b/plugins/DigitalLibrary/src/DFPrintJobUploadRequest.py
@@ -0,0 +1,21 @@
+# Copyright (c) 2021 Ultimaker B.V.
+# Cura is released under the terms of the LGPLv3 or higher.
+from .BaseModel import BaseModel
+
+
+# Model that represents the request to upload a print job to the cloud
+class DFPrintJobUploadRequest(BaseModel):
+
+ def __init__(self, job_name: str, file_size: int, content_type: str, library_project_id: str, **kwargs) -> None:
+ """Creates a new print job upload request.
+
+ :param job_name: The name of the print job.
+ :param file_size: The size of the file in bytes.
+ :param content_type: The content type of the print job (e.g. text/plain or application/gzip)
+ """
+
+ self.job_name = job_name
+ self.file_size = file_size
+ self.content_type = content_type
+ self.library_project_id = library_project_id
+ super().__init__(**kwargs)
diff --git a/plugins/DigitalLibrary/src/DFPrintJobUploadResponse.py b/plugins/DigitalLibrary/src/DFPrintJobUploadResponse.py
new file mode 100644
index 0000000000..35819645de
--- /dev/null
+++ b/plugins/DigitalLibrary/src/DFPrintJobUploadResponse.py
@@ -0,0 +1,35 @@
+# Copyright (c) 2021 Ultimaker B.V.
+# Cura is released under the terms of the LGPLv3 or higher.
+from typing import Optional
+
+from .BaseModel import BaseModel
+
+
+# Model that represents the response received from the cloud after requesting to upload a print job
+class DFPrintJobUploadResponse(BaseModel):
+
+ def __init__(self, job_id: str, status: str, download_url: Optional[str] = None, job_name: Optional[str] = None,
+ upload_url: Optional[str] = None, content_type: Optional[str] = None,
+ status_description: Optional[str] = None, slicing_details: Optional[dict] = None, **kwargs) -> None:
+ """Creates a new print job response model.
+
+ :param job_id: The job unique ID, e.g. 'kBEeZWEifXbrXviO8mRYLx45P8k5lHVGs43XKvRniPg='.
+ :param status: The status of the print job.
+ :param status_description: Contains more details about the status, e.g. the cause of failures.
+ :param download_url: A signed URL to download the resulting status. Only available when the job is finished.
+ :param job_name: The name of the print job.
+ :param slicing_details: Model for slice information.
+ :param upload_url: The one-time use URL where the toolpath must be uploaded to (only if status is uploading).
+ :param content_type: The content type of the print job (e.g. text/plain or application/gzip)
+ :param generated_time: The datetime when the object was generated on the server-side.
+ """
+
+ self.job_id = job_id
+ self.status = status
+ self.download_url = download_url
+ self.job_name = job_name
+ self.upload_url = upload_url
+ self.content_type = content_type
+ self.status_description = status_description
+ self.slicing_details = slicing_details
+ super().__init__(**kwargs)
diff --git a/plugins/DigitalLibrary/src/DigitalFactoryApiClient.py b/plugins/DigitalLibrary/src/DigitalFactoryApiClient.py
new file mode 100644
index 0000000000..ad87ea9b8a
--- /dev/null
+++ b/plugins/DigitalLibrary/src/DigitalFactoryApiClient.py
@@ -0,0 +1,381 @@
+# Copyright (c) 2021 Ultimaker B.V.
+# Cura is released under the terms of the LGPLv3 or higher.
+
+import json
+from json import JSONDecodeError
+import re
+from time import time
+from typing import List, Any, Optional, Union, Type, Tuple, Dict, cast, TypeVar, Callable
+
+from PyQt5.QtNetwork import QNetworkReply, QNetworkRequest
+
+from UM.Logger import Logger
+from UM.TaskManagement.HttpRequestManager import HttpRequestManager
+from UM.TaskManagement.HttpRequestScope import JsonDecoratorScope
+from cura.CuraApplication import CuraApplication
+from cura.UltimakerCloud import UltimakerCloudConstants
+from cura.UltimakerCloud.UltimakerCloudScope import UltimakerCloudScope
+from .DFPrintJobUploadResponse import DFPrintJobUploadResponse
+from .BaseModel import BaseModel
+from .CloudError import CloudError
+from .DFFileUploader import DFFileUploader
+from .DFLibraryFileUploadRequest import DFLibraryFileUploadRequest
+from .DFLibraryFileUploadResponse import DFLibraryFileUploadResponse
+from .DFPrintJobUploadRequest import DFPrintJobUploadRequest
+from .DigitalFactoryFeatureBudgetResponse import DigitalFactoryFeatureBudgetResponse
+from .DigitalFactoryFileResponse import DigitalFactoryFileResponse
+from .DigitalFactoryProjectResponse import DigitalFactoryProjectResponse
+from .PaginationLinks import PaginationLinks
+from .PaginationManager import PaginationManager
+
+CloudApiClientModel = TypeVar("CloudApiClientModel", bound=BaseModel)
+"""The generic type variable used to document the methods below."""
+
+
+class DigitalFactoryApiClient:
+ # The URL to access the digital factory.
+ ROOT_PATH = UltimakerCloudConstants.CuraCloudAPIRoot
+ CURA_API_ROOT = "{}/cura/v1".format(ROOT_PATH)
+
+ DEFAULT_REQUEST_TIMEOUT = 10 # seconds
+
+ # In order to avoid garbage collection we keep the callbacks in this list.
+ _anti_gc_callbacks = [] # type: List[Callable[[Any], None]]
+
+ def __init__(self, application: CuraApplication, on_error: Callable[[List[CloudError]], None], projects_limit_per_page: Optional[int] = None) -> None:
+ """Initializes a new digital factory API client.
+
+ :param application:
+ :param on_error: The callback to be called whenever we receive errors from the server.
+ """
+ super().__init__()
+ self._application = application
+ self._account = application.getCuraAPI().account
+ self._scope = JsonDecoratorScope(UltimakerCloudScope(application))
+ self._http = HttpRequestManager.getInstance()
+ self._on_error = on_error
+ self._file_uploader = None # type: Optional[DFFileUploader]
+ self._library_max_private_projects: Optional[int] = None
+
+ self._projects_pagination_mgr = PaginationManager(limit = projects_limit_per_page) if projects_limit_per_page else None # type: Optional[PaginationManager]
+
+ def checkUserHasAccess(self, callback: Callable) -> None:
+ """Checks if the user has any sort of access to the digital library.
+ A user is considered to have access if the max-# of private projects is greater then 0 (or -1 for unlimited).
+ """
+
+ def callbackWrap(response: Optional[Any] = None, *args, **kwargs) -> None:
+ if (response is not None and isinstance(response, DigitalFactoryFeatureBudgetResponse) and
+ response.library_max_private_projects is not None):
+ callback(
+ response.library_max_private_projects == -1 or # Note: -1 is unlimited
+ response.library_max_private_projects > 0)
+ self._library_max_private_projects = response.library_max_private_projects
+ else:
+ Logger.warning(f"Digital Factory: Response is not a feature budget, likely an error: {str(response)}")
+ callback(False)
+
+ self._http.get(f"{self.CURA_API_ROOT}/feature_budgets",
+ scope = self._scope,
+ callback = self._parseCallback(callbackWrap, DigitalFactoryFeatureBudgetResponse, callbackWrap),
+ error_callback = callbackWrap,
+ timeout = self.DEFAULT_REQUEST_TIMEOUT)
+
+ def checkUserCanCreateNewLibraryProject(self, callback: Callable) -> None:
+ """
+ Checks if the user is allowed to create new library projects.
+ A user is allowed to create new library projects if the haven't reached their maximum allowed private projects.
+ """
+
+ def callbackWrap(response: Optional[Any] = None, *args, **kwargs) -> None:
+ if response is not None:
+ if isinstance(response, DigitalFactoryProjectResponse): # The user has only one private project
+ callback(True)
+ elif isinstance(response, list) and all(isinstance(r, DigitalFactoryProjectResponse) for r in response):
+ callback(len(response) < cast(int, self._library_max_private_projects))
+ else:
+ Logger.warning(f"Digital Factory: Incorrect response type received when requesting private projects: {str(response)}")
+ callback(False)
+ else:
+ Logger.warning(f"Digital Factory: Response is empty, likely an error: {str(response)}")
+ callback(False)
+
+ if self._library_max_private_projects is not None and self._library_max_private_projects > 0:
+ # The user has a limit in the number of private projects they can create. Check whether they have already
+ # reached that limit.
+ # Note: Set the pagination manager to None when doing this get request, or else the next/previous links
+ # of the pagination will become corrupted
+ url = f"{self.CURA_API_ROOT}/projects?shared=false&limit={self._library_max_private_projects}"
+ self._http.get(url,
+ scope = self._scope,
+ callback = self._parseCallback(callbackWrap, DigitalFactoryProjectResponse, callbackWrap, pagination_manager = None),
+ error_callback = callbackWrap,
+ timeout = self.DEFAULT_REQUEST_TIMEOUT)
+ else:
+ # If the limit is -1, then the user is allowed unlimited projects. If its 0 then they are not allowed to
+ # create any projects
+ callback(self._library_max_private_projects == -1)
+
+ def getProject(self, library_project_id: str, on_finished: Callable[[DigitalFactoryProjectResponse], Any], failed: Callable) -> None:
+ """
+ Retrieves a digital factory project by its library project id.
+
+ :param library_project_id: The id of the library project
+ :param on_finished: The function to be called after the result is parsed.
+ :param failed: The function to be called if the request fails.
+ """
+ url = "{}/projects/{}".format(self.CURA_API_ROOT, library_project_id)
+
+ self._http.get(url,
+ scope = self._scope,
+ callback = self._parseCallback(on_finished, DigitalFactoryProjectResponse, failed),
+ error_callback = failed,
+ timeout = self.DEFAULT_REQUEST_TIMEOUT)
+
+ def getProjectsFirstPage(self, search_filter: str, on_finished: Callable[[List[DigitalFactoryProjectResponse]], Any], failed: Callable) -> None:
+ """
+ Retrieves digital factory projects for the user that is currently logged in.
+
+ If a projects pagination manager exists, then it attempts to get the first page of the paginated projects list,
+ according to the limit set in the pagination manager. If there is no projects pagination manager, this function
+ leaves the project limit to the default set on the server side (999999).
+
+ :param search_filter: Text to filter the search results. If given an empty string, results are not filtered.
+ :param on_finished: The function to be called after the result is parsed.
+ :param failed: The function to be called if the request fails.
+ """
+ url = f"{self.CURA_API_ROOT}/projects"
+ query_character = "?"
+ if self._projects_pagination_mgr:
+ self._projects_pagination_mgr.reset() # reset to clear all the links and response metadata
+ url += f"{query_character}limit={self._projects_pagination_mgr.limit}"
+ query_character = "&"
+ if search_filter != "":
+ url += f"{query_character}search={search_filter}"
+
+ self._http.get(url,
+ scope = self._scope,
+ callback = self._parseCallback(on_finished, DigitalFactoryProjectResponse, failed, pagination_manager = self._projects_pagination_mgr),
+ error_callback = failed,
+ timeout = self.DEFAULT_REQUEST_TIMEOUT)
+
+ def getMoreProjects(self,
+ on_finished: Callable[[List[DigitalFactoryProjectResponse]], Any],
+ failed: Callable) -> None:
+ """Retrieves the next page of the paginated projects list from the API, provided that there is any.
+
+ :param on_finished: The function to be called after the result is parsed.
+ :param failed: The function to be called if the request fails.
+ """
+
+ if self.hasMoreProjectsToLoad():
+ url = cast(PaginationLinks, cast(PaginationManager, self._projects_pagination_mgr).links).next_page
+ self._http.get(url,
+ scope = self._scope,
+ callback = self._parseCallback(on_finished, DigitalFactoryProjectResponse, failed, pagination_manager = self._projects_pagination_mgr),
+ error_callback = failed,
+ timeout = self.DEFAULT_REQUEST_TIMEOUT)
+ else:
+ Logger.log("d", "There are no more projects to load.")
+
+ def hasMoreProjectsToLoad(self) -> bool:
+ """
+ Determines whether the client can get more pages of projects list from the API.
+
+ :return: Whether there are more pages in the projects list available to be retrieved from the API.
+ """
+ return self._projects_pagination_mgr is not None and self._projects_pagination_mgr.links is not None and self._projects_pagination_mgr.links.next_page is not None
+
+ def getListOfFilesInProject(self, library_project_id: str, on_finished: Callable[[List[DigitalFactoryFileResponse]], Any], failed: Callable) -> None:
+ """Retrieves the list of files contained in the project with library_project_id from the Digital Factory Library.
+
+ :param library_project_id: The id of the digital factory library project in which the files are included
+ :param on_finished: The function to be called after the result is parsed.
+ :param failed: The function to be called if the request fails.
+ """
+
+ url = "{}/projects/{}/files".format(self.CURA_API_ROOT, library_project_id)
+ self._http.get(url,
+ scope = self._scope,
+ callback = self._parseCallback(on_finished, DigitalFactoryFileResponse, failed),
+ error_callback = failed,
+ timeout = self.DEFAULT_REQUEST_TIMEOUT)
+
+ def _parseCallback(self,
+ on_finished: Union[Callable[[CloudApiClientModel], Any],
+ Callable[[List[CloudApiClientModel]], Any]],
+ model: Type[CloudApiClientModel],
+ on_error: Optional[Callable] = None,
+ pagination_manager: Optional[PaginationManager] = None) -> Callable[[QNetworkReply], None]:
+
+ """
+ Creates a callback function so that it includes the parsing of the response into the correct model.
+ The callback is added to the 'finished' signal of the reply. If a paginated request was made and a pagination
+ manager is given, the pagination metadata will be held there.
+
+ :param on_finished: The callback in case the response is successful. Depending on the endpoint it will be either
+ a list or a single item.
+ :param model: The type of the model to convert the response to.
+ :param on_error: The callback in case the response is ... less successful.
+ :param pagination_manager: Holds the pagination links and metadata contained in paginated responses.
+ If no pagination manager is provided, the pagination metadata is ignored.
+ """
+
+ def parse(reply: QNetworkReply) -> None:
+
+ self._anti_gc_callbacks.remove(parse)
+
+ # Don't try to parse the reply if we didn't get one
+ if reply.attribute(QNetworkRequest.HttpStatusCodeAttribute) is None:
+ if on_error is not None:
+ on_error()
+ return
+
+ status_code, response = self._parseReply(reply)
+ if status_code >= 300 and on_error is not None:
+ on_error()
+ else:
+ self._parseModels(response, on_finished, model, pagination_manager = pagination_manager)
+
+ self._anti_gc_callbacks.append(parse)
+ return parse
+
+ @staticmethod
+ def _parseReply(reply: QNetworkReply) -> Tuple[int, Dict[str, Any]]:
+ """Parses the given JSON network reply into a status code and a dictionary, handling unexpected errors as well.
+
+ :param reply: The reply from the server.
+ :return: A tuple with a status code and a dictionary.
+ """
+
+ status_code = reply.attribute(QNetworkRequest.HttpStatusCodeAttribute)
+ try:
+ response = bytes(reply.readAll()).decode()
+ return status_code, json.loads(response)
+ except (UnicodeDecodeError, JSONDecodeError, ValueError) as err:
+ error = CloudError(code = type(err).__name__, title = str(err), http_code = str(status_code),
+ id = str(time()), http_status = "500")
+ Logger.logException("e", "Could not parse the stardust response: %s", error.toDict())
+ return status_code, {"errors": [error.toDict()]}
+
+ def _parseModels(self,
+ response: Dict[str, Any],
+ on_finished: Union[Callable[[CloudApiClientModel], Any],
+ Callable[[List[CloudApiClientModel]], Any]],
+ model_class: Type[CloudApiClientModel],
+ pagination_manager: Optional[PaginationManager] = None) -> None:
+ """Parses the given models and calls the correct callback depending on the result.
+
+ :param response: The response from the server, after being converted to a dict.
+ :param on_finished: The callback in case the response is successful.
+ :param model_class: The type of the model to convert the response to. It may either be a single record or a list.
+ :param pagination_manager: Holds the pagination links and metadata contained in paginated responses.
+ If no pagination manager is provided, the pagination metadata is ignored.
+ """
+
+ if "data" in response:
+ data = response["data"]
+ if "meta" in response and pagination_manager:
+ pagination_manager.setResponseMeta(response["meta"])
+ if "links" in response and pagination_manager:
+ pagination_manager.setLinks(response["links"])
+ if isinstance(data, list):
+ results = [model_class(**c) for c in data] # type: List[CloudApiClientModel]
+ on_finished_list = cast(Callable[[List[CloudApiClientModel]], Any], on_finished)
+ on_finished_list(results)
+ else:
+ result = model_class(**data) # type: CloudApiClientModel
+ on_finished_item = cast(Callable[[CloudApiClientModel], Any], on_finished)
+ on_finished_item(result)
+ elif "errors" in response:
+ self._on_error([CloudError(**error) for error in response["errors"]])
+ else:
+ Logger.log("e", "Cannot find data or errors in the cloud response: %s", response)
+
+ def requestUpload3MF(self, request: DFLibraryFileUploadRequest,
+ on_finished: Callable[[DFLibraryFileUploadResponse], Any],
+ on_error: Optional[Callable[["QNetworkReply", "QNetworkReply.NetworkError"], None]] = None) -> None:
+
+ """Requests the Digital Factory to register the upload of a file in a library project.
+
+ :param request: The request object.
+ :param on_finished: The function to be called after the result is parsed.
+ :param on_error: The callback in case the request fails.
+ """
+
+ url = "{}/files/upload".format(self.CURA_API_ROOT)
+ data = json.dumps({"data": request.toDict()}).encode()
+
+ self._http.put(url,
+ scope = self._scope,
+ data = data,
+ callback = self._parseCallback(on_finished, DFLibraryFileUploadResponse),
+ error_callback = on_error,
+ timeout = self.DEFAULT_REQUEST_TIMEOUT)
+
+ def requestUploadUFP(self, request: DFPrintJobUploadRequest,
+ on_finished: Callable[[DFPrintJobUploadResponse], Any],
+ on_error: Optional[Callable[["QNetworkReply", "QNetworkReply.NetworkError"], None]] = None) -> None:
+ """Requests the Digital Factory to register the upload of a file in a library project.
+
+ :param request: The request object.
+ :param on_finished: The function to be called after the result is parsed.
+ :param on_error: The callback in case the request fails.
+ """
+
+ url = "{}/jobs/upload".format(self.CURA_API_ROOT)
+ data = json.dumps({"data": request.toDict()}).encode()
+
+ self._http.put(url,
+ scope = self._scope,
+ data = data,
+ callback = self._parseCallback(on_finished, DFPrintJobUploadResponse),
+ error_callback = on_error,
+ timeout = self.DEFAULT_REQUEST_TIMEOUT)
+
+ def uploadExportedFileData(self,
+ df_file_upload_response: Union[DFLibraryFileUploadResponse, DFPrintJobUploadResponse],
+ mesh: bytes,
+ on_finished: Callable[[str], Any],
+ on_success: Callable[[str], Any],
+ on_progress: Callable[[str, int], Any],
+ on_error: Callable[[str, "QNetworkReply", "QNetworkReply.NetworkError"], Any]) -> None:
+
+ """Uploads an exported file (in bytes) to the Digital Factory Library.
+
+ :param df_file_upload_response: The response received after requesting an upload with `self.requestUpload`.
+ :param mesh: The mesh data (in bytes) to be uploaded.
+ :param on_finished: The function to be called after the upload has finished. Called both after on_success and on_error.
+ It receives the name of the file that has finished uploading.
+ :param on_success: The function to be called if the upload was successful.
+ It receives the name of the file that was uploaded successfully.
+ :param on_progress: A function to be called during upload progress. It receives a percentage (0-100).
+ It receives the name of the file for which the upload progress should be updated.
+ :param on_error: A function to be called if the upload fails.
+ It receives the name of the file that produced errors during the upload process.
+ """
+
+ self._file_uploader = DFFileUploader(self._http, df_file_upload_response, mesh, on_finished, on_success, on_progress, on_error)
+ self._file_uploader.start()
+
+ def createNewProject(self, project_name: str, on_finished: Callable[[DigitalFactoryProjectResponse], Any], on_error: Callable) -> None:
+ """ Create a new project in the Digital Factory.
+
+ :param project_name: Name of the new to be created project.
+ :param on_finished: The function to be called after the result is parsed.
+ :param on_error: The function to be called if anything goes wrong.
+ """
+ Logger.log("i", "Attempt to create new DF project '{}'.".format(project_name))
+
+ url = "{}/projects".format(self.CURA_API_ROOT)
+ data = json.dumps({"data": {"display_name": project_name}}).encode()
+ self._http.put(url,
+ scope = self._scope,
+ data = data,
+ callback = self._parseCallback(on_finished, DigitalFactoryProjectResponse),
+ error_callback = on_error,
+ timeout = self.DEFAULT_REQUEST_TIMEOUT)
+
+ def clear(self) -> None:
+ if self._projects_pagination_mgr is not None:
+ self._projects_pagination_mgr.reset()
diff --git a/plugins/DigitalLibrary/src/DigitalFactoryController.py b/plugins/DigitalLibrary/src/DigitalFactoryController.py
new file mode 100644
index 0000000000..cd0f0be638
--- /dev/null
+++ b/plugins/DigitalLibrary/src/DigitalFactoryController.py
@@ -0,0 +1,620 @@
+# Copyright (c) 2021 Ultimaker B.V.
+# Cura is released under the terms of the LGPLv3 or higher.
+
+import json
+import math
+import os
+import tempfile
+import threading
+from enum import IntEnum
+from pathlib import Path
+from typing import Optional, List, Dict, Any, cast
+
+from PyQt5.QtCore import pyqtSignal, QObject, pyqtSlot, pyqtProperty, Q_ENUMS, QTimer, QUrl
+from PyQt5.QtNetwork import QNetworkReply
+from PyQt5.QtQml import qmlRegisterType, qmlRegisterUncreatableType
+
+from UM.FileHandler.FileHandler import FileHandler
+from UM.Logger import Logger
+from UM.Message import Message
+from UM.Scene.SceneNode import SceneNode
+from UM.Signal import Signal
+from UM.TaskManagement.HttpRequestManager import HttpRequestManager
+from cura.API import Account
+from cura.CuraApplication import CuraApplication
+from cura.UltimakerCloud.UltimakerCloudScope import UltimakerCloudScope
+from .DFFileExportAndUploadManager import DFFileExportAndUploadManager
+from .DigitalFactoryApiClient import DigitalFactoryApiClient
+from .DigitalFactoryFileModel import DigitalFactoryFileModel
+from .DigitalFactoryFileResponse import DigitalFactoryFileResponse
+from .DigitalFactoryProjectModel import DigitalFactoryProjectModel
+from .DigitalFactoryProjectResponse import DigitalFactoryProjectResponse
+
+
+class RetrievalStatus(IntEnum):
+ """
+ The status of an http get request.
+
+ This is not an enum, because we want to use it in QML and QML doesn't recognize Python enums.
+ """
+ Idle = 0
+ InProgress = 1
+ Success = 2
+ Failed = 3
+
+
+class DFRetrievalStatus(QObject):
+ """
+ Used as an intermediate QObject that registers the RetrievalStatus as a recognizable enum in QML, so that it can
+ be used within QML objects as DigitalFactory.RetrievalStatus.
+ """
+
+ Q_ENUMS(RetrievalStatus)
+
+
+class DigitalFactoryController(QObject):
+
+ DISK_WRITE_BUFFER_SIZE = 256 * 1024 # 256 KB
+
+ selectedProjectIndexChanged = pyqtSignal(int, arguments = ["newProjectIndex"])
+ """Signal emitted whenever the selected project is changed in the projects dropdown menu"""
+
+ selectedFileIndicesChanged = pyqtSignal("QList", arguments = ["newFileIndices"])
+ """Signal emitted whenever the selected file is changed in the files table"""
+
+ retrievingProjectsStatusChanged = pyqtSignal(int, arguments = ["status"])
+ """Signal emitted whenever the status of the 'retrieving projects' http get request is changed"""
+
+ retrievingFilesStatusChanged = pyqtSignal(int, arguments = ["status"])
+ """Signal emitted whenever the status of the 'retrieving files in project' http get request is changed"""
+
+ creatingNewProjectStatusChanged = pyqtSignal(int, arguments = ["status"])
+ """Signal emitted whenever the status of the 'create new library project' http get request is changed"""
+
+ hasMoreProjectsToLoadChanged = pyqtSignal()
+ """Signal emitted whenever the variable hasMoreProjectsToLoad is changed. This variable is used to determine if
+ the paginated list of projects has more pages to show"""
+
+ preselectedProjectChanged = pyqtSignal()
+ """Signal emitted whenever a preselected project is set. Whenever there is a preselected project, it means that it is
+ the only project in the ProjectModel. When the preselected project is invalidated, the ProjectsModel needs to be
+ retrieved again."""
+
+ projectCreationErrorTextChanged = pyqtSignal()
+ """Signal emitted whenever the creation of a new project fails and a specific error message is returned from the
+ server."""
+
+ """Signals to inform about the process of the file upload"""
+ uploadStarted = Signal()
+ uploadFileProgress = Signal()
+ uploadFileSuccess = Signal()
+ uploadFileError = Signal()
+ uploadFileFinished = Signal()
+
+ """Signal to inform about the state of user access."""
+ userAccessStateChanged = pyqtSignal(bool)
+
+ """Signal to inform whether the user is allowed to create more Library projects."""
+ userCanCreateNewLibraryProjectChanged = pyqtSignal(bool)
+
+ def __init__(self, application: CuraApplication) -> None:
+ super().__init__(parent = None)
+
+ self._application = application
+ self._dialog = None # type: Optional["QObject"]
+
+ self.file_handlers = {} # type: Dict[str, FileHandler]
+ self.nodes = None # type: Optional[List[SceneNode]]
+ self.file_upload_manager = None # type: Optional[DFFileExportAndUploadManager]
+ self._has_preselected_project = False # type: bool
+
+ self._api = DigitalFactoryApiClient(self._application, on_error = lambda error: Logger.log("e", str(error)), projects_limit_per_page = 20)
+
+ # Indicates whether there are more pages of projects that can be loaded from the API
+ self._has_more_projects_to_load = False
+
+ self._account = self._application.getInstance().getCuraAPI().account # type: Account
+ self._account.loginStateChanged.connect(self._onLoginStateChanged)
+ self._current_workspace_information = CuraApplication.getInstance().getCurrentWorkspaceInformation()
+
+ # Initialize the project model
+ self._project_model = DigitalFactoryProjectModel()
+ self._selected_project_idx = -1
+ self._project_creation_error_text = "Something went wrong while creating a new project. Please try again."
+ self._project_filter = ""
+ self._project_filter_change_timer = QTimer()
+ self._project_filter_change_timer.setInterval(200)
+ self._project_filter_change_timer.setSingleShot(True)
+ self._project_filter_change_timer.timeout.connect(self._applyProjectFilter)
+
+ # Initialize the file model
+ self._file_model = DigitalFactoryFileModel()
+ self._selected_file_indices = [] # type: List[int]
+
+ # Filled after the application has been initialized
+ self._supported_file_types = {} # type: Dict[str, str]
+
+ # For cleaning up the files afterwards:
+ self._erase_temp_files_lock = threading.Lock()
+
+ # The statuses which indicate whether Cura is waiting for a response from the DigitalFactory API
+ self.retrieving_files_status = RetrievalStatus.Idle
+ self.retrieving_projects_status = RetrievalStatus.Idle
+ self.creating_new_project_status = RetrievalStatus.Idle
+
+ self._application.engineCreatedSignal.connect(self._onEngineCreated)
+ self._application.initializationFinished.connect(self._applicationInitializationFinished)
+
+ self._user_has_access = False
+ self._user_account_can_create_new_project = False
+
+ def clear(self) -> None:
+ self._project_model.clearProjects()
+ self._api.clear()
+ self._has_preselected_project = False
+ self.preselectedProjectChanged.emit()
+
+ self.setRetrievingFilesStatus(RetrievalStatus.Idle)
+ self.setRetrievingProjectsStatus(RetrievalStatus.Idle)
+ self.setCreatingNewProjectStatus(RetrievalStatus.Idle)
+
+ self.setSelectedProjectIndex(-1)
+
+ def _onLoginStateChanged(self, logged_in: bool) -> None:
+ def callback(has_access, **kwargs):
+ self._user_has_access = has_access
+ self.userAccessStateChanged.emit(logged_in)
+
+ self._api.checkUserHasAccess(callback)
+
+ def userAccountHasLibraryAccess(self) -> bool:
+ """
+ Checks whether the currently logged in user account has access to the Digital Library
+
+ :return: True if the user account has Digital Library access, else False
+ """
+ if self._user_has_access:
+ self._api.checkUserCanCreateNewLibraryProject(callback = self.setCanCreateNewLibraryProject)
+ return self._user_has_access
+
+ def initialize(self, preselected_project_id: Optional[str] = None) -> None:
+ self.clear()
+
+ if self._account.isLoggedIn and self.userAccountHasLibraryAccess():
+ self.setRetrievingProjectsStatus(RetrievalStatus.InProgress)
+ if preselected_project_id:
+ self._api.getProject(preselected_project_id, on_finished = self.setProjectAsPreselected, failed = self._onGetProjectFailed)
+ else:
+ self._api.getProjectsFirstPage(search_filter = self._project_filter, on_finished = self._onGetProjectsFirstPageFinished, failed = self._onGetProjectsFailed)
+
+ def setProjectAsPreselected(self, df_project: DigitalFactoryProjectResponse) -> None:
+ """
+ Sets the received df_project as the preselected one. When a project is preselected, it should be the only
+ project inside the model, so this function first makes sure to clear the projects model.
+
+ :param df_project: The library project intended to be set as preselected
+ """
+ self._project_model.clearProjects()
+ self._project_model.setProjects([df_project])
+ self.setSelectedProjectIndex(0)
+ self.setHasPreselectedProject(True)
+ self.setRetrievingProjectsStatus(RetrievalStatus.Success)
+ self.setCreatingNewProjectStatus(RetrievalStatus.Success)
+
+ def _onGetProjectFailed(self, reply: QNetworkReply, error: QNetworkReply.NetworkError) -> None:
+ reply_string = bytes(reply.readAll()).decode()
+ self.setHasPreselectedProject(False)
+ Logger.log("w", "Something went wrong while trying to retrieve a the preselected Digital Library project. Error: {}".format(reply_string))
+
+ def _onGetProjectsFirstPageFinished(self, df_projects: List[DigitalFactoryProjectResponse]) -> None:
+ """
+ Set the first page of projects received from the digital factory library in the project model. Called whenever
+ the retrieval of the first page of projects is successful.
+
+ :param df_projects: A list of all the Digital Factory Library projects linked to the user's account
+ """
+ self.setHasMoreProjectsToLoad(self._api.hasMoreProjectsToLoad())
+ self._project_model.setProjects(df_projects)
+ self.setRetrievingProjectsStatus(RetrievalStatus.Success)
+
+ @pyqtSlot()
+ def loadMoreProjects(self) -> None:
+ """
+ Initiates the process of retrieving the next page of the projects list from the API.
+ """
+ self._api.getMoreProjects(on_finished = self.loadMoreProjectsFinished, failed = self._onGetProjectsFailed)
+ self.setRetrievingProjectsStatus(RetrievalStatus.InProgress)
+
+ def loadMoreProjectsFinished(self, df_projects: List[DigitalFactoryProjectResponse]) -> None:
+ """
+ Set the projects received from the digital factory library in the project model. Called whenever the retrieval
+ of the projects is successful.
+
+ :param df_projects: A list of all the Digital Factory Library projects linked to the user's account
+ """
+ self.setHasMoreProjectsToLoad(self._api.hasMoreProjectsToLoad())
+ self._project_model.extendProjects(df_projects)
+ self.setRetrievingProjectsStatus(RetrievalStatus.Success)
+
+ def _onGetProjectsFailed(self, reply: QNetworkReply, error: QNetworkReply.NetworkError) -> None:
+ """
+ Error function, called whenever the retrieval of projects fails.
+ """
+ self.setRetrievingProjectsStatus(RetrievalStatus.Failed)
+ Logger.log("w", "Failed to retrieve the list of projects from the Digital Library. Error encountered: {}".format(error))
+
+ def getProjectFilesFinished(self, df_files_in_project: List[DigitalFactoryFileResponse]) -> None:
+ """
+ Set the files received from the digital factory library in the file model. The files are filtered to only
+ contain the files which can be opened by Cura.
+ Called whenever the retrieval of the files is successful.
+
+ :param df_files_in_project: A list of all the Digital Factory Library files that exist in a library project
+ """
+ # Filter to show only the files that can be opened in Cura
+ self._file_model.setFilters({"file_name": lambda x: Path(x).suffix[1:].lower() in self._supported_file_types}) # the suffix is in format '.xyz', so omit the dot at the start
+ self._file_model.setFiles(df_files_in_project)
+ self.setRetrievingFilesStatus(RetrievalStatus.Success)
+
+ def getProjectFilesFailed(self, reply: QNetworkReply, error: QNetworkReply.NetworkError) -> None:
+ """
+ Error function, called whenever the retrieval of the files in a library project fails.
+ """
+ Logger.log("w", "Failed to retrieve the list of files in project '{}' from the Digital Library".format(self._project_model._projects[self._selected_project_idx]))
+ self.setRetrievingFilesStatus(RetrievalStatus.Failed)
+
+ @pyqtSlot()
+ def clearProjectSelection(self) -> None:
+ """
+ Clear the selected project.
+ """
+ if self._has_preselected_project:
+ self.setHasPreselectedProject(False)
+ else:
+ self.setSelectedProjectIndex(-1)
+
+ @pyqtSlot(int)
+ def setSelectedProjectIndex(self, project_idx: int) -> None:
+ """
+ Sets the index of the project which is currently selected in the dropdown menu. Then, it uses the project_id of
+ that project to retrieve the list of files included in that project and display it in the interface.
+
+ :param project_idx: The index of the currently selected project
+ """
+ if project_idx < -1 or project_idx >= len(self._project_model.items):
+ Logger.log("w", "The selected project index is invalid.")
+ project_idx = -1 # -1 is a valid index for the combobox and it is handled as "nothing is selected"
+ self._selected_project_idx = project_idx
+ self.selectedProjectIndexChanged.emit(project_idx)
+
+ # Clear the files from the previously-selected project and refresh the files model with the newly-selected-
+ # project's files
+ self._file_model.clearFiles()
+ self.selectedFileIndicesChanged.emit([])
+ if 0 <= project_idx < len(self._project_model.items):
+ library_project_id = self._project_model.items[project_idx]["libraryProjectId"]
+ self.setRetrievingFilesStatus(RetrievalStatus.InProgress)
+ self._api.getListOfFilesInProject(library_project_id, on_finished = self.getProjectFilesFinished, failed = self.getProjectFilesFailed)
+
+ @pyqtProperty(int, fset = setSelectedProjectIndex, notify = selectedProjectIndexChanged)
+ def selectedProjectIndex(self) -> int:
+ return self._selected_project_idx
+
+ @pyqtSlot("QList")
+ def setSelectedFileIndices(self, file_indices: List[int]) -> None:
+ """
+ Sets the index of the file which is currently selected in the list of files.
+
+ :param file_indices: The index of the currently selected file
+ """
+ if file_indices != self._selected_file_indices:
+ self._selected_file_indices = file_indices
+ self.selectedFileIndicesChanged.emit(file_indices)
+
+ def setProjectFilter(self, new_filter: str) -> None:
+ """
+ Called when the user wants to change the search filter for projects.
+
+ The filter is not immediately applied. There is some delay to allow the user to finish typing.
+ :param new_filter: The new filter that the user wants to apply.
+ """
+ self._project_filter = new_filter
+ self._project_filter_change_timer.start()
+
+ """
+ Signal to notify Qt that the applied filter has changed.
+ """
+ projectFilterChanged = pyqtSignal()
+
+ @pyqtProperty(str, notify = projectFilterChanged, fset = setProjectFilter)
+ def projectFilter(self) -> str:
+ """
+ The current search filter being applied to the project list.
+ :return: The current search filter being applied to the project list.
+ """
+ return self._project_filter
+
+ def _applyProjectFilter(self) -> None:
+ """
+ Actually apply the current filter to search for projects with the user-defined search string.
+ :return:
+ """
+ self.clear()
+ self.projectFilterChanged.emit()
+ self._api.getProjectsFirstPage(search_filter = self._project_filter, on_finished = self._onGetProjectsFirstPageFinished, failed = self._onGetProjectsFailed)
+
+ @pyqtProperty(QObject, constant = True)
+ def digitalFactoryProjectModel(self) -> "DigitalFactoryProjectModel":
+ return self._project_model
+
+ @pyqtProperty(QObject, constant = True)
+ def digitalFactoryFileModel(self) -> "DigitalFactoryFileModel":
+ return self._file_model
+
+ def setHasMoreProjectsToLoad(self, has_more_projects_to_load: bool) -> None:
+ """
+ Set the value that indicates whether there are more pages of projects that can be loaded from the API
+
+ :param has_more_projects_to_load: Whether there are more pages of projects
+ """
+ if has_more_projects_to_load != self._has_more_projects_to_load:
+ self._has_more_projects_to_load = has_more_projects_to_load
+ self.hasMoreProjectsToLoadChanged.emit()
+
+ @pyqtProperty(bool, fset = setHasMoreProjectsToLoad, notify = hasMoreProjectsToLoadChanged)
+ def hasMoreProjectsToLoad(self) -> bool:
+ """
+ :return: whether there are more pages for projects that can be loaded from the API
+ """
+ return self._has_more_projects_to_load
+
+ @pyqtSlot(str)
+ def createLibraryProjectAndSetAsPreselected(self, project_name: Optional[str]) -> None:
+ """
+ Creates a new project with the given name in the Digital Library.
+
+ :param project_name: The name that will be used for the new project
+ """
+ if project_name:
+ self._api.createNewProject(project_name, self.setProjectAsPreselected, self._createNewLibraryProjectFailed)
+ self.setCreatingNewProjectStatus(RetrievalStatus.InProgress)
+ else:
+ Logger.log("w", "No project name provided while attempting to create a new project. Aborting the project creation.")
+
+ def _createNewLibraryProjectFailed(self, reply: QNetworkReply, error: QNetworkReply.NetworkError) -> None:
+ reply_string = bytes(reply.readAll()).decode()
+
+ self._project_creation_error_text = "Something went wrong while creating the new project. Please try again."
+ if reply_string:
+ reply_dict = json.loads(reply_string)
+ if "errors" in reply_dict and len(reply_dict["errors"]) >= 1 and "title" in reply_dict["errors"][0]:
+ self._project_creation_error_text = "Error while creating the new project: {}".format(reply_dict["errors"][0]["title"])
+ self.projectCreationErrorTextChanged.emit()
+
+ self.setCreatingNewProjectStatus(RetrievalStatus.Failed)
+ Logger.log("e", "Something went wrong while trying to create a new a project. Error: {}".format(reply_string))
+
+ def setRetrievingProjectsStatus(self, new_status: RetrievalStatus) -> None:
+ """
+ Sets the status of the "retrieving library projects" http call.
+
+ :param new_status: The new status
+ """
+ self.retrieving_projects_status = new_status
+ self.retrievingProjectsStatusChanged.emit(int(new_status))
+
+ @pyqtProperty(int, fset = setRetrievingProjectsStatus, notify = retrievingProjectsStatusChanged)
+ def retrievingProjectsStatus(self) -> int:
+ return int(self.retrieving_projects_status)
+
+ def setRetrievingFilesStatus(self, new_status: RetrievalStatus) -> None:
+ """
+ Sets the status of the "retrieving files list in the selected library project" http call.
+
+ :param new_status: The new status
+ """
+ self.retrieving_files_status = new_status
+ self.retrievingFilesStatusChanged.emit(int(new_status))
+
+ @pyqtProperty(int, fset = setRetrievingFilesStatus, notify = retrievingFilesStatusChanged)
+ def retrievingFilesStatus(self) -> int:
+ return int(self.retrieving_files_status)
+
+ def setCreatingNewProjectStatus(self, new_status: RetrievalStatus) -> None:
+ """
+ Sets the status of the "creating new library project" http call.
+
+ :param new_status: The new status
+ """
+ self.creating_new_project_status = new_status
+ self.creatingNewProjectStatusChanged.emit(int(new_status))
+
+ @pyqtProperty(int, fset = setCreatingNewProjectStatus, notify = creatingNewProjectStatusChanged)
+ def creatingNewProjectStatus(self) -> int:
+ return int(self.creating_new_project_status)
+
+ @staticmethod
+ def _onEngineCreated() -> None:
+ qmlRegisterUncreatableType(DFRetrievalStatus, "DigitalFactory", 1, 0, "RetrievalStatus", "Could not create RetrievalStatus enum type")
+
+ def _applicationInitializationFinished(self) -> None:
+ self._supported_file_types = self._application.getInstance().getMeshFileHandler().getSupportedFileTypesRead()
+
+ # Although Cura supports these, it's super confusing in this context to show them.
+ for extension in ["jpg", "jpeg", "png", "bmp", "gif"]:
+ if extension in self._supported_file_types:
+ del self._supported_file_types[extension]
+
+ @pyqtSlot()
+ def openSelectedFiles(self) -> None:
+ """ Downloads, then opens all files selected in the Qt frontend open dialog.
+ """
+
+ temp_dir = tempfile.mkdtemp()
+ if temp_dir is None or temp_dir == "":
+ Logger.error("Digital Library: Couldn't create temporary directory to store to-be downloaded files.")
+ return
+
+ if self._selected_project_idx < 0 or len(self._selected_file_indices) < 1:
+ Logger.error("Digital Library: No project or no file selected on open action.")
+ return
+
+ to_erase_on_done_set = {
+ os.path.join(temp_dir, self._file_model.getItem(i)["fileName"]).replace('\\', '/')
+ for i in self._selected_file_indices}
+
+ def onLoadedCallback(filename_done: str) -> None:
+ filename_done = os.path.join(temp_dir, filename_done).replace('\\', '/')
+ with self._erase_temp_files_lock:
+ if filename_done in to_erase_on_done_set:
+ try:
+ os.remove(filename_done)
+ to_erase_on_done_set.remove(filename_done)
+ if len(to_erase_on_done_set) < 1 and os.path.exists(temp_dir):
+ os.rmdir(temp_dir)
+ except (IOError, OSError) as ex:
+ Logger.error("Can't erase temporary (in) {0} because {1}.", temp_dir, str(ex))
+
+ # Save the project id to make sure it will be preselected the next time the user opens the save dialog
+ CuraApplication.getInstance().getCurrentWorkspaceInformation().setEntryToStore("digital_factory", "library_project_id", library_project_id)
+
+ # Disconnect the signals so that they are not fired every time another (project) file is loaded
+ app.fileLoaded.disconnect(onLoadedCallback)
+ app.workspaceLoaded.disconnect(onLoadedCallback)
+
+ app = CuraApplication.getInstance()
+ app.fileLoaded.connect(onLoadedCallback) # fired when non-project files are loaded
+ app.workspaceLoaded.connect(onLoadedCallback) # fired when project files are loaded
+
+ project_name = self._project_model.getItem(self._selected_project_idx)["displayName"]
+ for file_index in self._selected_file_indices:
+ file_item = self._file_model.getItem(file_index)
+ file_name = file_item["fileName"]
+ download_url = file_item["downloadUrl"]
+ library_project_id = file_item["libraryProjectId"]
+ self._openSelectedFile(temp_dir, project_name, file_name, download_url)
+
+ def _openSelectedFile(self, temp_dir: str, project_name: str, file_name: str, download_url: str) -> None:
+ """ Downloads, then opens, the single specified file.
+
+ :param temp_dir: The already created temporary directory where the files will be stored.
+ :param project_name: Name of the project the file belongs to (used for error reporting).
+ :param file_name: Name of the file to be downloaded and opened (used for error reporting).
+ :param download_url: This url will be downloaded, then the downloaded file will be opened in Cura.
+ """
+ if not download_url:
+ Logger.log("e", "No download url for file '{}'".format(file_name))
+ return
+
+ progress_message = Message(text = "{0}/{1}".format(project_name, file_name), dismissable = False, lifetime = 0,
+ progress = 0, title = "Downloading...")
+ progress_message.setProgress(0)
+ progress_message.show()
+
+ def progressCallback(rx: int, rt: int) -> None:
+ progress_message.setProgress(math.floor(rx * 100.0 / rt))
+
+ def finishedCallback(reply: QNetworkReply) -> None:
+ progress_message.hide()
+ try:
+ with open(os.path.join(temp_dir, file_name), "wb+") as temp_file:
+ bytes_read = reply.read(self.DISK_WRITE_BUFFER_SIZE)
+ while bytes_read:
+ temp_file.write(bytes_read)
+ bytes_read = reply.read(self.DISK_WRITE_BUFFER_SIZE)
+ CuraApplication.getInstance().processEvents()
+ temp_file_name = temp_file.name
+ except IOError as ex:
+ Logger.logException("e", "Can't write Digital Library file {0}/{1} download to temp-directory {2}.",
+ ex, project_name, file_name, temp_dir)
+ Message(
+ text = "Failed to write to temporary file for '{}'.".format(file_name),
+ title = "File-system error",
+ lifetime = 10
+ ).show()
+ return
+
+ CuraApplication.getInstance().readLocalFile(
+ QUrl.fromLocalFile(temp_file_name), add_to_recent_files = False)
+
+ def errorCallback(reply: QNetworkReply, error: QNetworkReply.NetworkError, p = project_name,
+ f = file_name) -> None:
+ progress_message.hide()
+ Logger.error("An error {0} {1} occurred while downloading {2}/{3}".format(str(error), str(reply), p, f))
+ Message(
+ text = "Failed Digital Library download for '{}'.".format(f),
+ title = "Network error {}".format(error),
+ lifetime = 10
+ ).show()
+
+ download_manager = HttpRequestManager.getInstance()
+ download_manager.get(download_url, callback = finishedCallback, download_progress_callback = progressCallback,
+ error_callback = errorCallback, scope = UltimakerCloudScope(CuraApplication.getInstance()))
+
+ def setHasPreselectedProject(self, new_has_preselected_project: bool) -> None:
+ if not new_has_preselected_project:
+ # The preselected project was the only one in the model, at index 0, so when we set the has_preselected_project to
+ # false, we also need to clean it from the projects model
+ self._project_model.clearProjects()
+ self.setSelectedProjectIndex(-1)
+ self._api.getProjectsFirstPage(search_filter = self._project_filter, on_finished = self._onGetProjectsFirstPageFinished, failed = self._onGetProjectsFailed)
+ self._api.checkUserCanCreateNewLibraryProject(callback = self.setCanCreateNewLibraryProject)
+ self.setRetrievingProjectsStatus(RetrievalStatus.InProgress)
+ self._has_preselected_project = new_has_preselected_project
+ self.preselectedProjectChanged.emit()
+
+ @pyqtProperty(bool, fset = setHasPreselectedProject, notify = preselectedProjectChanged)
+ def hasPreselectedProject(self) -> bool:
+ return self._has_preselected_project
+
+ def setCanCreateNewLibraryProject(self, can_create_new_library_project: bool) -> None:
+ self._user_account_can_create_new_project = can_create_new_library_project
+ self.userCanCreateNewLibraryProjectChanged.emit(self._user_account_can_create_new_project)
+
+ @pyqtProperty(bool, fset = setCanCreateNewLibraryProject, notify = userCanCreateNewLibraryProjectChanged)
+ def userAccountCanCreateNewLibraryProject(self) -> bool:
+ return self._user_account_can_create_new_project
+
+ @pyqtSlot(str, "QStringList")
+ def saveFileToSelectedProject(self, filename: str, formats: List[str]) -> None:
+ """
+ Function triggered whenever the Save button is pressed.
+
+ :param filename: The name (without the extension) that will be used for the files
+ :param formats: List of the formats the scene will be exported to. Can include 3mf, ufp, or both
+ """
+ if self._selected_project_idx == -1:
+ Logger.log("e", "No DF Library project is selected.")
+ return
+
+ if filename == "":
+ Logger.log("w", "The file name cannot be empty.")
+ Message(text = "Cannot upload file with an empty name to the Digital Library", title = "Empty file name provided", lifetime = 0).show()
+ return
+
+ self._saveFileToSelectedProjectHelper(filename, formats)
+
+ def _saveFileToSelectedProjectHelper(self, filename: str, formats: List[str]) -> None:
+ # Indicate we have started sending a job.
+ self.uploadStarted.emit()
+
+ library_project_id = self._project_model.items[self._selected_project_idx]["libraryProjectId"]
+ library_project_name = self._project_model.items[self._selected_project_idx]["displayName"]
+
+ # Use the file upload manager to export and upload the 3mf and/or ufp files to the DF Library project
+ self.file_upload_manager = DFFileExportAndUploadManager(file_handlers = self.file_handlers, nodes = cast(List[SceneNode], self.nodes),
+ library_project_id = library_project_id,
+ library_project_name = library_project_name,
+ file_name = filename, formats = formats,
+ on_upload_error = self.uploadFileError.emit,
+ on_upload_success = self.uploadFileSuccess.emit,
+ on_upload_finished = self.uploadFileFinished.emit,
+ on_upload_progress = self.uploadFileProgress.emit)
+ self.file_upload_manager.start()
+
+ # Save the project id to make sure it will be preselected the next time the user opens the save dialog
+ self._current_workspace_information.setEntryToStore("digital_factory", "library_project_id", library_project_id)
+
+ @pyqtProperty(str, notify = projectCreationErrorTextChanged)
+ def projectCreationErrorText(self) -> str:
+ return self._project_creation_error_text
diff --git a/plugins/DigitalLibrary/src/DigitalFactoryFeatureBudgetResponse.py b/plugins/DigitalLibrary/src/DigitalFactoryFeatureBudgetResponse.py
new file mode 100644
index 0000000000..192f58685a
--- /dev/null
+++ b/plugins/DigitalLibrary/src/DigitalFactoryFeatureBudgetResponse.py
@@ -0,0 +1,43 @@
+# Copyright (c) 2021 Ultimaker B.V.
+# Cura is released under the terms of the LGPLv3 or higher.
+
+from .BaseModel import BaseModel
+from typing import Optional
+
+
+class DigitalFactoryFeatureBudgetResponse(BaseModel):
+ """Class representing the capabilities of a user account for Digital Library.
+ NOTE: For each max_..._projects fields, '-1' means unlimited!
+ """
+
+ def __init__(self,
+ library_can_use_business_value: Optional[bool] = False,
+ library_can_use_comments: Optional[bool] = False,
+ library_can_use_status: Optional[bool] = False,
+ library_can_use_tags: Optional[bool] = False,
+ library_can_use_technical_requirements: Optional[bool] = False,
+ library_max_organization_shared_projects: Optional[int] = None, # -1 means unlimited
+ library_max_private_projects: Optional[int] = None, # -1 means unlimited
+ library_max_team_shared_projects: Optional[int] = None, # -1 means unlimited
+ **kwargs) -> None:
+
+ self.library_can_use_business_value = library_can_use_business_value
+ self.library_can_use_comments = library_can_use_comments
+ self.library_can_use_status = library_can_use_status
+ self.library_can_use_tags = library_can_use_tags
+ self.library_can_use_technical_requirements = library_can_use_technical_requirements
+ self.library_max_organization_shared_projects = library_max_organization_shared_projects # -1 means unlimited
+ self.library_max_private_projects = library_max_private_projects # -1 means unlimited
+ self.library_max_team_shared_projects = library_max_team_shared_projects # -1 means unlimited
+ super().__init__(**kwargs)
+
+ def __repr__(self) -> str:
+ return "max private: {}, max org: {}, max team: {}".format(
+ self.library_max_private_projects,
+ self.library_max_organization_shared_projects,
+ self.library_max_team_shared_projects)
+
+ # Validates the model, raising an exception if the model is invalid.
+ def validate(self) -> None:
+ super().validate()
+ # No validation for now, as the response can be "data: []", which should be interpreted as all False and 0's
diff --git a/plugins/DigitalLibrary/src/DigitalFactoryFileModel.py b/plugins/DigitalLibrary/src/DigitalFactoryFileModel.py
new file mode 100644
index 0000000000..535cce0e8f
--- /dev/null
+++ b/plugins/DigitalLibrary/src/DigitalFactoryFileModel.py
@@ -0,0 +1,116 @@
+# Copyright (c) 2021 Ultimaker B.V.
+# Cura is released under the terms of the LGPLv3 or higher.
+from typing import List, Dict, Callable
+
+from PyQt5.QtCore import Qt, pyqtSignal
+
+from UM.Logger import Logger
+from UM.Qt.ListModel import ListModel
+from .DigitalFactoryFileResponse import DigitalFactoryFileResponse
+
+
+DIGITAL_FACTORY_DISPLAY_DATETIME_FORMAT = "%d-%m-%Y %H:%M"
+
+
+class DigitalFactoryFileModel(ListModel):
+ FileNameRole = Qt.UserRole + 1
+ FileIdRole = Qt.UserRole + 2
+ FileSizeRole = Qt.UserRole + 3
+ LibraryProjectIdRole = Qt.UserRole + 4
+ DownloadUrlRole = Qt.UserRole + 5
+ UsernameRole = Qt.UserRole + 6
+ UploadedAtRole = Qt.UserRole + 7
+
+ dfFileModelChanged = pyqtSignal()
+
+ def __init__(self, parent = None):
+ super().__init__(parent)
+
+ self.addRoleName(self.FileNameRole, "fileName")
+ self.addRoleName(self.FileIdRole, "fileId")
+ self.addRoleName(self.FileSizeRole, "fileSize")
+ self.addRoleName(self.LibraryProjectIdRole, "libraryProjectId")
+ self.addRoleName(self.DownloadUrlRole, "downloadUrl")
+ self.addRoleName(self.UsernameRole, "username")
+ self.addRoleName(self.UploadedAtRole, "uploadedAt")
+
+ self._files = [] # type: List[DigitalFactoryFileResponse]
+ self._filters = {} # type: Dict[str, Callable]
+
+ def setFiles(self, df_files_in_project: List[DigitalFactoryFileResponse]) -> None:
+ if self._files == df_files_in_project:
+ return
+ self.clear()
+ self._files = df_files_in_project
+ self._update()
+
+ def clearFiles(self) -> None:
+ self.clear()
+ self._files.clear()
+ self.dfFileModelChanged.emit()
+
+ def _update(self) -> None:
+ filtered_files_list = self.getFilteredFilesList()
+
+ for file in filtered_files_list:
+ self.appendItem({
+ "fileName" : file.file_name,
+ "fileId" : file.file_id,
+ "fileSize": file.file_size,
+ "libraryProjectId": file.library_project_id,
+ "downloadUrl": file.download_url,
+ "username": file.username,
+ "uploadedAt": file.uploaded_at.strftime(DIGITAL_FACTORY_DISPLAY_DATETIME_FORMAT)
+ })
+
+ self.dfFileModelChanged.emit()
+
+ def setFilters(self, filters: Dict[str, Callable]) -> None:
+ """
+ Sets the filters and updates the files model to contain only the files that meet all of the filters.
+
+ :param filters: The filters to be applied
+ example:
+ {
+ "attribute_name1": function_to_be_applied_on_DigitalFactoryFileResponse_attribute1,
+ "attribute_name2": function_to_be_applied_on_DigitalFactoryFileResponse_attribute2
+ }
+ """
+ self.clear()
+ self._filters = filters
+ self._update()
+
+ def clearFilters(self) -> None:
+ """
+ Clears all the model filters
+ """
+ self.setFilters({})
+
+ def getFilteredFilesList(self) -> List[DigitalFactoryFileResponse]:
+ """
+ Lists the files that meet all the filters specified in the self._filters. This is achieved by applying each
+ filter function on the corresponding attribute for all the filters in the self._filters. If all of them are
+ true, the file is added to the filtered files list.
+ In order for this to work, the self._filters should be in the format:
+ {
+ "attribute_name": function_to_be_applied_on_the_DigitalFactoryFileResponse_attribute
+ }
+
+ :return: The list of files that meet all the specified filters
+ """
+ if not self._filters:
+ return self._files
+
+ filtered_files_list = []
+ for file in self._files:
+ filter_results = []
+ for attribute, filter_func in self._filters.items():
+ try:
+ filter_results.append(filter_func(getattr(file, attribute)))
+ except AttributeError:
+ Logger.log("w", "Attribute '{}' doesn't exist in objects of type '{}'".format(attribute, type(file)))
+ all_filters_met = all(filter_results)
+ if all_filters_met:
+ filtered_files_list.append(file)
+
+ return filtered_files_list
diff --git a/plugins/DigitalLibrary/src/DigitalFactoryFileProvider.py b/plugins/DigitalLibrary/src/DigitalFactoryFileProvider.py
new file mode 100644
index 0000000000..65a727e21a
--- /dev/null
+++ b/plugins/DigitalLibrary/src/DigitalFactoryFileProvider.py
@@ -0,0 +1,62 @@
+# Copyright (c) 2021 Ultimaker B.V.
+# Cura is released under the terms of the LGPLv3 or higher.
+import os
+
+from UM.FileProvider import FileProvider
+from UM.Logger import Logger
+from cura.API import Account
+from cura.CuraApplication import CuraApplication
+from .DigitalFactoryController import DigitalFactoryController
+
+
+class DigitalFactoryFileProvider(FileProvider):
+
+ def __init__(self, df_controller: DigitalFactoryController) -> None:
+ super().__init__()
+ self._controller = df_controller
+
+ self.menu_item_display_text = "From Digital Library"
+ self.shortcut = "Ctrl+Shift+O"
+ plugin_path = os.path.dirname(os.path.dirname(__file__))
+ self._dialog_path = os.path.join(plugin_path, "resources", "qml", "DigitalFactoryOpenDialog.qml")
+ self._dialog = None
+
+ self._account = CuraApplication.getInstance().getCuraAPI().account # type: Account
+ self._controller.userAccessStateChanged.connect(self._onUserAccessStateChanged)
+ self.enabled = self._account.isLoggedIn and self._controller.userAccountHasLibraryAccess()
+ self.priority = 10
+
+ def run(self) -> None:
+ """
+ Function called every time the 'From Digital Factory' option of the 'Open File(s)' submenu is triggered
+ """
+ self.loadWindow()
+
+ if self._account.isLoggedIn and self._controller.userAccountHasLibraryAccess():
+ self._controller.initialize()
+
+ if not self._dialog:
+ Logger.log("e", "Unable to create the Digital Library Open dialog.")
+ return
+ self._dialog.show()
+
+ def loadWindow(self) -> None:
+ """
+ Create the GUI window for the Digital Library Open dialog. If the window is already open, bring the focus on it.
+ """
+
+ if self._dialog: # Dialogue is already open.
+ self._dialog.requestActivate() # Bring the focus on the dialogue.
+ return
+
+ self._dialog = CuraApplication.getInstance().createQmlComponent(self._dialog_path, {"manager": self._controller})
+ if not self._dialog:
+ Logger.log("e", "Unable to create the Digital Library Open dialog.")
+
+ def _onUserAccessStateChanged(self, logged_in: bool) -> None:
+ """
+ Sets the enabled status of the DigitalFactoryFileProvider according to the account's login status
+ :param logged_in: The new login status
+ """
+ self.enabled = logged_in and self._controller.userAccountHasLibraryAccess()
+ self.enabledChanged.emit()
diff --git a/plugins/DigitalLibrary/src/DigitalFactoryFileResponse.py b/plugins/DigitalLibrary/src/DigitalFactoryFileResponse.py
new file mode 100644
index 0000000000..eb7e71fbb6
--- /dev/null
+++ b/plugins/DigitalLibrary/src/DigitalFactoryFileResponse.py
@@ -0,0 +1,57 @@
+# Copyright (c) 2021 Ultimaker B.V.
+# Cura is released under the terms of the LGPLv3 or higher.
+from datetime import datetime
+from typing import Optional
+
+from .BaseModel import BaseModel
+
+DIGITAL_FACTORY_RESPONSE_DATETIME_FORMAT = "%Y-%m-%dT%H:%M:%S.%fZ"
+
+
+class DigitalFactoryFileResponse(BaseModel):
+ """Class representing a file in a digital factory project."""
+
+ def __init__(self, client_id: str, content_type: str, file_id: str, file_name: str, library_project_id: str,
+ status: str, user_id: str, username: str, uploaded_at: str, download_url: Optional[str] = "", status_description: Optional[str] = "",
+ file_size: Optional[int] = 0, upload_url: Optional[str] = "", **kwargs) -> None:
+ """
+ Creates a new DF file response object
+
+ :param client_id:
+ :param content_type:
+ :param file_id:
+ :param file_name:
+ :param library_project_id:
+ :param status:
+ :param user_id:
+ :param username:
+ :param download_url:
+ :param status_description:
+ :param file_size:
+ :param upload_url:
+ :param kwargs:
+ """
+
+ self.client_id = client_id
+ self.content_type = content_type
+ self.download_url = download_url
+ self.file_id = file_id
+ self.file_name = file_name
+ self.file_size = file_size
+ self.library_project_id = library_project_id
+ self.status = status
+ self.status_description = status_description
+ self.upload_url = upload_url
+ self.user_id = user_id
+ self.username = username
+ self.uploaded_at = datetime.strptime(uploaded_at, DIGITAL_FACTORY_RESPONSE_DATETIME_FORMAT)
+ super().__init__(**kwargs)
+
+ def __repr__(self) -> str:
+ return "File: {}, from: {}, File ID: {}, Project ID: {}, Download URL: {}".format(self.file_name, self.username, self.file_id, self.library_project_id, self.download_url)
+
+ # Validates the model, raising an exception if the model is invalid.
+ def validate(self) -> None:
+ super().validate()
+ if not self.file_id:
+ raise ValueError("file_id is required in Digital Library file")
diff --git a/plugins/DigitalLibrary/src/DigitalFactoryOutputDevice.py b/plugins/DigitalLibrary/src/DigitalFactoryOutputDevice.py
new file mode 100644
index 0000000000..70e3ac34f2
--- /dev/null
+++ b/plugins/DigitalLibrary/src/DigitalFactoryOutputDevice.py
@@ -0,0 +1,118 @@
+# Copyright (c) 2021 Ultimaker B.V.
+# Uranium is released under the terms of the LGPLv3 or higher.
+import os
+from typing import Optional, List
+
+from UM.FileHandler.FileHandler import FileHandler
+from UM.Logger import Logger
+from UM.OutputDevice import OutputDeviceError
+from UM.OutputDevice.ProjectOutputDevice import ProjectOutputDevice
+from UM.Scene.SceneNode import SceneNode
+from cura.API import Account
+from cura.CuraApplication import CuraApplication
+from .DigitalFactoryController import DigitalFactoryController
+
+
+class DigitalFactoryOutputDevice(ProjectOutputDevice):
+ """Implements an OutputDevice that supports saving to the digital factory library."""
+
+ def __init__(self, plugin_id, df_controller: DigitalFactoryController, add_to_output_devices: bool = False, parent = None) -> None:
+ super().__init__(device_id = "digital_factory", add_to_output_devices = add_to_output_devices, parent = parent)
+
+ self.setName("Digital Library") # Doesn't need to be translated
+ self.setShortDescription("Save to Library")
+ self.setDescription("Save to Library")
+ self.setIconName("save")
+ self.menu_entry_text = "To Digital Library"
+ self.shortcut = "Ctrl+Shift+S"
+ self._plugin_id = plugin_id
+ self._controller = df_controller
+
+ plugin_path = os.path.dirname(os.path.dirname(__file__))
+ self._dialog_path = os.path.join(plugin_path, "resources", "qml", "DigitalFactorySaveDialog.qml")
+ self._dialog = None
+
+ # Connect the write signals
+ self._controller.uploadStarted.connect(self._onWriteStarted)
+ self._controller.uploadFileProgress.connect(self.writeProgress.emit)
+ self._controller.uploadFileError.connect(self._onWriteError)
+ self._controller.uploadFileSuccess.connect(self.writeSuccess.emit)
+ self._controller.uploadFileFinished.connect(self._onWriteFinished)
+
+ self._priority = -1 # Negative value to ensure that it will have less priority than the LocalFileOutputDevice (which has 0)
+ self._application = CuraApplication.getInstance()
+
+ self._writing = False
+
+ self._account = CuraApplication.getInstance().getCuraAPI().account # type: Account
+ self._controller.userAccessStateChanged.connect(self._onUserAccessStateChanged)
+ self.enabled = self._account.isLoggedIn and self._controller.userAccountHasLibraryAccess()
+
+ self._current_workspace_information = CuraApplication.getInstance().getCurrentWorkspaceInformation()
+
+ def requestWrite(self, nodes: List[SceneNode], file_name: Optional[str] = None, limit_mimetypes: bool = False, file_handler: Optional[FileHandler] = None, **kwargs) -> None:
+ """Request the specified nodes to be written.
+
+ Function called every time the 'To Digital Factory' option of the 'Save Project' submenu is triggered or when the
+ "Save to Library" action button is pressed (upon slicing).
+
+ :param nodes: A collection of scene nodes that should be written to the file.
+ :param file_name: A suggestion for the file name to write to.
+ :param limit_mimetypes: Limit the possible mimetypes to use for writing to these types.
+ :param file_handler: The handler responsible for reading and writing mesh files.
+ :param kwargs: Keyword arguments.
+ """
+
+ if self._writing:
+ raise OutputDeviceError.DeviceBusyError()
+ self.loadWindow()
+
+ if self._account.isLoggedIn and self._controller.userAccountHasLibraryAccess():
+ self._controller.nodes = nodes
+
+ df_workspace_information = self._current_workspace_information.getPluginMetadata("digital_factory")
+ self._controller.initialize(preselected_project_id = df_workspace_information.get("library_project_id"))
+
+ if not self._dialog:
+ Logger.log("e", "Unable to create the Digital Library Save dialog.")
+ return
+ self._dialog.show()
+
+ def loadWindow(self) -> None:
+ """
+ Create the GUI window for the Digital Library Save dialog. If the window is already open, bring the focus on it.
+ """
+
+ if self._dialog: # Dialogue is already open.
+ self._dialog.requestActivate() # Bring the focus on the dialogue.
+ return
+
+ if not self._controller.file_handlers:
+ self._controller.file_handlers = {
+ "3mf": CuraApplication.getInstance().getWorkspaceFileHandler(),
+ "ufp": CuraApplication.getInstance().getMeshFileHandler()
+ }
+
+ self._dialog = CuraApplication.getInstance().createQmlComponent(self._dialog_path, {"manager": self._controller})
+ if not self._dialog:
+ Logger.log("e", "Unable to create the Digital Library Save dialog.")
+
+ def _onUserAccessStateChanged(self, logged_in: bool) -> None:
+ """
+ Sets the enabled status of the DigitalFactoryOutputDevice according to the account's login status
+ :param logged_in: The new login status
+ """
+ self.enabled = logged_in and self._controller.userAccountHasLibraryAccess()
+ self.enabledChanged.emit()
+
+ def _onWriteStarted(self) -> None:
+ self._writing = True
+ self.writeStarted.emit(self)
+
+ def _onWriteFinished(self) -> None:
+ self._writing = False
+ self.writeFinished.emit(self)
+
+ def _onWriteError(self) -> None:
+ self._writing = False
+ self.writeError.emit(self)
diff --git a/plugins/DigitalLibrary/src/DigitalFactoryOutputDevicePlugin.py b/plugins/DigitalLibrary/src/DigitalFactoryOutputDevicePlugin.py
new file mode 100644
index 0000000000..1a0e4f2772
--- /dev/null
+++ b/plugins/DigitalLibrary/src/DigitalFactoryOutputDevicePlugin.py
@@ -0,0 +1,18 @@
+# Copyright (c) 2021 Ultimaker B.V.
+# Uranium is released under the terms of the LGPLv3 or higher.
+
+from UM.OutputDevice.OutputDevicePlugin import OutputDevicePlugin
+from .DigitalFactoryOutputDevice import DigitalFactoryOutputDevice
+from .DigitalFactoryController import DigitalFactoryController
+
+
+class DigitalFactoryOutputDevicePlugin(OutputDevicePlugin):
+ def __init__(self, df_controller: DigitalFactoryController) -> None:
+ super().__init__()
+ self.df_controller = df_controller
+
+ def start(self) -> None:
+ self.getOutputDeviceManager().addProjectOutputDevice(DigitalFactoryOutputDevice(plugin_id = self.getPluginId(), df_controller = self.df_controller, add_to_output_devices = True))
+
+ def stop(self) -> None:
+ self.getOutputDeviceManager().removeProjectOutputDevice("digital_factory")
diff --git a/plugins/DigitalLibrary/src/DigitalFactoryProjectModel.py b/plugins/DigitalLibrary/src/DigitalFactoryProjectModel.py
new file mode 100644
index 0000000000..d76774cab1
--- /dev/null
+++ b/plugins/DigitalLibrary/src/DigitalFactoryProjectModel.py
@@ -0,0 +1,64 @@
+# Copyright (c) 2021 Ultimaker B.V.
+# Cura is released under the terms of the LGPLv3 or higher.
+from typing import List, Optional
+
+from PyQt5.QtCore import Qt, pyqtSignal
+
+from UM.Logger import Logger
+from UM.Qt.ListModel import ListModel
+from .DigitalFactoryProjectResponse import DigitalFactoryProjectResponse
+
+PROJECT_UPDATED_AT_DATETIME_FORMAT = "%d-%m-%Y"
+
+
+class DigitalFactoryProjectModel(ListModel):
+ DisplayNameRole = Qt.UserRole + 1
+ LibraryProjectIdRole = Qt.UserRole + 2
+ DescriptionRole = Qt.UserRole + 3
+ ThumbnailUrlRole = Qt.UserRole + 5
+ UsernameRole = Qt.UserRole + 6
+ LastUpdatedRole = Qt.UserRole + 7
+
+ dfProjectModelChanged = pyqtSignal()
+
+ def __init__(self, parent = None) -> None:
+ super().__init__(parent)
+ self.addRoleName(self.DisplayNameRole, "displayName")
+ self.addRoleName(self.LibraryProjectIdRole, "libraryProjectId")
+ self.addRoleName(self.DescriptionRole, "description")
+ self.addRoleName(self.ThumbnailUrlRole, "thumbnailUrl")
+ self.addRoleName(self.UsernameRole, "username")
+ self.addRoleName(self.LastUpdatedRole, "lastUpdated")
+ self._projects = [] # type: List[DigitalFactoryProjectResponse]
+
+ def setProjects(self, df_projects: List[DigitalFactoryProjectResponse]) -> None:
+ if self._projects == df_projects:
+ return
+ self._items.clear()
+ self._projects = df_projects
+ # self.sortProjectsBy("display_name")
+ self._update(df_projects)
+
+ def extendProjects(self, df_projects: List[DigitalFactoryProjectResponse]) -> None:
+ if not df_projects:
+ return
+ self._projects.extend(df_projects)
+ # self.sortProjectsBy("display_name")
+ self._update(df_projects)
+
+ def clearProjects(self) -> None:
+ self.clear()
+ self._projects.clear()
+ self.dfProjectModelChanged.emit()
+
+ def _update(self, df_projects: List[DigitalFactoryProjectResponse]) -> None:
+ for project in df_projects:
+ self.appendItem({
+ "displayName" : project.display_name,
+ "libraryProjectId" : project.library_project_id,
+ "description": project.description,
+ "thumbnailUrl": project.thumbnail_url,
+ "username": project.username,
+ "lastUpdated": project.last_updated.strftime(PROJECT_UPDATED_AT_DATETIME_FORMAT) if project.last_updated else "",
+ })
+ self.dfProjectModelChanged.emit()
diff --git a/plugins/DigitalLibrary/src/DigitalFactoryProjectResponse.py b/plugins/DigitalLibrary/src/DigitalFactoryProjectResponse.py
new file mode 100644
index 0000000000..a511a11bd5
--- /dev/null
+++ b/plugins/DigitalLibrary/src/DigitalFactoryProjectResponse.py
@@ -0,0 +1,65 @@
+# Copyright (c) 2021 Ultimaker B.V.
+# Cura is released under the terms of the LGPLv3 or higher.
+from datetime import datetime
+from typing import Optional, List, Dict, Any
+
+from .BaseModel import BaseModel
+from .DigitalFactoryFileResponse import DIGITAL_FACTORY_RESPONSE_DATETIME_FORMAT
+
+
+class DigitalFactoryProjectResponse(BaseModel):
+ """Class representing a cloud project."""
+
+ def __init__(self,
+ library_project_id: str,
+ display_name: str,
+ username: str,
+ organization_shared: bool,
+ last_updated: Optional[str] = None,
+ created_at: Optional[str] = None,
+ thumbnail_url: Optional[str] = None,
+ organization_id: Optional[str] = None,
+ created_by_user_id: Optional[str] = None,
+ description: Optional[str] = "",
+ tags: Optional[List[str]] = None,
+ team_ids: Optional[List[str]] = None,
+ status: Optional[str] = None,
+ technical_requirements: Optional[Dict[str, Any]] = None,
+ **kwargs) -> None:
+ """
+ Creates a new digital factory project response object
+ :param library_project_id:
+ :param display_name:
+ :param username:
+ :param organization_shared:
+ :param thumbnail_url:
+ :param created_by_user_id:
+ :param description:
+ :param tags:
+ :param kwargs:
+ """
+
+ self.library_project_id = library_project_id
+ self.display_name = display_name
+ self.description = description
+ self.username = username
+ self.organization_shared = organization_shared
+ self.organization_id = organization_id
+ self.created_by_user_id = created_by_user_id
+ self.thumbnail_url = thumbnail_url
+ self.tags = tags
+ self.team_ids = team_ids
+ self.created_at = datetime.strptime(created_at, DIGITAL_FACTORY_RESPONSE_DATETIME_FORMAT) if created_at else None
+ self.last_updated = datetime.strptime(last_updated, DIGITAL_FACTORY_RESPONSE_DATETIME_FORMAT) if last_updated else None
+ self.status = status
+ self.technical_requirements = technical_requirements
+ super().__init__(**kwargs)
+
+ def __str__(self) -> str:
+ return "Project: {}, Id: {}, from: {}".format(self.display_name, self.library_project_id, self.username)
+
+ # Validates the model, raising an exception if the model is invalid.
+ def validate(self) -> None:
+ super().validate()
+ if not self.library_project_id:
+ raise ValueError("library_project_id is required on cloud project")
diff --git a/plugins/DigitalLibrary/src/ExportFileJob.py b/plugins/DigitalLibrary/src/ExportFileJob.py
new file mode 100644
index 0000000000..3e4c6dfea2
--- /dev/null
+++ b/plugins/DigitalLibrary/src/ExportFileJob.py
@@ -0,0 +1,55 @@
+# Copyright (c) 2021 Ultimaker B.V.
+# Cura is released under the terms of the LGPLv3 or higher.
+
+import io
+from typing import List, Optional, Union
+
+from UM.FileHandler.FileHandler import FileHandler
+from UM.FileHandler.FileWriter import FileWriter
+from UM.FileHandler.WriteFileJob import WriteFileJob
+from UM.Logger import Logger
+from UM.MimeTypeDatabase import MimeTypeDatabase
+from UM.OutputDevice import OutputDeviceError
+from UM.Scene.SceneNode import SceneNode
+
+
+class ExportFileJob(WriteFileJob):
+ """Job that exports the build plate to the correct file format for the Digital Factory Library project."""
+
+ def __init__(self, file_handler: FileHandler, nodes: List[SceneNode], job_name: str, extension: str) -> None:
+ file_types = file_handler.getSupportedFileTypesWrite()
+ if len(file_types) == 0:
+ Logger.log("e", "There are no file types available to write with!")
+ raise OutputDeviceError.WriteRequestFailedError("There are no file types available to write with!")
+
+ mode = None
+ file_writer = None
+ for file_type in file_types:
+ if file_type["extension"] == extension:
+ file_writer = file_handler.getWriter(file_type["id"])
+ mode = file_type.get("mode")
+ super().__init__(file_writer, self.createStream(mode = mode), nodes, mode)
+
+ # Determine the filename.
+ self.setFileName("{}.{}".format(job_name, extension))
+
+ def getOutput(self) -> bytes:
+ """Get the job result as bytes as that is what we need to upload to the Digital Factory Library."""
+
+ output = self.getStream().getvalue()
+ if isinstance(output, str):
+ output = output.encode("utf-8")
+ return output
+
+ def getMimeType(self) -> str:
+ """Get the mime type of the selected export file type."""
+ return MimeTypeDatabase.getMimeTypeForFile(self.getFileName()).name
+
+ @staticmethod
+ def createStream(mode) -> Union[io.BytesIO, io.StringIO]:
+ """Creates the right kind of stream based on the preferred format."""
+
+ if mode == FileWriter.OutputMode.TextMode:
+ return io.StringIO()
+ else:
+ return io.BytesIO()
diff --git a/plugins/DigitalLibrary/src/PaginationLinks.py b/plugins/DigitalLibrary/src/PaginationLinks.py
new file mode 100644
index 0000000000..06ed183944
--- /dev/null
+++ b/plugins/DigitalLibrary/src/PaginationLinks.py
@@ -0,0 +1,30 @@
+# Copyright (c) 2021 Ultimaker B.V.
+
+from typing import Optional
+
+
+class PaginationLinks:
+ """Model containing pagination links."""
+
+ def __init__(self,
+ first: Optional[str] = None,
+ last: Optional[str] = None,
+ next: Optional[str] = None,
+ prev: Optional[str] = None,
+ **kwargs) -> None:
+ """
+ Creates a new digital factory project response object
+ :param first: The URL for the first page.
+ :param last: The URL for the last page.
+ :param next: The URL for the next page.
+ :param prev: The URL for the prev page.
+ :param kwargs:
+ """
+
+ self.first_page = first
+ self.last_page = last
+ self.next_page = next
+ self.prev_page = prev
+
+ def __str__(self) -> str:
+ return "Pagination Links | First: {}, Last: {}, Next: {}, Prev: {}".format(self.first_page, self.last_page, self.next_page, self.prev_page)
diff --git a/plugins/DigitalLibrary/src/PaginationManager.py b/plugins/DigitalLibrary/src/PaginationManager.py
new file mode 100644
index 0000000000..f2b7c8f5bd
--- /dev/null
+++ b/plugins/DigitalLibrary/src/PaginationManager.py
@@ -0,0 +1,43 @@
+# Copyright (c) 2021 Ultimaker B.V.
+
+from typing import Optional, Dict, Any
+
+from .PaginationLinks import PaginationLinks
+from .PaginationMetadata import PaginationMetadata
+from .ResponseMeta import ResponseMeta
+
+
+class PaginationManager:
+
+ def __init__(self, limit: int) -> None:
+ self.limit = limit # The limit of items per page
+ self.meta = None # type: Optional[ResponseMeta] # The metadata of the paginated response
+ self.links = None # type: Optional[PaginationLinks] # The pagination-related links
+
+ def setResponseMeta(self, meta: Optional[Dict[str, Any]]) -> None:
+ self.meta = None
+
+ if meta:
+ page = None
+ if "page" in meta:
+ page = PaginationMetadata(**meta["page"])
+ self.meta = ResponseMeta(page)
+
+ def setLinks(self, links: Optional[Dict[str, str]]) -> None:
+ self.links = PaginationLinks(**links) if links else None
+
+ def setLimit(self, new_limit: int) -> None:
+ """
+ Sets the limit of items per page.
+
+ :param new_limit: The new limit of items per page
+ """
+ self.limit = new_limit
+ self.reset()
+
+ def reset(self) -> None:
+ """
+ Sets the metadata and links to None.
+ """
+ self.meta = None
+ self.links = None
diff --git a/plugins/DigitalLibrary/src/PaginationMetadata.py b/plugins/DigitalLibrary/src/PaginationMetadata.py
new file mode 100644
index 0000000000..7f11e43d30
--- /dev/null
+++ b/plugins/DigitalLibrary/src/PaginationMetadata.py
@@ -0,0 +1,25 @@
+# Copyright (c) 2021 Ultimaker B.V.
+
+from typing import Optional
+
+
+class PaginationMetadata:
+ """Class representing the metadata related to pagination."""
+
+ def __init__(self,
+ total_count: Optional[int] = None,
+ total_pages: Optional[int] = None,
+ **kwargs) -> None:
+ """
+ Creates a new digital factory project response object
+ :param total_count: The total count of items.
+ :param total_pages: The total number of pages when pagination is applied.
+ :param kwargs:
+ """
+
+ self.total_count = total_count
+ self.total_pages = total_pages
+ self.__dict__.update(kwargs)
+
+ def __str__(self) -> str:
+ return "PaginationMetadata | Total Count: {}, Total Pages: {}".format(self.total_count, self.total_pages)
diff --git a/plugins/DigitalLibrary/src/ResponseMeta.py b/plugins/DigitalLibrary/src/ResponseMeta.py
new file mode 100644
index 0000000000..a1dbc949db
--- /dev/null
+++ b/plugins/DigitalLibrary/src/ResponseMeta.py
@@ -0,0 +1,24 @@
+# Copyright (c) 2021 Ultimaker B.V.
+
+from typing import Optional
+
+from .PaginationMetadata import PaginationMetadata
+
+
+class ResponseMeta:
+ """Class representing the metadata included in a Digital Library response (if any)"""
+
+ def __init__(self,
+ page: Optional[PaginationMetadata] = None,
+ **kwargs) -> None:
+ """
+ Creates a new digital factory project response object
+ :param page: Metadata related to pagination
+ :param kwargs:
+ """
+
+ self.page = page
+ self.__dict__.update(kwargs)
+
+ def __str__(self) -> str:
+ return "Response Meta | {}".format(self.page)
diff --git a/plugins/DigitalLibrary/src/__init__.py b/plugins/DigitalLibrary/src/__init__.py
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/plugins/DigitalLibrary/tests/TestDFFileExportAndUploadManager.py b/plugins/DigitalLibrary/tests/TestDFFileExportAndUploadManager.py
new file mode 100644
index 0000000000..2fb0ae4142
--- /dev/null
+++ b/plugins/DigitalLibrary/tests/TestDFFileExportAndUploadManager.py
@@ -0,0 +1,48 @@
+from unittest.mock import MagicMock, patch
+
+import pytest
+from src.DFFileExportAndUploadManager import DFFileExportAndUploadManager
+
+
+@pytest.fixture
+def upload_manager():
+ file_handler = MagicMock(name = "file_handler")
+ file_handler.getSupportedFileTypesWrite = MagicMock(return_value = [{
+ "id": "test",
+ "extension": ".3mf",
+ "description": "nope",
+ "mime_type": "application/vnd.ms-package.3dmanufacturing-3dmodel+xml",
+ "mode": "binary",
+ "hide_in_file_dialog": True,
+ }])
+ node = MagicMock(name = "SceneNode")
+ application = MagicMock(name = "CuraApplication")
+ with patch("cura.CuraApplication.CuraApplication.getInstance", MagicMock(return_value = application)):
+ return DFFileExportAndUploadManager(file_handlers = {"3mf": file_handler},
+ nodes = [node],
+ library_project_id = "test_library_project_id",
+ library_project_name = "test_library_project_name",
+ file_name = "file_name",
+ formats = ["3mf"],
+ on_upload_error = MagicMock(),
+ on_upload_success = MagicMock(),
+ on_upload_finished = MagicMock(),
+ on_upload_progress = MagicMock())
+
+
+@pytest.mark.parametrize("input,expected_result",
+ [("", ""),
+ ("invalid json! {}", ""),
+ ("{\"errors\": [{}]}", ""),
+ ("{\"errors\": [{\"title\": \"some title\"}]}", "some title")])
+def test_extractErrorTitle(upload_manager, input, expected_result):
+ assert upload_manager.extractErrorTitle(input) == expected_result
+
+
+def test_exportJobError(upload_manager):
+ mocked_application = MagicMock()
+ with patch("UM.Application.Application.getInstance", MagicMock(return_value = mocked_application)):
+ upload_manager._onJobExportError("file_name.3mf")
+
+ # Ensure that message was displayed
+ mocked_application.showMessageSignal.emit.assert_called_once()
diff --git a/plugins/DigitalLibrary/tests/TestDigitalFactoryFileModel.py b/plugins/DigitalLibrary/tests/TestDigitalFactoryFileModel.py
new file mode 100644
index 0000000000..7817d03516
--- /dev/null
+++ b/plugins/DigitalLibrary/tests/TestDigitalFactoryFileModel.py
@@ -0,0 +1,73 @@
+from pathlib import Path
+
+from src.DigitalFactoryFileModel import DigitalFactoryFileModel
+from src.DigitalFactoryFileResponse import DigitalFactoryFileResponse
+
+
+file_1 = DigitalFactoryFileResponse(client_id = "client_id_1",
+ content_type = "zomg",
+ file_name = "file_1.3mf",
+ file_id = "file_id_1",
+ library_project_id = "project_id_1",
+ status = "test",
+ user_id = "user_id_1",
+ username = "username_1",
+ uploaded_at = "2021-04-07T10:33:25.000Z")
+
+file_2 = DigitalFactoryFileResponse(client_id ="client_id_2",
+ content_type = "zomg",
+ file_name = "file_2.3mf",
+ file_id = "file_id_2",
+ library_project_id = "project_id_2",
+ status = "test",
+ user_id = "user_id_2",
+ username = "username_2",
+ uploaded_at = "2021-02-06T09:33:22.000Z")
+
+file_wtf = DigitalFactoryFileResponse(client_id ="client_id_1",
+ content_type = "zomg",
+ file_name = "file_3.wtf",
+ file_id = "file_id_3",
+ library_project_id = "project_id_1",
+ status = "test",
+ user_id = "user_id_1",
+ username = "username_1",
+ uploaded_at = "2021-04-06T12:33:25.000Z")
+
+
+def test_setFiles():
+ model = DigitalFactoryFileModel()
+
+ assert model.count == 0
+
+ model.setFiles([file_1, file_2])
+ assert model.count == 2
+
+ assert model.getItem(0)["fileName"] == "file_1.3mf"
+ assert model.getItem(1)["fileName"] == "file_2.3mf"
+
+
+def test_clearProjects():
+ model = DigitalFactoryFileModel()
+ model.setFiles([file_1, file_2])
+ model.clearFiles()
+ assert model.count == 0
+
+
+def test_setProjectMultipleTimes():
+ model = DigitalFactoryFileModel()
+ model.setFiles([file_1, file_2])
+ model.setFiles([file_2])
+ assert model.count == 1
+ assert model.getItem(0)["fileName"] == "file_2.3mf"
+
+
+def test_setFilter():
+ model = DigitalFactoryFileModel()
+
+ model.setFiles([file_1, file_2, file_wtf])
+ model.setFilters({"file_name": lambda x: Path(x).suffix[1:].lower() in ["3mf"]})
+ assert model.count == 2
+
+ model.clearFilters()
+ assert model.count == 3
diff --git a/plugins/DigitalLibrary/tests/TestDigitalFactoryProjectModel.py b/plugins/DigitalLibrary/tests/TestDigitalFactoryProjectModel.py
new file mode 100644
index 0000000000..890f62f3f6
--- /dev/null
+++ b/plugins/DigitalLibrary/tests/TestDigitalFactoryProjectModel.py
@@ -0,0 +1,55 @@
+
+from src.DigitalFactoryProjectModel import DigitalFactoryProjectModel
+from src.DigitalFactoryProjectResponse import DigitalFactoryProjectResponse
+
+
+project_1 = DigitalFactoryProjectResponse(library_project_id = "omg",
+ display_name = "zomg",
+ username = "nope",
+ organization_shared = True)
+
+project_2 = DigitalFactoryProjectResponse(library_project_id = "omg2",
+ display_name = "zomg2",
+ username = "nope",
+ organization_shared = False)
+
+
+def test_setProjects():
+ model = DigitalFactoryProjectModel()
+
+ assert model.count == 0
+
+ model.setProjects([project_1, project_2])
+ assert model.count == 2
+
+ assert model.getItem(0)["displayName"] == "zomg"
+ assert model.getItem(1)["displayName"] == "zomg2"
+
+
+def test_clearProjects():
+ model = DigitalFactoryProjectModel()
+ model.setProjects([project_1, project_2])
+ model.clearProjects()
+ assert model.count == 0
+
+
+def test_setProjectMultipleTimes():
+ model = DigitalFactoryProjectModel()
+ model.setProjects([project_1, project_2])
+ model.setProjects([project_2])
+ assert model.count == 1
+ assert model.getItem(0)["displayName"] == "zomg2"
+
+
+def test_extendProjects():
+ model = DigitalFactoryProjectModel()
+
+ assert model.count == 0
+
+ model.setProjects([project_1])
+ assert model.count == 1
+
+ model.extendProjects([project_2])
+ assert model.count == 2
+ assert model.getItem(0)["displayName"] == "zomg"
+ assert model.getItem(1)["displayName"] == "zomg2"
diff --git a/plugins/DigitalLibrary/tests/TestDigitalLibraryApiClient.py b/plugins/DigitalLibrary/tests/TestDigitalLibraryApiClient.py
new file mode 100644
index 0000000000..9751838ddf
--- /dev/null
+++ b/plugins/DigitalLibrary/tests/TestDigitalLibraryApiClient.py
@@ -0,0 +1,89 @@
+# Copyright (c) 2021 Ultimaker B.V.
+# Cura is released under the terms of the LGPLv3 or higher.
+
+from unittest.mock import MagicMock
+
+import pytest
+
+from cura.CuraApplication import CuraApplication
+from src.DigitalFactoryApiClient import DigitalFactoryApiClient
+from src.PaginationManager import PaginationManager
+
+
+@pytest.fixture
+def application():
+ app = MagicMock(spec=CuraApplication, name = "Mocked Cura Application")
+ return app
+
+
+@pytest.fixture
+def pagination_manager():
+ manager = MagicMock(name = "Mocked Pagination Manager")
+ return manager
+
+
+@pytest.fixture
+def api_client(application, pagination_manager):
+ api_client = DigitalFactoryApiClient(application, MagicMock())
+ api_client._projects_pagination_mgr = pagination_manager
+ return api_client
+
+
+def test_getProjectsFirstPage(api_client):
+ # setup
+ http_manager = MagicMock()
+ api_client._http = http_manager
+ pagination_manager = api_client._projects_pagination_mgr
+ pagination_manager.limit = 20
+
+ finished_callback = MagicMock()
+ failed_callback = MagicMock()
+
+ # Call
+ api_client.getProjectsFirstPage(search_filter = "filter", on_finished = finished_callback, failed = failed_callback)
+
+ # Asserts
+ pagination_manager.reset.assert_called_once() # Should be called since we asked for new set of projects
+ http_manager.get.assert_called_once()
+ args = http_manager.get.call_args_list[0]
+
+ # Ensure that it's called with the right limit
+ assert args[0][0] == "https://api.ultimaker.com/cura/v1/projects?limit=20&search=filter"
+
+ # Change the limit & try again
+ http_manager.get.reset_mock()
+ pagination_manager.limit = 80
+ api_client.getProjectsFirstPage(search_filter = "filter", on_finished = finished_callback, failed = failed_callback)
+ args = http_manager.get.call_args_list[0]
+
+ # Ensure that it's called with the right limit
+ assert args[0][0] == "https://api.ultimaker.com/cura/v1/projects?limit=80&search=filter"
+
+
+def test_getMoreProjects_noNewProjects(api_client):
+ api_client.hasMoreProjectsToLoad = MagicMock(return_value = False)
+ http_manager = MagicMock()
+ api_client._http = http_manager
+
+ finished_callback = MagicMock()
+ failed_callback = MagicMock()
+ api_client.getMoreProjects(finished_callback, failed_callback)
+
+ http_manager.get.assert_not_called()
+
+
+def test_getMoreProjects_hasNewProjects(api_client):
+ api_client.hasMoreProjectsToLoad = MagicMock(return_value = True)
+ http_manager = MagicMock()
+ api_client._http = http_manager
+
+ finished_callback = MagicMock()
+ failed_callback = MagicMock()
+ api_client.getMoreProjects(finished_callback, failed_callback)
+
+ http_manager.get.assert_called_once()
+
+
+def test_clear(api_client):
+ api_client.clear()
+ api_client._projects_pagination_mgr.reset.assert_called_once()
diff --git a/plugins/DigitalLibrary/tests/conftest.py b/plugins/DigitalLibrary/tests/conftest.py
new file mode 100644
index 0000000000..2afda2a171
--- /dev/null
+++ b/plugins/DigitalLibrary/tests/conftest.py
@@ -0,0 +1,5 @@
+
+# Ensure that the importing for all tests work
+import sys
+import os
+sys.path.append(os.path.join(os.path.dirname(os.path.abspath(__file__)), ".."))
diff --git a/plugins/FirmwareUpdateChecker/plugin.json b/plugins/FirmwareUpdateChecker/plugin.json
index 61764e4d3c..d979e7f3a5 100644
--- a/plugins/FirmwareUpdateChecker/plugin.json
+++ b/plugins/FirmwareUpdateChecker/plugin.json
@@ -3,6 +3,6 @@
"author": "Ultimaker B.V.",
"version": "1.0.1",
"description": "Checks for firmware updates.",
- "api": "7.4.0",
+ "api": 7,
"i18n-catalog": "cura"
}
diff --git a/plugins/FirmwareUpdater/plugin.json b/plugins/FirmwareUpdater/plugin.json
index c59208a555..fc42e11973 100644
--- a/plugins/FirmwareUpdater/plugin.json
+++ b/plugins/FirmwareUpdater/plugin.json
@@ -3,6 +3,6 @@
"author": "Ultimaker B.V.",
"version": "1.0.1",
"description": "Provides a machine actions for updating firmware.",
- "api": "7.4.0",
+ "api": 7,
"i18n-catalog": "cura"
}
diff --git a/plugins/GCodeGzReader/plugin.json b/plugins/GCodeGzReader/plugin.json
index f7e63e5a9c..d91b7278ec 100644
--- a/plugins/GCodeGzReader/plugin.json
+++ b/plugins/GCodeGzReader/plugin.json
@@ -3,6 +3,6 @@
"author": "Ultimaker B.V.",
"version": "1.0.1",
"description": "Reads g-code from a compressed archive.",
- "api": "7.4.0",
+ "api": 7,
"i18n-catalog": "cura"
}
diff --git a/plugins/GCodeGzWriter/plugin.json b/plugins/GCodeGzWriter/plugin.json
index 97a0be0c82..2cb72459a4 100644
--- a/plugins/GCodeGzWriter/plugin.json
+++ b/plugins/GCodeGzWriter/plugin.json
@@ -3,6 +3,6 @@
"author": "Ultimaker B.V.",
"version": "1.0.1",
"description": "Writes g-code to a compressed archive.",
- "api": "7.4.0",
+ "api": 7,
"i18n-catalog": "cura"
}
diff --git a/plugins/GCodeProfileReader/plugin.json b/plugins/GCodeProfileReader/plugin.json
index ebb124e401..4447650d36 100644
--- a/plugins/GCodeProfileReader/plugin.json
+++ b/plugins/GCodeProfileReader/plugin.json
@@ -3,6 +3,6 @@
"author": "Ultimaker B.V.",
"version": "1.0.1",
"description": "Provides support for importing profiles from g-code files.",
- "api": "7.4.0",
+ "api": 7,
"i18n-catalog": "cura"
}
diff --git a/plugins/GCodeReader/plugin.json b/plugins/GCodeReader/plugin.json
index 213c900890..0c5e3d6247 100644
--- a/plugins/GCodeReader/plugin.json
+++ b/plugins/GCodeReader/plugin.json
@@ -3,6 +3,6 @@
"author": "Victor Larchenko, Ultimaker B.V.",
"version": "1.0.1",
"description": "Allows loading and displaying G-code files.",
- "api": "7.4.0",
+ "api": 7,
"i18n-catalog": "cura"
}
diff --git a/plugins/GCodeWriter/plugin.json b/plugins/GCodeWriter/plugin.json
index c924f3ebcd..cf28e3a792 100644
--- a/plugins/GCodeWriter/plugin.json
+++ b/plugins/GCodeWriter/plugin.json
@@ -3,6 +3,6 @@
"author": "Ultimaker B.V.",
"version": "1.0.1",
"description": "Writes g-code to a file.",
- "api": "7.4.0",
+ "api": 7,
"i18n-catalog": "cura"
}
diff --git a/plugins/ImageReader/ConfigUI.qml b/plugins/ImageReader/ConfigUI.qml
index a7dbc5f748..a3dceed50d 100644
--- a/plugins/ImageReader/ConfigUI.qml
+++ b/plugins/ImageReader/ConfigUI.qml
@@ -43,7 +43,7 @@ UM.Dialog
TextField {
id: peak_height
objectName: "Peak_Height"
- validator: RegExpValidator {regExp: /^\d{1,3}([\,|\.]\d*)?$/}
+ validator: RegExpValidator {regExp: /^\d{0,3}([\,|\.]\d*)?$/}
width: 180 * screenScaleFactor
onTextChanged: { manager.onPeakHeightChanged(text) }
}
@@ -66,7 +66,7 @@ UM.Dialog
TextField {
id: base_height
objectName: "Base_Height"
- validator: RegExpValidator {regExp: /^\d{1,3}([\,|\.]\d*)?$/}
+ validator: RegExpValidator {regExp: /^\d{0,3}([\,|\.]\d*)?$/}
width: 180 * screenScaleFactor
onTextChanged: { manager.onBaseHeightChanged(text) }
}
diff --git a/plugins/ImageReader/ImageReader.py b/plugins/ImageReader/ImageReader.py
index 1bab15e9d6..4a32ed71f1 100644
--- a/plugins/ImageReader/ImageReader.py
+++ b/plugins/ImageReader/ImageReader.py
@@ -52,11 +52,8 @@ class ImageReader(MeshReader):
def _generateSceneNode(self, file_name, xz_size, height_from_base, base_height, blur_iterations, max_size, lighter_is_higher, use_transparency_model, transmittance_1mm):
scene_node = SceneNode()
-
mesh = MeshBuilder()
-
img = QImage(file_name)
-
if img.isNull():
Logger.log("e", "Image is corrupt.")
return None
@@ -70,11 +67,10 @@ class ImageReader(MeshReader):
height_from_base = max(height_from_base, 0)
base_height = max(base_height, 0)
- peak_height = base_height + height_from_base
xz_size = max(xz_size, 1)
- scale_vector = Vector(xz_size, peak_height, xz_size)
+ scale_vector = Vector(xz_size, height_from_base, xz_size)
if width > height:
scale_vector = scale_vector.set(z=scale_vector.z * aspect)
@@ -132,7 +128,7 @@ class ImageReader(MeshReader):
if use_transparency_model:
divisor = 1.0 / math.log(transmittance_1mm / 100.0) # log-base doesn't matter here. Precompute this value for faster computation of each pixel.
- min_luminance = (transmittance_1mm / 100.0) ** (peak_height - base_height)
+ min_luminance = (transmittance_1mm / 100.0) ** height_from_base
for (y, x) in numpy.ndindex(height_data.shape):
mapped_luminance = min_luminance + (1.0 - min_luminance) * height_data[y, x]
height_data[y, x] = base_height + divisor * math.log(mapped_luminance) # use same base as a couple lines above this
diff --git a/plugins/ImageReader/plugin.json b/plugins/ImageReader/plugin.json
index ee871f2694..90ead02b89 100644
--- a/plugins/ImageReader/plugin.json
+++ b/plugins/ImageReader/plugin.json
@@ -3,6 +3,6 @@
"author": "Ultimaker B.V.",
"version": "1.0.1",
"description": "Enables ability to generate printable geometry from 2D image files.",
- "api": "7.4.0",
+ "api": 7,
"i18n-catalog": "cura"
}
diff --git a/plugins/LegacyProfileReader/plugin.json b/plugins/LegacyProfileReader/plugin.json
index 90c5ccd4ca..9611da5a4c 100644
--- a/plugins/LegacyProfileReader/plugin.json
+++ b/plugins/LegacyProfileReader/plugin.json
@@ -3,6 +3,6 @@
"author": "Ultimaker B.V.",
"version": "1.0.1",
"description": "Provides support for importing profiles from legacy Cura versions.",
- "api": "7.4.0",
+ "api": 7,
"i18n-catalog": "cura"
}
diff --git a/plugins/MachineSettingsAction/MachineSettingsAction.qml b/plugins/MachineSettingsAction/MachineSettingsAction.qml
index c2cb30c14b..8c4c00a3a5 100644
--- a/plugins/MachineSettingsAction/MachineSettingsAction.qml
+++ b/plugins/MachineSettingsAction/MachineSettingsAction.qml
@@ -27,7 +27,7 @@ Cura.MachineAction
Connections
{
target: extrudersModel
- onItemsChanged: tabNameModel.update()
+ function onItemsChanged() { tabNameModel.update() }
}
ListModel
diff --git a/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml b/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml
index 902388b669..293e7386b2 100644
--- a/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml
+++ b/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml
@@ -137,6 +137,7 @@ Item
labelWidth: base.labelWidth
controlWidth: base.controlWidth
unitText: ""
+ decimals: 0
forceUpdateOnChangeFunction: forceUpdateFunction
}
}
diff --git a/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml b/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml
index 758efd2e4e..db581e8cf5 100644
--- a/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml
+++ b/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml
@@ -326,10 +326,29 @@ Item
Connections
{
target: Cura.MachineManager
- onGlobalContainerChanged: extruderCountModel.update()
+ function onGlobalContainerChanged() { extruderCountModel.update() }
}
}
+ /*
+ - Fix for this issue: https://github.com/Ultimaker/Cura/issues/9167
+ - Allows user to toggle if GCODE coordinates are affected by the extruder offset.
+ - Machine wide setting. CuraEngine/src/gcodeExport.cpp is not set up to evaluate per extruder currently.
+ - If it is moved to per-extruder (unlikely), then this should be moved to the extruder tab.
+ */
+ Cura.SimpleCheckBox // "GCode Affected By Extruder Offsets"
+ {
+ id: applyExtruderOffsetsCheckbox
+ containerStackId: machineStackId
+ settingKey: "machine_use_extruder_offset_to_offset_coords"
+ settingStoreIndex: propertyStoreIndex
+ labelText: catalog.i18nc("@label", "Apply Extruder offsets to GCode")
+ labelFont: base.labelFont
+ labelWidth: base.labelWidth
+ forceUpdateOnChangeFunction: forceUpdateFunction
+ }
+
+
/* The "Shared Heater" feature is temporarily disabled because its
implementation is incomplete. Printers with multiple filaments going
into one nozzle will keep the inactive filaments retracted at the
diff --git a/plugins/MachineSettingsAction/plugin.json b/plugins/MachineSettingsAction/plugin.json
index d9a01a80ae..51d88020ae 100644
--- a/plugins/MachineSettingsAction/plugin.json
+++ b/plugins/MachineSettingsAction/plugin.json
@@ -3,6 +3,6 @@
"author": "fieldOfView, Ultimaker B.V.",
"version": "1.0.1",
"description": "Provides a way to change machine settings (such as build volume, nozzle size, etc.).",
- "api": "7.4.0",
+ "api": 7,
"i18n-catalog": "cura"
}
diff --git a/plugins/ModelChecker/plugin.json b/plugins/ModelChecker/plugin.json
index 664d7c1b9f..bf546879c7 100644
--- a/plugins/ModelChecker/plugin.json
+++ b/plugins/ModelChecker/plugin.json
@@ -2,7 +2,7 @@
"name": "Model Checker",
"author": "Ultimaker B.V.",
"version": "1.0.1",
- "api": "7.4.0",
+ "api": 7,
"description": "Checks models and print configuration for possible printing issues and give suggestions.",
"i18n-catalog": "cura"
}
diff --git a/plugins/MonitorStage/MonitorMain.qml b/plugins/MonitorStage/MonitorMain.qml
index 56f916dc25..cb16b91cb8 100644
--- a/plugins/MonitorStage/MonitorMain.qml
+++ b/plugins/MonitorStage/MonitorMain.qml
@@ -137,7 +137,7 @@ Rectangle
id: externalLinkIcon
anchors.verticalCenter: parent.verticalCenter
color: UM.Theme.getColor("text_link")
- source: UM.Theme.getIcon("external_link")
+ source: UM.Theme.getIcon("LinkExternal")
width: UM.Theme.getSize("monitor_external_link_icon").width
height: UM.Theme.getSize("monitor_external_link_icon").height
}
@@ -164,5 +164,16 @@ Rectangle
onExited: manageQueueText.font.underline = false
}
}
+ Label
+ {
+ id: noConnectionLabel
+ anchors.horizontalCenter: parent.horizontalCenter
+ visible: !isNetworkConfigurable
+ text: catalog.i18nc("@info", "In order to monitor your print from Cura, please connect the printer.")
+ font: UM.Theme.getFont("medium")
+ color: UM.Theme.getColor("text")
+ wrapMode: Text.WordWrap
+ width: contentWidth
+ }
}
}
diff --git a/plugins/MonitorStage/plugin.json b/plugins/MonitorStage/plugin.json
index a8100cb2a3..bcf42763dc 100644
--- a/plugins/MonitorStage/plugin.json
+++ b/plugins/MonitorStage/plugin.json
@@ -3,6 +3,6 @@
"author": "Ultimaker B.V.",
"version": "1.0.1",
"description": "Provides a monitor stage in Cura.",
- "api": "7.4.0",
+ "api": 7,
"i18n-catalog": "cura"
}
\ No newline at end of file
diff --git a/plugins/PerObjectSettingsTool/PerObjectCategory.qml b/plugins/PerObjectSettingsTool/PerObjectCategory.qml
index 4ca12f657e..58192f0acd 100644
--- a/plugins/PerObjectSettingsTool/PerObjectCategory.qml
+++ b/plugins/PerObjectSettingsTool/PerObjectCategory.qml
@@ -24,7 +24,7 @@ Button {
anchors.verticalCenter: parent.verticalCenter
height: (label.height / 2) | 0
width: height
- source: control.checked ? UM.Theme.getIcon("arrow_bottom") : UM.Theme.getIcon("arrow_right");
+ source: control.checked ? UM.Theme.getIcon("ChevronSingleDown") : UM.Theme.getIcon("ChevronSingleRight");
color: control.hovered ? palette.highlight : palette.buttonText
}
UM.RecolorImage
diff --git a/plugins/PerObjectSettingsTool/PerObjectItem.qml b/plugins/PerObjectSettingsTool/PerObjectItem.qml
index 7c6ece12db..bb1c31e1f3 100644
--- a/plugins/PerObjectSettingsTool/PerObjectItem.qml
+++ b/plugins/PerObjectSettingsTool/PerObjectItem.qml
@@ -35,7 +35,7 @@ UM.TooltipArea
Connections
{
target: addedSettingsModel
- onVisibleCountChanged:
+ function onVisibleCountChanged()
{
check.checked = addedSettingsModel.getVisible(model.key)
}
diff --git a/plugins/PerObjectSettingsTool/PerObjectSettingVisibilityHandler.py b/plugins/PerObjectSettingsTool/PerObjectSettingVisibilityHandler.py
index 445f7ff676..401396f2b8 100644
--- a/plugins/PerObjectSettingsTool/PerObjectSettingVisibilityHandler.py
+++ b/plugins/PerObjectSettingsTool/PerObjectSettingVisibilityHandler.py
@@ -73,38 +73,40 @@ class PerObjectSettingVisibilityHandler(UM.Settings.Models.SettingVisibilityHand
# Add all instances that are not added, but are in visibility list
for item in visible:
- if settings.getInstance(item) is None: # Setting was not added already.
- definition = self._stack.getSettingDefinition(item)
- if definition:
- new_instance = SettingInstance(definition, settings)
+ if settings.getInstance(item) is not None: # Setting was added already.
+ continue
+ definition = self._stack.getSettingDefinition(item)
+ if not definition:
+ Logger.log("w", f"Unable to add instance ({item}) to per-object visibility because we couldn't find the matching definition.")
+ continue
+
+ new_instance = SettingInstance(definition, settings)
+ stack_nr = -1
+ stack = None
+ # Check from what stack we should copy the raw property of the setting from.
+ if self._stack.getProperty("machine_extruder_count", "value") > 1:
+ if definition.limit_to_extruder != "-1":
+ # A limit to extruder function was set and it's a multi extrusion machine. Check what stack we do need to use.
+ stack_nr = str(int(round(float(self._stack.getProperty(item, "limit_to_extruder")))))
+
+ # Check if the found stack_number is in the extruder list of extruders.
+ if stack_nr not in ExtruderManager.getInstance().extruderIds and self._stack.getProperty("extruder_nr", "value") is not None:
stack_nr = -1
- stack = None
- # Check from what stack we should copy the raw property of the setting from.
- if self._stack.getProperty("machine_extruder_count", "value") > 1:
- if definition.limit_to_extruder != "-1":
- # A limit to extruder function was set and it's a multi extrusion machine. Check what stack we do need to use.
- stack_nr = str(int(round(float(self._stack.getProperty(item, "limit_to_extruder")))))
- # Check if the found stack_number is in the extruder list of extruders.
- if stack_nr not in ExtruderManager.getInstance().extruderIds and self._stack.getProperty("extruder_nr", "value") is not None:
- stack_nr = -1
+ # Use the found stack number to get the right stack to copy the value from.
+ if stack_nr in ExtruderManager.getInstance().extruderIds:
+ stack = ContainerRegistry.getInstance().findContainerStacks(id = ExtruderManager.getInstance().extruderIds[stack_nr])[0]
+ else:
+ stack = self._stack
- # Use the found stack number to get the right stack to copy the value from.
- if stack_nr in ExtruderManager.getInstance().extruderIds:
- stack = ContainerRegistry.getInstance().findContainerStacks(id = ExtruderManager.getInstance().extruderIds[stack_nr])[0]
- else:
- stack = self._stack
-
- # Use the raw property to set the value (so the inheritance doesn't break)
- if stack is not None:
- new_instance.setProperty("value", stack.getRawProperty(item, "value"))
- else:
- new_instance.setProperty("value", None)
- new_instance.resetState() # Ensure that the state is not seen as a user state.
- settings.addInstance(new_instance)
- visibility_changed = True
- else:
- Logger.log("w", "Unable to add instance (%s) to per-object visibility because we couldn't find the matching definition", item)
+ # Use the raw property to set the value (so the inheritance doesn't break)
+ if stack is not None:
+ new_instance.setProperty("value", stack.getRawProperty(item, "value"))
+ else:
+ new_instance.setProperty("value", None)
+ new_instance.resetState() # Ensure that the state is not seen as a user state.
+ settings.addInstance(new_instance)
+ visibility_changed = True
if visibility_changed:
self.visibilityChanged.emit()
diff --git a/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml b/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml
index e834372ae9..e96337e6bb 100644
--- a/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml
+++ b/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml
@@ -1,4 +1,4 @@
-// Copyright (c) 2017 Ultimaker B.V.
+// Copyright (c) 2021 Ultimaker B.V.
// Uranium is released under the terms of the LGPLv3 or higher.
import QtQuick 2.2
@@ -80,7 +80,7 @@ Item
{
id: normalButton
text: catalog.i18nc("@label", "Normal model")
- iconSource: UM.Theme.getIcon("pos_normal");
+ iconSource: UM.Theme.getIcon("Infill0");
property bool needBorder: true
checkable: true
onClicked: setMeshType(normalMeshType);
@@ -92,7 +92,7 @@ Item
{
id: supportMeshButton
text: catalog.i18nc("@label", "Print as support")
- iconSource: UM.Theme.getIcon("pos_print_as_support");
+ iconSource: UM.Theme.getIcon("MeshTypeSupport");
property bool needBorder: true
checkable:true
onClicked: setMeshType(supportMeshType)
@@ -104,7 +104,7 @@ Item
{
id: overlapMeshButton
text: catalog.i18nc("@label", "Modify settings for overlaps")
- iconSource: UM.Theme.getIcon("pos_modify_overlaps");
+ iconSource: UM.Theme.getIcon("MeshTypeIntersect");
property bool needBorder: true
checkable:true
onClicked: setMeshType(infillMeshType)
@@ -116,7 +116,7 @@ Item
{
id: antiOverhangMeshButton
text: catalog.i18nc("@label", "Don't support overlaps")
- iconSource: UM.Theme.getIcon("pos_modify_dont_support_overlap");
+ iconSource: UM.Theme.getIcon("BlockSupportOverlaps");
property bool needBorder: true
checkable: true
onClicked: setMeshType(antiOverhangMeshType)
@@ -136,10 +136,12 @@ Item
}
- ComboBox
+ Cura.ComboBox
{
id: infillOnlyComboBox
width: parent.width / 2 - UM.Theme.getSize("default_margin").width
+ height: UM.Theme.getSize("setting_control").height
+ textRole: "text"
model: ListModel
{
@@ -237,7 +239,7 @@ Item
id: settingLoader
width: UM.Theme.getSize("setting").width
height: UM.Theme.getSize("section").height
-
+ enabled: provider.properties.enabled === "True"
property var definition: model
property var settingDefinitionsModel: addedSettingsModel
property var propertyProvider: provider
@@ -304,7 +306,7 @@ Item
height: width
sourceSize.height: width
color: control.hovered ? UM.Theme.getColor("setting_control_button_hover") : UM.Theme.getColor("setting_control_button")
- source: UM.Theme.getIcon("minus")
+ source: UM.Theme.getIcon("Minus")
}
}
}
@@ -334,13 +336,13 @@ Item
Connections
{
target: inheritStackProvider
- onPropertiesChanged: provider.forcePropertiesChanged()
+ function onPropertiesChanged() { provider.forcePropertiesChanged() }
}
Connections
{
target: UM.ActiveTool
- onPropertiesChanged:
+ function onPropertiesChanged()
{
// the values cannot be bound with UM.ActiveTool.properties.getValue() calls,
// so here we connect to the signal and update the those values.
diff --git a/plugins/PerObjectSettingsTool/PerObjectSettingsTool.py b/plugins/PerObjectSettingsTool/PerObjectSettingsTool.py
index ab2bcaad5b..e80acc8d94 100644
--- a/plugins/PerObjectSettingsTool/PerObjectSettingsTool.py
+++ b/plugins/PerObjectSettingsTool/PerObjectSettingsTool.py
@@ -1,4 +1,4 @@
-# Copyright (c) 2020 Ultimaker B.V.
+# Copyright (c) 2021 Ultimaker B.V.
# Cura is released under the terms of the LGPLv3 or higher.
from UM.Logger import Logger
@@ -103,20 +103,27 @@ class PerObjectSettingsTool(Tool):
new_instance.resetState() # Ensure that the state is not seen as a user state.
settings.addInstance(new_instance)
- for property_key in ["top_bottom_thickness", "wall_thickness", "wall_line_count"]:
+ # Override some settings to ensure that the infill mesh by default adds no skin or walls. Or remove them if not an infill mesh.
+ specialized_settings = {
+ "top_bottom_thickness": 0,
+ "top_thickness": "=top_bottom_thickness",
+ "bottom_thickness": "=top_bottom_thickness",
+ "top_layers": "=0 if infill_sparse_density == 100 else math.ceil(round(top_thickness / resolveOrValue('layer_height'), 4))",
+ "bottom_layers": "=0 if infill_sparse_density == 100 else math.ceil(round(bottom_thickness / resolveOrValue('layer_height'), 4))",
+ "wall_thickness": 0,
+ "wall_line_count": "=max(1, round((wall_thickness - wall_line_width_0) / wall_line_width_x) + 1) if wall_thickness != 0 else 0"
+ }
+ for property_key in specialized_settings:
if mesh_type == "infill_mesh":
if settings.getInstance(property_key) is None:
definition = stack.getSettingDefinition(property_key)
new_instance = SettingInstance(definition, settings)
- # We just want the wall_line count to be there in case it was overriden in the global stack.
- # as such, we don't need to set a value.
- if property_key != "wall_line_count":
- new_instance.setProperty("value", 0)
+ new_instance.setProperty("value", specialized_settings[property_key])
new_instance.resetState() # Ensure that the state is not seen as a user state.
settings.addInstance(new_instance)
settings_visibility_changed = True
- elif old_mesh_type == "infill_mesh" and settings.getInstance(property_key) and (settings.getProperty(property_key, "value") == 0 or property_key == "wall_line_count"):
+ elif old_mesh_type == "infill_mesh" and settings.getInstance(property_key) and property_key in specialized_settings:
settings.removeInstance(property_key)
settings_visibility_changed = True
diff --git a/plugins/PerObjectSettingsTool/__init__.py b/plugins/PerObjectSettingsTool/__init__.py
index acfc35815e..d3c6d236ef 100644
--- a/plugins/PerObjectSettingsTool/__init__.py
+++ b/plugins/PerObjectSettingsTool/__init__.py
@@ -13,7 +13,7 @@ def getMetaData():
"tool": {
"name": i18n_catalog.i18nc("@label", "Per Model Settings"),
"description": i18n_catalog.i18nc("@info:tooltip", "Configure Per Model Settings"),
- "icon": "tool_icon.svg",
+ "icon": "MeshType",
"tool_panel": "PerObjectSettingsPanel.qml",
"weight": 3
},
diff --git a/plugins/PerObjectSettingsTool/plugin.json b/plugins/PerObjectSettingsTool/plugin.json
index 15db31401e..2a44d6840e 100644
--- a/plugins/PerObjectSettingsTool/plugin.json
+++ b/plugins/PerObjectSettingsTool/plugin.json
@@ -3,6 +3,6 @@
"author": "Ultimaker B.V.",
"version": "1.0.1",
"description": "Provides the Per Model Settings.",
- "api": "7.4.0",
+ "api": 7,
"i18n-catalog": "cura"
}
diff --git a/plugins/PerObjectSettingsTool/tool_icon.svg b/plugins/PerObjectSettingsTool/tool_icon.svg
deleted file mode 100644
index 41e49cae07..0000000000
--- a/plugins/PerObjectSettingsTool/tool_icon.svg
+++ /dev/null
@@ -1,22 +0,0 @@
-
-
\ No newline at end of file
diff --git a/plugins/PostProcessingPlugin/PostProcessingPlugin.py b/plugins/PostProcessingPlugin/PostProcessingPlugin.py
index 075f947622..8968e2c547 100644
--- a/plugins/PostProcessingPlugin/PostProcessingPlugin.py
+++ b/plugins/PostProcessingPlugin/PostProcessingPlugin.py
@@ -142,7 +142,9 @@ class PostProcessingPlugin(QObject, Extension):
# The PostProcessingPlugin path is for built-in scripts.
# The Resources path is where the user should store custom scripts.
# The Preferences path is legacy, where the user may previously have stored scripts.
- for root in [PluginRegistry.getInstance().getPluginPath("PostProcessingPlugin"), Resources.getStoragePath(Resources.Resources), Resources.getStoragePath(Resources.Preferences)]:
+ resource_folders = [PluginRegistry.getInstance().getPluginPath("PostProcessingPlugin"), Resources.getStoragePath(Resources.Preferences)]
+ resource_folders.extend(Resources.getAllPathsForType(Resources.Resources))
+ for root in resource_folders:
if root is None:
continue
path = os.path.join(root, "scripts")
diff --git a/plugins/PostProcessingPlugin/PostProcessingPlugin.qml b/plugins/PostProcessingPlugin/PostProcessingPlugin.qml
index f94c0a1cca..7397ec8196 100644
--- a/plugins/PostProcessingPlugin/PostProcessingPlugin.qml
+++ b/plugins/PostProcessingPlugin/PostProcessingPlugin.qml
@@ -3,7 +3,9 @@
import QtQuick 2.2
import QtQuick.Controls 1.1
+import QtQuick.Controls 2.15 as QQC2
import QtQuick.Controls.Styles 1.1
+import QtQml.Models 2.15 as Models
import QtQuick.Layouts 1.1
import QtQuick.Dialogs 1.1
import QtQuick.Window 2.2
@@ -152,7 +154,7 @@ UM.Dialog
height: Math.round(control.height / 2.7)
sourceSize.height: width
color: palette.text
- source: UM.Theme.getIcon("cross1")
+ source: UM.Theme.getIcon("Cancel")
}
}
}
@@ -186,7 +188,7 @@ UM.Dialog
height: Math.round(control.height / 2.5)
sourceSize.height: width
color: control.enabled ? palette.text : disabledPalette.text
- source: UM.Theme.getIcon("arrow_bottom")
+ source: UM.Theme.getIcon("ChevronSingleDown")
}
}
}
@@ -220,7 +222,7 @@ UM.Dialog
height: Math.round(control.height / 2.5)
sourceSize.height: width
color: control.enabled ? palette.text : disabledPalette.text
- source: UM.Theme.getIcon("arrow_top")
+ source: UM.Theme.getIcon("ChevronSingleUp")
}
}
}
@@ -235,7 +237,7 @@ UM.Dialog
anchors.leftMargin: base.textMargin
anchors.top: activeScriptsList.bottom
anchors.topMargin: base.textMargin
- menu: scriptsMenu
+ onClicked: scriptsMenu.open()
style: ButtonStyle
{
label: Label
@@ -244,15 +246,16 @@ UM.Dialog
}
}
}
- Menu
+ QQC2.Menu
{
id: scriptsMenu
+ width: parent.width
- Instantiator
+ Models.Instantiator
{
model: manager.loadedScriptList
- MenuItem
+ QQC2.MenuItem
{
text: manager.getScriptLabelByKey(modelData.toString())
onTriggered: manager.addScriptToList(modelData.toString())
@@ -414,7 +417,7 @@ UM.Dialog
{
target: item
- onShowTooltip:
+ function onShowTooltip(text)
{
tooltip.text = text
var position = settingLoader.mapToItem(settingsPanel, settingsPanel.x, 0)
@@ -422,7 +425,7 @@ UM.Dialog
tooltip.target.x = position.x + 1
}
- onHideTooltip: tooltip.hide()
+ function onHideTooltip() { tooltip.hide() }
}
}
}
@@ -514,7 +517,7 @@ UM.Dialog
}
toolTipContentAlignment: Cura.ToolTip.ContentAlignment.AlignLeft
onClicked: dialog.show()
- iconSource: "postprocessing.svg"
+ iconSource: "Script.svg"
fixedWidthMode: false
}
@@ -533,4 +536,4 @@ UM.Dialog
labelText: activeScriptsList.count
}
}
-}
\ No newline at end of file
+}
diff --git a/plugins/PostProcessingPlugin/Script.svg b/plugins/PostProcessingPlugin/Script.svg
new file mode 100755
index 0000000000..33042b4124
--- /dev/null
+++ b/plugins/PostProcessingPlugin/Script.svg
@@ -0,0 +1,6 @@
+
+
diff --git a/plugins/PostProcessingPlugin/__init__.py b/plugins/PostProcessingPlugin/__init__.py
index 019627ebd5..4b3045021f 100644
--- a/plugins/PostProcessingPlugin/__init__.py
+++ b/plugins/PostProcessingPlugin/__init__.py
@@ -1,14 +1,6 @@
# Copyright (c) 2020 Jaime van Kessel, Ultimaker B.V.
# The PostProcessingPlugin is released under the terms of the AGPLv3 or higher.
-# Workaround for a race condition on certain systems where there
-# is a race condition between Arcus and PyQt. Importing Arcus
-# first seems to prevent Sip from going into a state where it
-# tries to create PyQt objects on a non-main thread.
-import Arcus # @UnusedImport
-import Savitar # @UnusedImport
-import pynest2d # @UnusedImport
-
from . import PostProcessingPlugin
diff --git a/plugins/PostProcessingPlugin/plugin.json b/plugins/PostProcessingPlugin/plugin.json
index a71b5cda78..d5b6727962 100644
--- a/plugins/PostProcessingPlugin/plugin.json
+++ b/plugins/PostProcessingPlugin/plugin.json
@@ -2,7 +2,7 @@
"name": "Post Processing",
"author": "Ultimaker",
"version": "2.2.1",
- "api": "7.4.0",
+ "api": 7,
"description": "Extension that allows for user created scripts for post processing",
"catalog": "cura"
}
\ No newline at end of file
diff --git a/plugins/PostProcessingPlugin/postprocessing.svg b/plugins/PostProcessingPlugin/postprocessing.svg
deleted file mode 100644
index f55face4a9..0000000000
--- a/plugins/PostProcessingPlugin/postprocessing.svg
+++ /dev/null
@@ -1,47 +0,0 @@
-
-
-
-
\ No newline at end of file
diff --git a/plugins/PostProcessingPlugin/scripts/ChangeAtZ.py b/plugins/PostProcessingPlugin/scripts/ChangeAtZ.py
index b4036f7ff2..a23e52b750 100644
--- a/plugins/PostProcessingPlugin/scripts/ChangeAtZ.py
+++ b/plugins/PostProcessingPlugin/scripts/ChangeAtZ.py
@@ -774,15 +774,15 @@ class ChangeAtZProcessor:
# looking for wait for bed temp
if "bedTemp" in values:
- codes.append("BedTemp: " + str(values["bedTemp"]))
+ codes.append("BedTemp: " + str(round(values["bedTemp"])))
# set our extruder one temp (if specified)
if "extruderOne" in values:
- codes.append("Extruder 1 Temp: " + str(values["extruderOne"]))
+ codes.append("Extruder 1 Temp: " + str(round(values["extruderOne"])))
# set our extruder two temp (if specified)
if "extruderTwo" in values:
- codes.append("Extruder 2 Temp: " + str(values["extruderTwo"]))
+ codes.append("Extruder 2 Temp: " + str(round(values["extruderTwo"])))
# set global flow rate
if "flowrate" in values:
diff --git a/plugins/PostProcessingPlugin/scripts/CreateThumbnail.py b/plugins/PostProcessingPlugin/scripts/CreateThumbnail.py
new file mode 100644
index 0000000000..0ce6ac6eff
--- /dev/null
+++ b/plugins/PostProcessingPlugin/scripts/CreateThumbnail.py
@@ -0,0 +1,109 @@
+import base64
+
+from UM.Logger import Logger
+from cura.Snapshot import Snapshot
+from PyQt5.QtCore import QByteArray, QIODevice, QBuffer
+
+from ..Script import Script
+
+
+class CreateThumbnail(Script):
+ def __init__(self):
+ super().__init__()
+
+ def _createSnapshot(self, width, height):
+ Logger.log("d", "Creating thumbnail image...")
+ try:
+ return Snapshot.snapshot(width, height)
+ except Exception:
+ Logger.logException("w", "Failed to create snapshot image")
+
+ def _encodeSnapshot(self, snapshot):
+ Logger.log("d", "Encoding thumbnail image...")
+ try:
+ thumbnail_buffer = QBuffer()
+ thumbnail_buffer.open(QBuffer.ReadWrite)
+ thumbnail_image = snapshot
+ thumbnail_image.save(thumbnail_buffer, "PNG")
+ base64_bytes = base64.b64encode(thumbnail_buffer.data())
+ base64_message = base64_bytes.decode('ascii')
+ thumbnail_buffer.close()
+ return base64_message
+ except Exception:
+ Logger.logException("w", "Failed to encode snapshot image")
+
+ def _convertSnapshotToGcode(self, encoded_snapshot, width, height, chunk_size=78):
+ gcode = []
+
+ encoded_snapshot_length = len(encoded_snapshot)
+ gcode.append(";")
+ gcode.append("; thumbnail begin {} {} {}".format(
+ width, height, encoded_snapshot_length))
+
+ chunks = ["; {}".format(encoded_snapshot[i:i+chunk_size])
+ for i in range(0, len(encoded_snapshot), chunk_size)]
+ gcode.extend(chunks)
+
+ gcode.append("; thumbnail end")
+ gcode.append(";")
+ gcode.append("")
+
+ return gcode
+
+ def getSettingDataString(self):
+ return """{
+ "name": "Create Thumbnail",
+ "key": "CreateThumbnail",
+ "metadata": {},
+ "version": 2,
+ "settings":
+ {
+ "width":
+ {
+ "label": "Width",
+ "description": "Width of the generated thumbnail",
+ "unit": "px",
+ "type": "int",
+ "default_value": 32,
+ "minimum_value": "0",
+ "minimum_value_warning": "12",
+ "maximum_value_warning": "800"
+ },
+ "height":
+ {
+ "label": "Height",
+ "description": "Height of the generated thumbnail",
+ "unit": "px",
+ "type": "int",
+ "default_value": 32,
+ "minimum_value": "0",
+ "minimum_value_warning": "12",
+ "maximum_value_warning": "600"
+ }
+ }
+ }"""
+
+ def execute(self, data):
+ width = self.getSettingValueByKey("width")
+ height = self.getSettingValueByKey("height")
+
+ snapshot = self._createSnapshot(width, height)
+ if snapshot:
+ encoded_snapshot = self._encodeSnapshot(snapshot)
+ snapshot_gcode = self._convertSnapshotToGcode(
+ encoded_snapshot, width, height)
+
+ for layer in data:
+ layer_index = data.index(layer)
+ lines = data[layer_index].split("\n")
+ for line in lines:
+ if line.startswith(";Generated with Cura"):
+ line_index = lines.index(line)
+ insert_index = line_index + 1
+ lines[insert_index:insert_index] = snapshot_gcode
+ break
+
+ final_lines = "\n".join(lines)
+ data[layer_index] = final_lines
+
+ return data
diff --git a/plugins/PostProcessingPlugin/scripts/DisplayProgressOnLCD.py b/plugins/PostProcessingPlugin/scripts/DisplayProgressOnLCD.py
index e39e69eff0..fd1c8af004 100644
--- a/plugins/PostProcessingPlugin/scripts/DisplayProgressOnLCD.py
+++ b/plugins/PostProcessingPlugin/scripts/DisplayProgressOnLCD.py
@@ -77,7 +77,7 @@ class DisplayProgressOnLCD(Script):
current_time_string = "{:d}h{:02d}m{:02d}s".format(int(h), int(m), int(s))
# And now insert that into the GCODE
lines.insert(line_index, "M117 Time Left {}".format(current_time_string))
- else: # Must be m73.
+ else:
mins = int(60 * h + m + s / 30)
lines.insert(line_index, "M73 R{}".format(mins))
diff --git a/plugins/PostProcessingPlugin/scripts/FilamentChange.py b/plugins/PostProcessingPlugin/scripts/FilamentChange.py
index 74b9687f8c..17ff045b8d 100644
--- a/plugins/PostProcessingPlugin/scripts/FilamentChange.py
+++ b/plugins/PostProcessingPlugin/scripts/FilamentChange.py
@@ -1,6 +1,9 @@
-# Copyright (c) 2019 Ultimaker B.V.
+# Copyright (c) 2021 Ultimaker B.V.
# The PostProcessingPlugin is released under the terms of the AGPLv3 or higher.
+# Modification 06.09.2020
+# add checkbox, now you can choose and use configuration from the firmware itself.
+
from typing import List
from ..Script import Script
@@ -13,7 +16,7 @@ class FilamentChange(Script):
def getSettingDataString(self):
return """{
- "name":"Filament Change",
+ "name": "Filament Change",
"key": "FilamentChange",
"metadata": {},
"version": 2,
@@ -27,14 +30,21 @@ class FilamentChange(Script):
"type": "str",
"default_value": "1"
},
-
+ "firmware_config":
+ {
+ "label": "Use Firmware Configuration",
+ "description": "Use the settings in your firmware, or customise the parameters of the filament change here.",
+ "type": "bool",
+ "default_value": false
+ },
"initial_retract":
{
"label": "Initial Retraction",
"description": "Initial filament retraction distance. The filament will be retracted with this amount before moving the nozzle away from the ongoing print.",
"unit": "mm",
"type": "float",
- "default_value": 30.0
+ "default_value": 30.0,
+ "enabled": "not firmware_config"
},
"later_retract":
{
@@ -42,7 +52,8 @@ class FilamentChange(Script):
"description": "Later filament retraction distance for removal. The filament will be retracted all the way out of the printer so that you can change the filament.",
"unit": "mm",
"type": "float",
- "default_value": 300.0
+ "default_value": 300.0,
+ "enabled": "not firmware_config"
},
"x_position":
{
@@ -50,7 +61,8 @@ class FilamentChange(Script):
"description": "Extruder X position. The print head will move here for filament change.",
"unit": "mm",
"type": "float",
- "default_value": 0
+ "default_value": 0,
+ "enabled": "not firmware_config"
},
"y_position":
{
@@ -58,7 +70,17 @@ class FilamentChange(Script):
"description": "Extruder Y position. The print head will move here for filament change.",
"unit": "mm",
"type": "float",
- "default_value": 0
+ "default_value": 0,
+ "enabled": "not firmware_config"
+ },
+ "z_position":
+ {
+ "label": "Z Position (relative)",
+ "description": "Extruder relative Z position. Move the print head up for filament change.",
+ "unit": "mm",
+ "type": "float",
+ "default_value": 0,
+ "minimum_value": 0
}
}
}"""
@@ -74,20 +96,26 @@ class FilamentChange(Script):
later_retract = self.getSettingValueByKey("later_retract")
x_pos = self.getSettingValueByKey("x_position")
y_pos = self.getSettingValueByKey("y_position")
+ z_pos = self.getSettingValueByKey("z_position")
+ firmware_config = self.getSettingValueByKey("firmware_config")
color_change = "M600"
- if initial_retract is not None and initial_retract > 0.:
- color_change = color_change + (" E%.2f" % initial_retract)
+ if not firmware_config:
+ if initial_retract is not None and initial_retract > 0.:
+ color_change = color_change + (" E%.2f" % initial_retract)
- if later_retract is not None and later_retract > 0.:
- color_change = color_change + (" L%.2f" % later_retract)
+ if later_retract is not None and later_retract > 0.:
+ color_change = color_change + (" L%.2f" % later_retract)
- if x_pos is not None:
- color_change = color_change + (" X%.2f" % x_pos)
-
- if y_pos is not None:
- color_change = color_change + (" Y%.2f" % y_pos)
+ if x_pos is not None:
+ color_change = color_change + (" X%.2f" % x_pos)
+
+ if y_pos is not None:
+ color_change = color_change + (" Y%.2f" % y_pos)
+
+ if z_pos is not None and z_pos > 0.:
+ color_change = color_change + (" Z%.2f" % z_pos)
color_change = color_change + " ; Generated by FilamentChange plugin\n"
@@ -101,4 +129,4 @@ class FilamentChange(Script):
if 0 < layer_num < len(data):
data[layer_num] = color_change + data[layer_num]
- return data
\ No newline at end of file
+ return data
diff --git a/plugins/PostProcessingPlugin/scripts/PauseAtHeight.py b/plugins/PostProcessingPlugin/scripts/PauseAtHeight.py
index fc7bfec60a..5c28073fb1 100644
--- a/plugins/PostProcessingPlugin/scripts/PauseAtHeight.py
+++ b/plugins/PostProcessingPlugin/scripts/PauseAtHeight.py
@@ -1,4 +1,4 @@
-# Copyright (c) 2020 Ultimaker B.V.
+# Copyright (c) 2021 Ultimaker B.V.
# Cura is released under the terms of the LGPLv3 or higher.
from ..Script import Script
@@ -182,8 +182,7 @@ class PauseAtHeight(Script):
"Repetier": "Repetier"
},
"default_value": "RepRap (Marlin/Sprinter)",
- "enabled": false,
- "default_value": ""
+ "enabled": false
},
"custom_gcode_before_pause":
{
@@ -339,11 +338,6 @@ class PauseAtHeight(Script):
if current_layer < pause_layer - nbr_negative_layers:
continue
- # Get X and Y from the next layer (better position for
- # the nozzle)
- next_layer = data[index + 1]
- x, y = self.getNextXY(next_layer)
-
prev_layer = data[index - 1]
prev_lines = prev_layer.split("\n")
current_e = 0.
@@ -354,6 +348,13 @@ class PauseAtHeight(Script):
current_e = self.getValue(prevLine, "E", -1)
if current_e >= 0:
break
+ # and also find last X,Y
+ for prevLine in reversed(prev_lines):
+ if prevLine.startswith(("G0", "G1", "G2", "G3")):
+ if self.getValue(prevLine, "X") is not None and self.getValue(prevLine, "Y") is not None:
+ x = self.getValue(prevLine, "X")
+ y = self.getValue(prevLine, "Y")
+ break
# Maybe redo the last layer.
if redo_layer:
@@ -386,7 +387,7 @@ class PauseAtHeight(Script):
#Retraction
prepend_gcode += self.putValue(M = 83) + " ; switch to relative E values for any needed retraction\n"
if retraction_amount != 0:
- prepend_gcode += self.putValue(G = 1, E = retraction_amount, F = 6000) + "\n"
+ prepend_gcode += self.putValue(G = 1, E = -retraction_amount, F = 6000) + "\n"
#Move the head away
prepend_gcode += self.putValue(G = 1, Z = current_z + 1, F = 300) + " ; move up a millimeter to get out of the way\n"
@@ -455,7 +456,7 @@ class PauseAtHeight(Script):
prepend_gcode += self.putValue(G = 1, E = -retraction_amount, F = 6000) + "\n"
#Move the head back
- prepend_gcode += self.putValue(G = 1, Z = current_z + 1, F = 300) + "\n"
+ prepend_gcode += self.putValue(G = 1, Z = current_z, F = 300) + "\n"
prepend_gcode += self.putValue(G = 1, X = x, Y = y, F = 9000) + "\n"
if retraction_amount != 0:
prepend_gcode += self.putValue(G = 1, E = retraction_amount, F = 6000) + "\n"
@@ -506,10 +507,23 @@ class PauseAtHeight(Script):
else:
Logger.log("w", "No previous feedrate found in gcode, feedrate for next layer(s) might be incorrect")
- prepend_gcode += self.putValue(M = 82) + " ; switch back to absolute E values\n"
+ extrusion_mode_string = "absolute"
+ extrusion_mode_numeric = 82
- # reset extrude value to pre pause value
- prepend_gcode += self.putValue(G = 92, E = current_e) + "\n"
+ relative_extrusion = Application.getInstance().getGlobalContainerStack().getProperty("relative_extrusion", "value")
+ if relative_extrusion:
+ extrusion_mode_string = "relative"
+ extrusion_mode_numeric = 83
+
+ prepend_gcode += self.putValue(M = extrusion_mode_numeric) + " ; switch back to " + extrusion_mode_string + " E values\n"
+
+ # reset extrude value to pre pause value
+ prepend_gcode += self.putValue(G = 92, E = current_e) + "\n"
+
+ elif redo_layer:
+ # All other options reset the E value to what it was before the pause because E things were added.
+ # If it's not yet reset, it still needs to be reset if there were any redo layers.
+ prepend_gcode += self.putValue(G = 92, E = current_e) + "\n"
layer = prepend_gcode + layer
diff --git a/plugins/PostProcessingPlugin/scripts/TimeLapse.py b/plugins/PostProcessingPlugin/scripts/TimeLapse.py
index 41fd4a5805..210199e087 100644
--- a/plugins/PostProcessingPlugin/scripts/TimeLapse.py
+++ b/plugins/PostProcessingPlugin/scripts/TimeLapse.py
@@ -66,6 +66,22 @@ class TimeLapse(Script):
"type": "float",
"default_value": 9000,
"enabled": "park_print_head"
+ },
+ "retract":
+ {
+ "label": "Retraction Distance",
+ "description": "Filament retraction distance for camera trigger.",
+ "unit": "mm",
+ "type": "int",
+ "default_value": 0
+ },
+ "zhop":
+ {
+ "label": "Z-Hop Height When Parking",
+ "description": "Z-hop length before parking",
+ "unit": "mm",
+ "type": "float",
+ "default_value": 0
}
}
}"""
@@ -77,9 +93,12 @@ class TimeLapse(Script):
y_park = self.getSettingValueByKey("head_park_y")
trigger_command = self.getSettingValueByKey("trigger_command")
pause_length = self.getSettingValueByKey("pause_length")
+ retract = int(self.getSettingValueByKey("retract"))
+ zhop = self.getSettingValueByKey("zhop")
gcode_to_append = ";TimeLapse Begin\n"
last_x = 0
last_y = 0
+ last_z = 0
if park_print_head:
gcode_to_append += self.putValue(G=1, F=feed_rate,
@@ -90,16 +109,35 @@ class TimeLapse(Script):
for idx, layer in enumerate(data):
for line in layer.split("\n"):
- if self.getValue(line, "G") in {0, 1}: # Track X,Y location.
+ if self.getValue(line, "G") in {0, 1}: # Track X,Y,Z location.
last_x = self.getValue(line, "X", last_x)
last_y = self.getValue(line, "Y", last_y)
+ last_z = self.getValue(line, "Z", last_z)
# Check that a layer is being printed
lines = layer.split("\n")
for line in lines:
if ";LAYER:" in line:
+ if retract != 0: # Retract the filament so no stringing happens
+ layer += self.putValue(M=83) + " ;Extrude Relative\n"
+ layer += self.putValue(G=1, E=-retract, F=3000) + " ;Retract filament\n"
+ layer += self.putValue(M=82) + " ;Extrude Absolute\n"
+ layer += self.putValue(M=400) + " ;Wait for moves to finish\n" # Wait to fully retract before hopping
+
+ if zhop != 0:
+ layer += self.putValue(G=1, Z=last_z+zhop, F=3000) + " ;Z-Hop\n"
+
layer += gcode_to_append
- layer += "G0 X%s Y%s\n" % (last_x, last_y)
+ if zhop != 0:
+ layer += self.putValue(G=0, X=last_x, Y=last_y, Z=last_z) + "; Restore position \n"
+ else:
+ layer += self.putValue(G=0, X=last_x, Y=last_y) + "; Restore position \n"
+
+ if retract != 0:
+ layer += self.putValue(M=400) + " ;Wait for moves to finish\n"
+ layer += self.putValue(M=83) + " ;Extrude Relative\n"
+ layer += self.putValue(G=1, E=retract, F=3000) + " ;Retract filament\n"
+ layer += self.putValue(M=82) + " ;Extrude Absolute\n"
data[idx] = layer
break
diff --git a/plugins/PrepareStage/PrepareMenu.qml b/plugins/PrepareStage/PrepareMenu.qml
index 87d7c5f35c..cf7665bda6 100644
--- a/plugins/PrepareStage/PrepareMenu.qml
+++ b/plugins/PrepareStage/PrepareMenu.qml
@@ -1,19 +1,20 @@
-// Copyright (c) 2018 Ultimaker B.V.
+// Copyright (c) 2021 Ultimaker B.V.
// Cura is released under the terms of the LGPLv3 or higher.
-import QtQuick 2.7
+import QtQuick 2.9
import QtQuick.Layouts 1.1
import QtQuick.Controls 2.3
import UM 1.3 as UM
import Cura 1.1 as Cura
-import QtGraphicalEffects 1.0 // For the dropshadow
Item
{
id: prepareMenu
+ property var fileProviderModel: CuraApplication.getFileProviderModel()
+
UM.I18nCatalog
{
id: catalog
@@ -24,60 +25,44 @@ Item
{
left: parent.left
right: parent.right
- leftMargin: UM.Theme.getSize("wide_margin").width
- rightMargin: UM.Theme.getSize("wide_margin").width
+ leftMargin: UM.Theme.getSize("wide_margin").width * 2
+ rightMargin: UM.Theme.getSize("wide_margin").width * 2
}
// Item to ensure that all of the buttons are nicely centered.
Item
{
- anchors.horizontalCenter: parent.horizontalCenter
- width: parent.width - 2 * UM.Theme.getSize("wide_margin").width
- height: parent.height
+ anchors.fill: parent
RowLayout
{
id: itemRow
- anchors.left: openFileButton.right
+ anchors.left: parent.left
anchors.right: parent.right
- anchors.leftMargin: UM.Theme.getSize("default_margin").width
+ anchors.leftMargin: UM.Theme.getSize("default_margin").width + openFileButton.width + openFileMenu.width
+ property int machineSelectorWidth: Math.round((width - printSetupSelectorItem.width) / 3)
height: parent.height
- spacing: 0
+ // This is a trick to make sure that the borders of the two adjacent buttons' borders overlap. Otherwise
+ // there will be double border (one from each button)
+ spacing: -UM.Theme.getSize("default_lining").width
Cura.MachineSelector
{
id: machineSelection
headerCornerSide: Cura.RoundedRectangle.Direction.Left
- Layout.minimumWidth: UM.Theme.getSize("machine_selector_widget").width
- Layout.maximumWidth: UM.Theme.getSize("machine_selector_widget").width
+ Layout.preferredWidth: parent.machineSelectorWidth
Layout.fillWidth: true
Layout.fillHeight: true
}
- // Separator line
- Rectangle
- {
- height: parent.height
- width: UM.Theme.getSize("default_lining").width
- color: UM.Theme.getColor("lining")
- }
-
Cura.ConfigurationMenu
{
id: printerSetup
Layout.fillHeight: true
Layout.fillWidth: true
- Layout.preferredWidth: itemRow.width - machineSelection.width - printSetupSelectorItem.width - 2 * UM.Theme.getSize("default_lining").width
- }
-
- // Separator line
- Rectangle
- {
- height: parent.height
- width: UM.Theme.getSize("default_lining").width
- color: UM.Theme.getColor("lining")
+ Layout.preferredWidth: parent.machineSelectorWidth * 2
}
Item
@@ -91,22 +76,116 @@ Item
}
}
+ //Pop-up shown when there are multiple items to select from.
+ Cura.ExpandablePopup
+ {
+ id: openFileMenu
+ visible: prepareMenu.fileProviderModel.count > 1
+
+ contentAlignment: Cura.ExpandablePopup.ContentAlignment.AlignLeft
+ headerCornerSide: Cura.RoundedRectangle.Direction.All
+ headerPadding: Math.round((parent.height - UM.Theme.getSize("button_icon").height) / 2)
+ contentPadding: UM.Theme.getSize("default_lining").width
+ enabled: visible
+
+ height: parent.height
+ width: visible ? (headerPadding * 3 + UM.Theme.getSize("button_icon").height + iconSize) : 0
+
+ headerItem: UM.RecolorImage
+ {
+ id: menuIcon
+ source: UM.Theme.getIcon("Folder", "medium")
+ color: UM.Theme.getColor("icon")
+
+ sourceSize.height: height
+ }
+
+ contentItem: Item
+ {
+ id: popup
+
+ Column
+ {
+ id: openProviderColumn
+
+ //The column doesn't automatically listen to its children rect if the children change internally, so we need to explicitly update the size.
+ onChildrenRectChanged:
+ {
+ popup.height = childrenRect.height
+ popup.width = childrenRect.width
+ }
+ onPositioningComplete:
+ {
+ popup.height = childrenRect.height
+ popup.width = childrenRect.width
+ }
+
+ Repeater
+ {
+ model: prepareMenu.fileProviderModel
+ delegate: Button
+ {
+ leftPadding: UM.Theme.getSize("default_margin").width
+ rightPadding: UM.Theme.getSize("default_margin").width
+ width: contentItem.width + leftPadding + rightPadding
+ height: UM.Theme.getSize("action_button").height
+ hoverEnabled: true
+
+ contentItem: Label
+ {
+ text: model.displayText
+ color: UM.Theme.getColor("text")
+ font: UM.Theme.getFont("medium")
+ renderType: Text.NativeRendering
+ verticalAlignment: Text.AlignVCenter
+
+ width: contentWidth
+ height: parent.height
+ }
+
+ onClicked:
+ {
+ if(model.index == 0) //The 0th element is the "From Disk" option, which should activate the open local file dialog.
+ {
+ Cura.Actions.open.trigger();
+ }
+ else
+ {
+ prepareMenu.fileProviderModel.trigger(model.name);
+ }
+ }
+
+ background: Rectangle
+ {
+ color: parent.hovered ? UM.Theme.getColor("action_button_hovered") : "transparent"
+ radius: UM.Theme.getSize("action_button_radius").width
+ width: popup.width
+ }
+ }
+ }
+ }
+ }
+ }
+
+ //If there is just a single item, show a button instead that directly chooses the one option.
Button
{
id: openFileButton
- height: UM.Theme.getSize("stage_menu").height
- width: UM.Theme.getSize("stage_menu").height
+ visible: prepareMenu.fileProviderModel.count <= 1
+
+ height: parent.height
+ width: visible ? height : 0 //Square button (and don't take up space if invisible).
onClicked: Cura.Actions.open.trigger()
+ enabled: visible && prepareMenu.fileProviderModel.count > 0
hoverEnabled: true
contentItem: Item
{
- anchors.fill: parent
UM.RecolorImage
{
id: buttonIcon
+ source: UM.Theme.getIcon("Folder", "medium")
anchors.centerIn: parent
- source: UM.Theme.getIcon("load")
width: UM.Theme.getSize("button_icon").width
height: UM.Theme.getSize("button_icon").height
color: UM.Theme.getColor("icon")
@@ -118,26 +197,14 @@ Item
background: Rectangle
{
id: background
- height: UM.Theme.getSize("stage_menu").height
- width: UM.Theme.getSize("stage_menu").height
+ height: parent.height
+ width: parent.width
+ border.color: UM.Theme.getColor("lining")
+ border.width: UM.Theme.getSize("default_lining").width
radius: UM.Theme.getSize("default_radius").width
color: openFileButton.hovered ? UM.Theme.getColor("action_button_hovered") : UM.Theme.getColor("action_button")
}
-
- DropShadow
- {
- id: shadow
- // Don't blur the shadow
- radius: 0
- anchors.fill: background
- source: background
- verticalOffset: 2
- visible: true
- color: UM.Theme.getColor("action_button_shadow")
- // Should always be drawn behind the background.
- z: background.z - 1
- }
}
}
}
diff --git a/plugins/PrepareStage/plugin.json b/plugins/PrepareStage/plugin.json
index 3a80523682..603ed49359 100644
--- a/plugins/PrepareStage/plugin.json
+++ b/plugins/PrepareStage/plugin.json
@@ -3,6 +3,6 @@
"author": "Ultimaker B.V.",
"version": "1.0.1",
"description": "Provides a prepare stage in Cura.",
- "api": "7.4.0",
+ "api": 7,
"i18n-catalog": "cura"
}
\ No newline at end of file
diff --git a/plugins/PreviewStage/PreviewMenu.qml b/plugins/PreviewStage/PreviewMenu.qml
index ff1ccff75f..9e039896c6 100644
--- a/plugins/PreviewStage/PreviewMenu.qml
+++ b/plugins/PreviewStage/PreviewMenu.qml
@@ -24,54 +24,36 @@ Item
{
left: parent.left
right: parent.right
- leftMargin: UM.Theme.getSize("wide_margin").width
- rightMargin: UM.Theme.getSize("wide_margin").width
+ leftMargin: UM.Theme.getSize("wide_margin").width * 2
+ rightMargin: UM.Theme.getSize("wide_margin").width * 2
}
Row
{
id: stageMenuRow
- anchors.horizontalCenter: parent.horizontalCenter
- width: parent.width - 2 * UM.Theme.getSize("wide_margin").width
- height: parent.height
+ anchors.fill: parent
+ // This is a trick to make sure that the borders of the two adjacent buttons' borders overlap. Otherwise
+ // there will be double border (one from each button)
+ spacing: -UM.Theme.getSize("default_lining").width
Cura.ViewsSelector
{
id: viewsSelector
height: parent.height
- width: UM.Theme.getSize("views_selector").width
+ width: Math.max(Math.round((parent.width - printSetupSelectorItem.width) / 3), UM.Theme.getSize("views_selector").width)
headerCornerSide: Cura.RoundedRectangle.Direction.Left
}
- // Separator line
- Rectangle
- {
- height: parent.height
- // If there is no viewPanel, we only need a single spacer, so hide this one.
- visible: viewPanel.source != ""
- width: visible ? UM.Theme.getSize("default_lining").width : 0
-
- color: UM.Theme.getColor("lining")
- }
-
// This component will grow freely up to complete the width of the row.
Loader
{
id: viewPanel
height: parent.height
- width: source != "" ? (previewMenu.width - viewsSelector.width - printSetupSelectorItem.width - 2 * (UM.Theme.getSize("wide_margin").width + UM.Theme.getSize("default_lining").width)) : 0
+ width: source != "" ? (parent.width - viewsSelector.width - printSetupSelectorItem.width) : 0
source: UM.Controller.activeView != null && UM.Controller.activeView.stageMenuComponent != null ? UM.Controller.activeView.stageMenuComponent : ""
}
- // Separator line
- Rectangle
- {
- height: parent.height
- width: UM.Theme.getSize("default_lining").width
- color: UM.Theme.getColor("lining")
- }
-
Item
{
id: printSetupSelectorItem
diff --git a/plugins/PreviewStage/plugin.json b/plugins/PreviewStage/plugin.json
index d2badeeb7e..f0341d20ea 100644
--- a/plugins/PreviewStage/plugin.json
+++ b/plugins/PreviewStage/plugin.json
@@ -3,6 +3,6 @@
"author": "Ultimaker B.V.",
"version": "1.0.1",
"description": "Provides a preview stage in Cura.",
- "api": "7.4.0",
+ "api": 7,
"i18n-catalog": "cura"
}
\ No newline at end of file
diff --git a/plugins/README_plugins.txt b/plugins/README_plugins.txt
new file mode 100644
index 0000000000..47a639818c
--- /dev/null
+++ b/plugins/README_plugins.txt
@@ -0,0 +1,11 @@
+This is the folder for _bundled_ plugins. If you place any other plugins here,
+they will not be seen or upgraded by any next version of Cura.
+
+If you want your (unbundled) plugins to work after an upgrade,
+please don't put them here, but install them either;
+ - via the Marketplace (recommended if available for that plugin),
+ - by dragging a `.curapackage` file onto Cura,
+ - or place it in the plugin folder in the configuration folder* for Cura.
+
+*) The plugin sub-folder of the configuration folder can be found by:
+ Open up Help -> Show Configuration Folder -> Navigate to the plugins folder.
diff --git a/plugins/RemovableDriveOutputDevice/plugin.json b/plugins/RemovableDriveOutputDevice/plugin.json
index d862257e69..b1dae2d182 100644
--- a/plugins/RemovableDriveOutputDevice/plugin.json
+++ b/plugins/RemovableDriveOutputDevice/plugin.json
@@ -3,6 +3,6 @@
"author": "Ultimaker B.V.",
"description": "Provides removable drive hotplugging and writing support.",
"version": "1.0.1",
- "api": "7.4.0",
+ "api": 7,
"i18n-catalog": "cura"
}
diff --git a/plugins/SentryLogger/plugin.json b/plugins/SentryLogger/plugin.json
index 3ba76d166e..e765e45e0f 100644
--- a/plugins/SentryLogger/plugin.json
+++ b/plugins/SentryLogger/plugin.json
@@ -3,6 +3,6 @@
"author": "Ultimaker B.V.",
"version": "1.0.0",
"description": "Logs certain events so that they can be used by the crash reporter",
- "api": "7.4.0",
+ "api": 7,
"i18n-catalog": "cura"
}
diff --git a/plugins/SimulationView/SimulationPass.py b/plugins/SimulationView/SimulationPass.py
index 93485eb3a3..2754fb5d94 100644
--- a/plugins/SimulationView/SimulationPass.py
+++ b/plugins/SimulationView/SimulationPass.py
@@ -15,9 +15,10 @@ from UM.View.RenderBatch import RenderBatch
from UM.View.GL.OpenGL import OpenGL
from cura.Settings.ExtruderManager import ExtruderManager
-
+from cura.LayerPolygon import LayerPolygon
import os.path
+import numpy
## RenderPass used to display g-code paths.
from .NozzleNode import NozzleNode
@@ -35,7 +36,7 @@ class SimulationPass(RenderPass):
self._disabled_shader = None
self._old_current_layer = 0
self._old_current_path = 0
- self._switching_layers = True # It tracks when the user is moving the layers' slider
+ self._switching_layers = True # Tracking whether the user is moving across layers (True) or across paths (False). If false, lower layers render as shadowy.
self._gl = OpenGL.getInstance().getBindingsObject()
self._scene = Application.getInstance().getController().getScene()
self._extruder_manager = ExtruderManager.getInstance()
@@ -43,6 +44,8 @@ class SimulationPass(RenderPass):
self._layer_view = None
self._compatibility_mode = None
+ self._scene.sceneChanged.connect(self._onSceneChanged)
+
def setSimulationView(self, layerview):
self._layer_view = layerview
self._compatibility_mode = layerview.getCompatibilityMode()
@@ -60,29 +63,42 @@ class SimulationPass(RenderPass):
self._current_shader = self._layer_shader
# Use extruder 0 if the extruder manager reports extruder index -1 (for single extrusion printers)
self._layer_shader.setUniformValue("u_active_extruder", float(max(0, self._extruder_manager.activeExtruderIndex)))
+ if not self._compatibility_mode:
+ self._layer_shader.setUniformValue("u_starts_color", Color(*Application.getInstance().getTheme().getColor("layerview_starts").getRgb()))
+
if self._layer_view:
self._layer_shader.setUniformValue("u_max_feedrate", self._layer_view.getMaxFeedrate())
self._layer_shader.setUniformValue("u_min_feedrate", self._layer_view.getMinFeedrate())
self._layer_shader.setUniformValue("u_max_thickness", self._layer_view.getMaxThickness())
self._layer_shader.setUniformValue("u_min_thickness", self._layer_view.getMinThickness())
+ self._layer_shader.setUniformValue("u_max_line_width", self._layer_view.getMaxLineWidth())
+ self._layer_shader.setUniformValue("u_min_line_width", self._layer_view.getMinLineWidth())
+ self._layer_shader.setUniformValue("u_max_flow_rate", self._layer_view.getMaxFlowRate())
+ self._layer_shader.setUniformValue("u_min_flow_rate", self._layer_view.getMinFlowRate())
self._layer_shader.setUniformValue("u_layer_view_type", self._layer_view.getSimulationViewType())
self._layer_shader.setUniformValue("u_extruder_opacity", self._layer_view.getExtruderOpacities())
self._layer_shader.setUniformValue("u_show_travel_moves", self._layer_view.getShowTravelMoves())
self._layer_shader.setUniformValue("u_show_helpers", self._layer_view.getShowHelpers())
self._layer_shader.setUniformValue("u_show_skin", self._layer_view.getShowSkin())
self._layer_shader.setUniformValue("u_show_infill", self._layer_view.getShowInfill())
+ self._layer_shader.setUniformValue("u_show_starts", self._layer_view.getShowStarts())
else:
#defaults
self._layer_shader.setUniformValue("u_max_feedrate", 1)
self._layer_shader.setUniformValue("u_min_feedrate", 0)
self._layer_shader.setUniformValue("u_max_thickness", 1)
self._layer_shader.setUniformValue("u_min_thickness", 0)
+ self._layer_shader.setUniformValue("u_max_flow_rate", 1)
+ self._layer_shader.setUniformValue("u_min_flow_rate", 0)
+ self._layer_shader.setUniformValue("u_max_line_width", 1)
+ self._layer_shader.setUniformValue("u_min_line_width", 0)
self._layer_shader.setUniformValue("u_layer_view_type", 1)
self._layer_shader.setUniformValue("u_extruder_opacity", [[1, 1, 1, 1], [1, 1, 1, 1], [1, 1, 1, 1], [1, 1, 1, 1]])
self._layer_shader.setUniformValue("u_show_travel_moves", 0)
self._layer_shader.setUniformValue("u_show_helpers", 1)
self._layer_shader.setUniformValue("u_show_skin", 1)
self._layer_shader.setUniformValue("u_show_infill", 1)
+ self._layer_shader.setUniformValue("u_show_starts", 1)
if not self._tool_handle_shader:
self._tool_handle_shader = OpenGL.getInstance().createShaderProgram(Resources.getPath(Resources.Shaders, "toolhandle.shader"))
@@ -161,6 +177,13 @@ class SimulationPass(RenderPass):
self._current_shader = self._layer_shader
self._switching_layers = True
+ # The first line does not have a previous line: add a MoveCombingType in front for start detection
+ # this way the first start of the layer can also be drawn
+ prev_line_types = numpy.concatenate([numpy.asarray([LayerPolygon.MoveCombingType], dtype = numpy.float32), layer_data._attributes["line_types"]["value"]])
+ # Remove the last element
+ prev_line_types = prev_line_types[0:layer_data._attributes["line_types"]["value"].size]
+ layer_data._attributes["prev_line_types"] = {'opengl_type': 'float', 'value': prev_line_types, 'opengl_name': 'a_prev_line_type'}
+
layers_batch = RenderBatch(self._current_shader, type = RenderBatch.RenderType.Solid, mode = RenderBatch.RenderMode.Lines, range = (start, end), backface_cull = True)
layers_batch.addItem(node.getWorldTransformation(), layer_data)
layers_batch.render(self._scene.getActiveCamera())
@@ -202,3 +225,9 @@ class SimulationPass(RenderPass):
tool_handle_batch.render(self._scene.getActiveCamera())
self.release()
+
+ def _onSceneChanged(self, changed_object: SceneNode):
+ if changed_object.callDecoration("getLayerData"): # Any layer data has changed.
+ self._switching_layers = True
+ self._old_current_layer = 0
+ self._old_current_path = 0
diff --git a/plugins/SimulationView/SimulationView.py b/plugins/SimulationView/SimulationView.py
index 349426d463..57209f2678 100644
--- a/plugins/SimulationView/SimulationView.py
+++ b/plugins/SimulationView/SimulationView.py
@@ -1,4 +1,4 @@
-# Copyright (c) 2020 Ultimaker B.V.
+# Copyright (c) 2021 Ultimaker B.V.
# Cura is released under the terms of the LGPLv3 or higher.
import sys
@@ -30,6 +30,7 @@ from UM.View.GL.ShaderProgram import ShaderProgram
from UM.i18n import i18nCatalog
from cura.CuraView import CuraView
+from cura.LayerPolygon import LayerPolygon # To distinguish line types.
from cura.Scene.ConvexHullNode import ConvexHullNode
from cura.CuraApplication import CuraApplication
@@ -91,6 +92,10 @@ class SimulationView(CuraView):
self._min_feedrate = sys.float_info.max
self._max_thickness = sys.float_info.min
self._min_thickness = sys.float_info.max
+ self._max_line_width = sys.float_info.min
+ self._min_line_width = sys.float_info.max
+ self._min_flow_rate = sys.float_info.max
+ self._max_flow_rate = sys.float_info.min
self._global_container_stack = None # type: Optional[ContainerStack]
self._proxy = None
@@ -104,14 +109,16 @@ class SimulationView(CuraView):
Application.getInstance().getPreferences().addPreference("view/only_show_top_layers", False)
Application.getInstance().getPreferences().addPreference("view/force_layer_view_compatibility_mode", False)
- Application.getInstance().getPreferences().addPreference("layerview/layer_view_type", 0)
+ Application.getInstance().getPreferences().addPreference("layerview/layer_view_type", 1) # Default to "Line Type".
Application.getInstance().getPreferences().addPreference("layerview/extruder_opacities", "")
Application.getInstance().getPreferences().addPreference("layerview/show_travel_moves", False)
Application.getInstance().getPreferences().addPreference("layerview/show_helpers", True)
Application.getInstance().getPreferences().addPreference("layerview/show_skin", True)
Application.getInstance().getPreferences().addPreference("layerview/show_infill", True)
+ Application.getInstance().getPreferences().addPreference("layerview/show_starts", True)
+ self.visibleStructuresChanged.connect(self.calculateColorSchemeLimits)
self._updateWithPreferences()
self._solid_layers = int(Application.getInstance().getPreferences().getValue("view/top_layer_count"))
@@ -146,6 +153,7 @@ class SimulationView(CuraView):
self._show_helpers = True
self._show_skin = True
self._show_infill = True
+ self._show_starts = True
self.resetLayerData()
def getActivity(self) -> bool:
@@ -194,6 +202,7 @@ class SimulationView(CuraView):
if node.getMeshData() is None:
return
self.setActivity(False)
+ self.calculateColorSchemeLimits()
self.calculateMaxLayers()
self.calculateMaxPathsOnLayer(self._current_layer_num)
@@ -214,10 +223,6 @@ class SimulationView(CuraView):
def resetLayerData(self) -> None:
self._current_layer_mesh = None
self._current_layer_jumps = None
- self._max_feedrate = sys.float_info.min
- self._min_feedrate = sys.float_info.max
- self._max_thickness = sys.float_info.min
- self._min_thickness = sys.float_info.max
def beginRendering(self) -> None:
scene = self.getController().getScene()
@@ -242,58 +247,59 @@ class SimulationView(CuraView):
renderer.queueNode(node, transparent = True, shader = self._ghost_shader)
def setLayer(self, value: int) -> None:
+ """
+ Set the upper end of the range of visible layers.
+
+ If setting it below the lower end of the range, the lower end is lowered so that 1 layer stays visible.
+ :param value: The new layer number to show, 0-indexed.
+ """
if self._current_layer_num != value:
- self._current_layer_num = value
- if self._current_layer_num < 0:
- self._current_layer_num = 0
- if self._current_layer_num > self._max_layers:
- self._current_layer_num = self._max_layers
- if self._current_layer_num < self._minimum_layer_num:
- self._minimum_layer_num = self._current_layer_num
+ self._current_layer_num = min(max(value, 0), self._max_layers)
+ self._minimum_layer_num = min(self._current_layer_num, self._minimum_layer_num)
self._startUpdateTopLayers()
-
self.currentLayerNumChanged.emit()
def setMinimumLayer(self, value: int) -> None:
+ """
+ Set the lower end of the range of visible layers.
+
+ If setting it above the upper end of the range, the upper end is increased so that 1 layer stays visible.
+ :param value: The new lower end of the range of visible layers, 0-indexed.
+ """
if self._minimum_layer_num != value:
- self._minimum_layer_num = value
- if self._minimum_layer_num < 0:
- self._minimum_layer_num = 0
- if self._minimum_layer_num > self._max_layers:
- self._minimum_layer_num = self._max_layers
- if self._minimum_layer_num > self._current_layer_num:
- self._current_layer_num = self._minimum_layer_num
+ self._minimum_layer_num = min(max(value, 0), self._max_layers)
+ self._current_layer_num = max(self._current_layer_num, self._minimum_layer_num)
self._startUpdateTopLayers()
-
self.currentLayerNumChanged.emit()
def setPath(self, value: int) -> None:
+ """
+ Set the upper end of the range of visible paths on the current layer.
+
+ If setting it below the lower end of the range, the lower end is lowered so that 1 path stays visible.
+ :param value: The new path index to show, 0-indexed.
+ """
if self._current_path_num != value:
- self._current_path_num = value
- if self._current_path_num < 0:
- self._current_path_num = 0
- if self._current_path_num > self._max_paths:
- self._current_path_num = self._max_paths
- if self._current_path_num < self._minimum_path_num:
- self._minimum_path_num = self._current_path_num
+ self._current_path_num = min(max(value, 0), self._max_paths)
+ self._minimum_path_num = min(self._minimum_path_num, self._current_path_num)
self._startUpdateTopLayers()
self.currentPathNumChanged.emit()
def setMinimumPath(self, value: int) -> None:
+ """
+ Set the lower end of the range of visible paths on the current layer.
+
+ If setting it above the upper end of the range, the upper end is increased so that 1 path stays visible.
+ :param value: The new lower end of the range of visible paths, 0-indexed.
+ """
if self._minimum_path_num != value:
- self._minimum_path_num = value
- if self._minimum_path_num < 0:
- self._minimum_path_num = 0
- if self._minimum_path_num > self._max_layers:
- self._minimum_path_num = self._max_layers
- if self._minimum_path_num > self._current_path_num:
- self._current_path_num = self._minimum_path_num
+ self._minimum_path_num = min(max(value, 0), self._max_paths)
+ self._current_path_num = max(self._current_path_num, self._minimum_path_num)
self._startUpdateTopLayers()
-
self.currentPathNumChanged.emit()
def setSimulationViewType(self, layer_view_type: int) -> None:
@@ -327,34 +333,56 @@ class SimulationView(CuraView):
# If more than 16 extruders are called for, this should be converted to a sampler1d.
return Matrix(self._extruder_opacity)
- def setShowTravelMoves(self, show):
+ def setShowTravelMoves(self, show: bool) -> None:
+ if show == self._show_travel_moves:
+ return
self._show_travel_moves = show
self.currentLayerNumChanged.emit()
+ self.visibleStructuresChanged.emit()
- def getShowTravelMoves(self):
+ def getShowTravelMoves(self) -> bool:
return self._show_travel_moves
def setShowHelpers(self, show: bool) -> None:
+ if show == self._show_helpers:
+ return
self._show_helpers = show
self.currentLayerNumChanged.emit()
+ self.visibleStructuresChanged.emit()
def getShowHelpers(self) -> bool:
return self._show_helpers
def setShowSkin(self, show: bool) -> None:
+ if show == self._show_skin:
+ return
self._show_skin = show
self.currentLayerNumChanged.emit()
+ self.visibleStructuresChanged.emit()
def getShowSkin(self) -> bool:
return self._show_skin
def setShowInfill(self, show: bool) -> None:
+ if show == self._show_infill:
+ return
self._show_infill = show
self.currentLayerNumChanged.emit()
+ self.visibleStructuresChanged.emit()
def getShowInfill(self) -> bool:
return self._show_infill
+ def setShowStarts(self, show: bool) -> None:
+ if show == self._show_starts:
+ return
+ self._show_starts = show
+ self.currentLayerNumChanged.emit()
+ self.visibleStructuresChanged.emit()
+
+ def getShowStarts(self) -> bool:
+ return self._show_starts
+
def getCompatibilityMode(self) -> bool:
return self._compatibility_mode
@@ -377,12 +405,31 @@ class SimulationView(CuraView):
def getMaxThickness(self) -> float:
return self._max_thickness
+ def getMaxLineWidth(self) -> float:
+ return self._max_line_width
+
+ def getMinLineWidth(self) -> float:
+ if abs(self._min_line_width - sys.float_info.max) < 10: # Some lenience due to floating point rounding.
+ return 0.0 # If it's still max-float, there are no measurements. Use 0 then.
+ return self._min_line_width
+
+ def getMaxFlowRate(self) -> float:
+ return self._max_flow_rate
+
+ def getMinFlowRate(self) -> float:
+ if abs(self._min_flow_rate - sys.float_info.max) < 10: # Some lenience due to floating point rounding.
+ return 0.0 # If it's still max-float, there are no measurements. Use 0 then.
+ return self._min_flow_rate
+
def calculateMaxLayers(self) -> None:
+ """
+ Calculates number of layers, triggers signals if the number of layers changed and makes sure the top layers are
+ recalculated for legacy layer view.
+ """
scene = self.getController().getScene()
self._old_max_layers = self._max_layers
new_max_layers = -1
- """Recalculate num max layers"""
for node in DepthFirstIterator(scene.getRoot()): # type: ignore
layer_data = node.callDecoration("getLayerData")
if not layer_data:
@@ -397,17 +444,6 @@ class SimulationView(CuraView):
if len(layer_data.getLayer(layer_id).polygons) < 1:
continue
- # Store the max and min feedrates and thicknesses for display purposes
- for p in layer_data.getLayer(layer_id).polygons:
- self._max_feedrate = max(float(p.lineFeedrates.max()), self._max_feedrate)
- self._min_feedrate = min(float(p.lineFeedrates.min()), self._min_feedrate)
- self._max_thickness = max(float(p.lineThicknesses.max()), self._max_thickness)
- try:
- self._min_thickness = min(float(p.lineThicknesses[numpy.nonzero(p.lineThicknesses)].min()), self._min_thickness)
- except ValueError:
- # Sometimes, when importing a GCode the line thicknesses are zero and so the minimum (avoiding
- # the zero) can't be calculated
- Logger.log("i", "Min thickness can't be calculated because all the values are zero")
if max_layer_number < layer_id:
max_layer_number = layer_id
if min_layer_number > layer_id:
@@ -431,6 +467,87 @@ class SimulationView(CuraView):
self.maxLayersChanged.emit()
self._startUpdateTopLayers()
+ def calculateColorSchemeLimits(self) -> None:
+ """
+ Calculates the limits of the colour schemes, depending on the layer view data that is visible to the user.
+ """
+ # Before we start, save the old values so that we can tell if any of the spectrums need to change.
+ old_min_feedrate = self._min_feedrate
+ old_max_feedrate = self._max_feedrate
+ old_min_linewidth = self._min_line_width
+ old_max_linewidth = self._max_line_width
+ old_min_thickness = self._min_thickness
+ old_max_thickness = self._max_thickness
+ old_min_flow_rate = self._min_flow_rate
+ old_max_flow_rate = self._max_flow_rate
+
+ self._min_feedrate = sys.float_info.max
+ self._max_feedrate = sys.float_info.min
+ self._min_line_width = sys.float_info.max
+ self._max_line_width = sys.float_info.min
+ self._min_thickness = sys.float_info.max
+ self._max_thickness = sys.float_info.min
+ self._min_flow_rate = sys.float_info.max
+ self._max_flow_rate = sys.float_info.min
+
+ # The colour scheme is only influenced by the visible lines, so filter the lines by if they should be visible.
+ visible_line_types = []
+ if self.getShowSkin(): # Actually "shell".
+ visible_line_types.append(LayerPolygon.SkinType)
+ visible_line_types.append(LayerPolygon.Inset0Type)
+ visible_line_types.append(LayerPolygon.InsetXType)
+ if self.getShowInfill():
+ visible_line_types.append(LayerPolygon.InfillType)
+ if self.getShowHelpers():
+ visible_line_types.append(LayerPolygon.PrimeTowerType)
+ visible_line_types.append(LayerPolygon.SkirtType)
+ visible_line_types.append(LayerPolygon.SupportType)
+ visible_line_types.append(LayerPolygon.SupportInfillType)
+ visible_line_types.append(LayerPolygon.SupportInterfaceType)
+ visible_line_types_with_extrusion = visible_line_types.copy() # Copy before travel moves are added
+ if self.getShowTravelMoves():
+ visible_line_types.append(LayerPolygon.MoveCombingType)
+ visible_line_types.append(LayerPolygon.MoveRetractionType)
+
+ for node in DepthFirstIterator(self.getController().getScene().getRoot()):
+ layer_data = node.callDecoration("getLayerData")
+ if not layer_data:
+ continue
+
+ for layer_index in layer_data.getLayers():
+ for polyline in layer_data.getLayer(layer_index).polygons:
+ is_visible = numpy.isin(polyline.types, visible_line_types)
+ visible_indices = numpy.where(is_visible)[0]
+ visible_indicies_with_extrusion = numpy.where(numpy.isin(polyline.types, visible_line_types_with_extrusion))[0]
+ if visible_indices.size == 0: # No items to take maximum or minimum of.
+ continue
+ visible_feedrates = numpy.take(polyline.lineFeedrates, visible_indices)
+ visible_feedrates_with_extrusion = numpy.take(polyline.lineFeedrates, visible_indicies_with_extrusion)
+ visible_linewidths = numpy.take(polyline.lineWidths, visible_indices)
+ visible_linewidths_with_extrusion = numpy.take(polyline.lineWidths, visible_indicies_with_extrusion)
+ visible_thicknesses = numpy.take(polyline.lineThicknesses, visible_indices)
+ visible_thicknesses_with_extrusion = numpy.take(polyline.lineThicknesses, visible_indicies_with_extrusion)
+ self._max_feedrate = max(float(visible_feedrates.max()), self._max_feedrate)
+ if visible_feedrates_with_extrusion.size != 0:
+ flow_rates = visible_feedrates_with_extrusion * visible_linewidths_with_extrusion * visible_thicknesses_with_extrusion
+ self._min_flow_rate = min(float(flow_rates.min()), self._min_flow_rate)
+ self._max_flow_rate = max(float(flow_rates.max()), self._max_flow_rate)
+ self._min_feedrate = min(float(visible_feedrates.min()), self._min_feedrate)
+ self._max_line_width = max(float(visible_linewidths.max()), self._max_line_width)
+ self._min_line_width = min(float(visible_linewidths.min()), self._min_line_width)
+ self._max_thickness = max(float(visible_thicknesses.max()), self._max_thickness)
+ try:
+ self._min_thickness = min(float(visible_thicknesses[numpy.nonzero(visible_thicknesses)].min()), self._min_thickness)
+ except ValueError:
+ # Sometimes, when importing a GCode the line thicknesses are zero and so the minimum (avoiding the zero) can't be calculated.
+ Logger.log("w", "Min thickness can't be calculated because all the values are zero")
+
+ if old_min_feedrate != self._min_feedrate or old_max_feedrate != self._max_feedrate \
+ or old_min_linewidth != self._min_line_width or old_max_linewidth != self._max_line_width \
+ or old_min_thickness != self._min_thickness or old_max_thickness != self._max_thickness \
+ or old_min_flow_rate != self._min_flow_rate or old_max_flow_rate != self._max_flow_rate:
+ self.colorSchemeLimitsChanged.emit()
+
def calculateMaxPathsOnLayer(self, layer_num: int) -> None:
# Update the currentPath
scene = self.getController().getScene()
@@ -457,6 +574,8 @@ class SimulationView(CuraView):
preferencesChanged = Signal()
busyChanged = Signal()
activityChanged = Signal()
+ visibleStructuresChanged = Signal()
+ colorSchemeLimitsChanged = Signal()
def getProxy(self, engine, script_engine):
"""Hackish way to ensure the proxy is already created
@@ -488,6 +607,7 @@ class SimulationView(CuraView):
Application.getInstance().getPreferences().preferenceChanged.connect(self._onPreferencesChanged)
self._controller.getScene().getRoot().childrenChanged.connect(self._onSceneChanged)
+ self.calculateColorSchemeLimits()
self.calculateMaxLayers()
self.calculateMaxPathsOnLayer(self._current_layer_num)
@@ -638,6 +758,7 @@ class SimulationView(CuraView):
self.setShowHelpers(bool(Application.getInstance().getPreferences().getValue("layerview/show_helpers")))
self.setShowSkin(bool(Application.getInstance().getPreferences().getValue("layerview/show_skin")))
self.setShowInfill(bool(Application.getInstance().getPreferences().getValue("layerview/show_infill")))
+ self.setShowStarts(bool(Application.getInstance().getPreferences().getValue("layerview/show_starts")))
self._startUpdateTopLayers()
self.preferencesChanged.emit()
@@ -653,6 +774,7 @@ class SimulationView(CuraView):
"layerview/show_helpers",
"layerview/show_skin",
"layerview/show_infill",
+ "layerview/show_starts",
}:
return
diff --git a/plugins/SimulationView/SimulationViewMainComponent.qml b/plugins/SimulationView/SimulationViewMainComponent.qml
index bfd8799673..9232516673 100644
--- a/plugins/SimulationView/SimulationViewMainComponent.qml
+++ b/plugins/SimulationView/SimulationViewMainComponent.qml
@@ -55,8 +55,8 @@ Item
Connections
{
target: UM.SimulationView
- onMaxPathsChanged: pathSlider.setHandleValue(UM.SimulationView.currentPath)
- onCurrentPathChanged:
+ function onMaxPathsChanged() { pathSlider.setHandleValue(UM.SimulationView.currentPath) }
+ function onCurrentPathChanged()
{
// Only pause the simulation when the layer was changed manually, not when the simulation is running
if (pathSlider.manuallyChanged)
@@ -78,7 +78,7 @@ Item
UM.SimpleButton
{
id: playButton
- iconSource: !isSimulationPlaying ? "./resources/simulation_resume.svg": "./resources/simulation_pause.svg"
+ iconSource: !isSimulationPlaying ? "./resources/Play.svg": "./resources/Pause.svg"
width: UM.Theme.getSize("small_button").width
height: UM.Theme.getSize("small_button").height
hoverColor: UM.Theme.getColor("slider_handle_active")
@@ -89,7 +89,7 @@ Item
Connections
{
target: UM.Preferences
- onPreferenceChanged:
+ function onPreferenceChanged(preference)
{
if (preference !== "view/only_show_top_layers" && preference !== "view/top_layer_count" && ! preference.match("layerview/"))
{
@@ -221,9 +221,9 @@ Item
Connections
{
target: UM.SimulationView
- onMaxLayersChanged: layerSlider.setUpperValue(UM.SimulationView.currentLayer)
- onMinimumLayerChanged: layerSlider.setLowerValue(UM.SimulationView.minimumLayer)
- onCurrentLayerChanged:
+ function onMaxLayersChanged() { layerSlider.setUpperValue(UM.SimulationView.currentLayer) }
+ function onMinimumLayerChanged() { layerSlider.setLowerValue(UM.SimulationView.minimumLayer) }
+ function onCurrentLayerChanged()
{
// Only pause the simulation when the layer was changed manually, not when the simulation is running
if (layerSlider.manuallyChanged)
@@ -241,4 +241,4 @@ Item
layerSlider.setUpperValue(UM.SimulationView.currentLayer)
}
}
-}
\ No newline at end of file
+}
diff --git a/plugins/SimulationView/SimulationViewMenuComponent.qml b/plugins/SimulationView/SimulationViewMenuComponent.qml
index ffb7eebc95..6dde44c8ae 100644
--- a/plugins/SimulationView/SimulationViewMenuComponent.qml
+++ b/plugins/SimulationView/SimulationViewMenuComponent.qml
@@ -22,7 +22,7 @@ Cura.ExpandableComponent
Connections
{
target: UM.Preferences
- onPreferenceChanged:
+ function onPreferenceChanged(preference)
{
if (preference !== "view/only_show_top_layers" && preference !== "view/top_layer_count" && ! preference.match("layerview/"))
{
@@ -82,12 +82,15 @@ Cura.ExpandableComponent
property bool show_helpers: UM.Preferences.getValue("layerview/show_helpers")
property bool show_skin: UM.Preferences.getValue("layerview/show_skin")
property bool show_infill: UM.Preferences.getValue("layerview/show_infill")
+ property bool show_starts: UM.Preferences.getValue("layerview/show_starts")
// If we are in compatibility mode, we only show the "line type"
property bool show_legend: UM.SimulationView.compatibilityMode ? true : UM.Preferences.getValue("layerview/layer_view_type") == 1
property bool show_gradient: UM.SimulationView.compatibilityMode ? false : UM.Preferences.getValue("layerview/layer_view_type") == 2 || UM.Preferences.getValue("layerview/layer_view_type") == 3
property bool show_feedrate_gradient: show_gradient && UM.Preferences.getValue("layerview/layer_view_type") == 2
property bool show_thickness_gradient: show_gradient && UM.Preferences.getValue("layerview/layer_view_type") == 3
+ property bool show_line_width_gradient: show_gradient && UM.Preferences.getValue("layerview/layer_view_type") == 4
+ property bool show_flow_rate_gradient: show_gradient && UM.Preferences.getValue("layerview/layer_view_type") == 5
property bool only_show_top_layers: UM.Preferences.getValue("view/only_show_top_layers")
property int top_layer_count: UM.Preferences.getValue("view/top_layer_count")
@@ -116,9 +119,17 @@ Cura.ExpandableComponent
type_id: 2
})
layerViewTypes.append({
- text: catalog.i18nc("@label:listbox", "Layer thickness"),
+ text: catalog.i18nc("@label:listbox", "Layer Thickness"),
type_id: 3 // these ids match the switching in the shader
})
+ layerViewTypes.append({
+ text: catalog.i18nc("@label:listbox", "Line Width"),
+ type_id: 4
+ })
+ layerViewTypes.append({
+ text: catalog.i18nc("@label:listbox", "Flow"),
+ type_id: 5
+ })
}
ComboBox
@@ -144,9 +155,13 @@ Cura.ExpandableComponent
{
// Update the visibility of the legends.
viewSettings.show_legend = UM.SimulationView.compatibilityMode || (type_id == 1);
- viewSettings.show_gradient = !UM.SimulationView.compatibilityMode && (type_id == 2 || type_id == 3);
+ viewSettings.show_gradient = !UM.SimulationView.compatibilityMode &&
+ (type_id == 2 || type_id == 3 || type_id == 4 || type_id == 5) ;
+
viewSettings.show_feedrate_gradient = viewSettings.show_gradient && (type_id == 2);
viewSettings.show_thickness_gradient = viewSettings.show_gradient && (type_id == 3);
+ viewSettings.show_line_width_gradient = viewSettings.show_gradient && (type_id == 4);
+ viewSettings.show_flow_rate_gradient = viewSettings.show_gradient && (type_id == 5);
}
}
@@ -188,16 +203,16 @@ Cura.ExpandableComponent
style: UM.Theme.styles.checkbox
-
- UM.RecolorImage
+ Rectangle
{
id: swatch
anchors.verticalCenter: parent.verticalCenter
anchors.right: extrudersModelCheckBox.right
width: UM.Theme.getSize("layerview_legend_size").width
height: UM.Theme.getSize("layerview_legend_size").height
- source: UM.Theme.getIcon("extruder_button")
color: model.color
+ border.width: UM.Theme.getSize("default_lining").width
+ border.color: UM.Theme.getColor("lining")
}
Label
@@ -250,6 +265,15 @@ Cura.ExpandableComponent
preference: "layerview/show_infill",
colorId: "layerview_infill"
});
+ if (! UM.SimulationView.compatibilityMode)
+ {
+ typesLegendModel.append({
+ label: catalog.i18nc("@label", "Starts"),
+ initialValue: viewSettings.show_starts,
+ preference: "layerview/show_starts",
+ colorId: "layerview_starts"
+ });
+ }
}
}
@@ -373,13 +397,24 @@ Cura.ExpandableComponent
// Feedrate selected
if (UM.Preferences.getValue("layerview/layer_view_type") == 2)
{
- return parseFloat(UM.SimulationView.getMinFeedrate()).toFixed(2)
+ return parseFloat(UM.SimulationView.minFeedrate).toFixed(2)
}
// Layer thickness selected
if (UM.Preferences.getValue("layerview/layer_view_type") == 3)
{
- return parseFloat(UM.SimulationView.getMinThickness()).toFixed(2)
+ return parseFloat(UM.SimulationView.minThickness).toFixed(2)
}
+ // Line width selected
+ if(UM.Preferences.getValue("layerview/layer_view_type") == 4)
+ {
+ return parseFloat(UM.SimulationView.minLineWidth).toFixed(2);
+ }
+ // Flow Rate selected
+ if(UM.Preferences.getValue("layerview/layer_view_type") == 5)
+ {
+ return parseFloat(UM.SimulationView.minFlowRate).toFixed(2);
+ }
+
}
return catalog.i18nc("@label","min")
}
@@ -405,6 +440,16 @@ Cura.ExpandableComponent
{
return "mm"
}
+ //Line width selected
+ if(UM.Preferences.getValue("layerview/layer_view_type") == 4)
+ {
+ return "mm"
+ }
+ // Flow Rate selected
+ if (UM.Preferences.getValue("layerview/layer_view_type") == 5)
+ {
+ return "mm³/s"
+ }
}
return ""
}
@@ -422,12 +467,22 @@ Cura.ExpandableComponent
// Feedrate selected
if (UM.Preferences.getValue("layerview/layer_view_type") == 2)
{
- return parseFloat(UM.SimulationView.getMaxFeedrate()).toFixed(2)
+ return parseFloat(UM.SimulationView.maxFeedrate).toFixed(2)
}
// Layer thickness selected
if (UM.Preferences.getValue("layerview/layer_view_type") == 3)
{
- return parseFloat(UM.SimulationView.getMaxThickness()).toFixed(2)
+ return parseFloat(UM.SimulationView.maxThickness).toFixed(2)
+ }
+ //Line width selected
+ if(UM.Preferences.getValue("layerview/layer_view_type") == 4)
+ {
+ return parseFloat(UM.SimulationView.maxLineWidth).toFixed(2);
+ }
+ // Flow rate selected
+ if(UM.Preferences.getValue("layerview/layer_view_type") == 5)
+ {
+ return parseFloat(UM.SimulationView.maxFlowRate).toFixed(2);
}
}
return catalog.i18nc("@label","max")
@@ -443,7 +498,10 @@ Cura.ExpandableComponent
Rectangle
{
id: feedrateGradient
- visible: viewSettings.show_feedrate_gradient
+ visible: (
+ viewSettings.show_feedrate_gradient ||
+ viewSettings.show_line_width_gradient
+ )
anchors.left: parent.left
anchors.right: parent.right
height: Math.round(UM.Theme.getSize("layerview_row").height * 1.5)
@@ -495,7 +553,9 @@ Cura.ExpandableComponent
Rectangle
{
id: thicknessGradient
- visible: viewSettings.show_thickness_gradient
+ visible: (
+ viewSettings.show_thickness_gradient
+ )
anchors.left: parent.left
anchors.right: parent.right
height: Math.round(UM.Theme.getSize("layerview_row").height * 1.5)
@@ -547,6 +607,85 @@ Cura.ExpandableComponent
}
}
}
+
+ // Gradient colors for flow (similar to jet colormap)
+ Rectangle
+ {
+ id: jetGradient
+ visible: (
+ viewSettings.show_flow_rate_gradient
+ )
+ anchors.left: parent.left
+ anchors.right: parent.right
+ height: Math.round(UM.Theme.getSize("layerview_row").height * 1.5)
+ border.width: UM.Theme.getSize("default_lining").width
+ border.color: UM.Theme.getColor("lining")
+
+ LinearGradient
+ {
+ anchors
+ {
+ left: parent.left
+ leftMargin: UM.Theme.getSize("default_lining").width
+ right: parent.right
+ rightMargin: UM.Theme.getSize("default_lining").width
+ top: parent.top
+ topMargin: UM.Theme.getSize("default_lining").width
+ bottom: parent.bottom
+ bottomMargin: UM.Theme.getSize("default_lining").width
+ }
+ start: Qt.point(0, 0)
+ end: Qt.point(parent.width, 0)
+ gradient: Gradient
+ {
+ GradientStop
+ {
+ position: 0.0
+ color: Qt.rgba(0, 0, 0.5, 1)
+ }
+ GradientStop
+ {
+ position: 0.125
+ color: Qt.rgba(0, 0.0, 1.0, 1)
+ }
+ GradientStop
+ {
+ position: 0.25
+ color: Qt.rgba(0, 0.5, 1.0, 1)
+ }
+ GradientStop
+ {
+ position: 0.375
+ color: Qt.rgba(0.0, 1.0, 1.0, 1)
+ }
+ GradientStop
+ {
+ position: 0.5
+ color: Qt.rgba(0.5, 1.0, 0.5, 1)
+ }
+ GradientStop
+ {
+ position: 0.625
+ color: Qt.rgba(1.0, 1.0, 0.0, 1)
+ }
+ GradientStop
+ {
+ position: 0.75
+ color: Qt.rgba(1.0, 0.5, 0, 1)
+ }
+ GradientStop
+ {
+ position: 0.875
+ color: Qt.rgba(1.0, 0.0, 0, 1)
+ }
+ GradientStop
+ {
+ position: 1.0
+ color: Qt.rgba(0.5, 0, 0, 1)
+ }
+ }
+ }
+ }
}
FontMetrics
diff --git a/plugins/SimulationView/SimulationViewProxy.py b/plugins/SimulationView/SimulationViewProxy.py
index ce2c336257..7d78e93ca5 100644
--- a/plugins/SimulationView/SimulationViewProxy.py
+++ b/plugins/SimulationView/SimulationViewProxy.py
@@ -1,4 +1,4 @@
-# Copyright (c) 2018 Ultimaker B.V.
+# Copyright (c) 2021 Ultimaker B.V.
# Cura is released under the terms of the LGPLv3 or higher.
from typing import TYPE_CHECKING
@@ -28,6 +28,7 @@ class SimulationViewProxy(QObject):
globalStackChanged = pyqtSignal()
preferencesChanged = pyqtSignal()
busyChanged = pyqtSignal()
+ colorSchemeLimitsChanged = pyqtSignal()
@pyqtProperty(bool, notify=activityChanged)
def layerActivity(self):
@@ -101,22 +102,38 @@ class SimulationViewProxy(QObject):
def getSimulationRunning(self):
return self._simulation_view.isSimulationRunning()
- @pyqtSlot(result=float)
- def getMinFeedrate(self):
+ @pyqtProperty(float, notify = colorSchemeLimitsChanged)
+ def minFeedrate(self):
return self._simulation_view.getMinFeedrate()
- @pyqtSlot(result=float)
- def getMaxFeedrate(self):
+ @pyqtProperty(float, notify = colorSchemeLimitsChanged)
+ def maxFeedrate(self):
return self._simulation_view.getMaxFeedrate()
- @pyqtSlot(result=float)
- def getMinThickness(self):
+ @pyqtProperty(float, notify = colorSchemeLimitsChanged)
+ def minThickness(self):
return self._simulation_view.getMinThickness()
- @pyqtSlot(result=float)
- def getMaxThickness(self):
+ @pyqtProperty(float, notify = colorSchemeLimitsChanged)
+ def maxThickness(self):
return self._simulation_view.getMaxThickness()
+ @pyqtProperty(float, notify = colorSchemeLimitsChanged)
+ def maxLineWidth(self):
+ return self._simulation_view.getMaxLineWidth()
+
+ @pyqtProperty(float, notify = colorSchemeLimitsChanged)
+ def minLineWidth(self):
+ return self._simulation_view.getMinLineWidth()
+
+ @pyqtProperty(float, notify=colorSchemeLimitsChanged)
+ def maxFlowRate(self):
+ return self._simulation_view.getMaxFlowRate()
+
+ @pyqtProperty(float, notify=colorSchemeLimitsChanged)
+ def minFlowRate(self):
+ return self._simulation_view.getMinFlowRate()
+
# Opacity 0..1
@pyqtSlot(int, float)
def setExtruderOpacity(self, extruder_nr, opacity):
@@ -145,6 +162,9 @@ class SimulationViewProxy(QObject):
self.currentLayerChanged.emit()
self._layerActivityChanged()
+ def _onColorSchemeLimitsChanged(self):
+ self.colorSchemeLimitsChanged.emit()
+
def _onPathChanged(self):
self.currentPathChanged.emit()
self._layerActivityChanged()
@@ -174,6 +194,7 @@ class SimulationViewProxy(QObject):
active_view = self._controller.getActiveView()
if active_view == self._simulation_view:
self._simulation_view.currentLayerNumChanged.connect(self._onLayerChanged)
+ self._simulation_view.colorSchemeLimitsChanged.connect(self._onColorSchemeLimitsChanged)
self._simulation_view.currentPathNumChanged.connect(self._onPathChanged)
self._simulation_view.maxLayersChanged.connect(self._onMaxLayersChanged)
self._simulation_view.maxPathsChanged.connect(self._onMaxPathsChanged)
@@ -186,6 +207,7 @@ class SimulationViewProxy(QObject):
# Disconnect all of em again.
self.is_simulationView_selected = False
self._simulation_view.currentLayerNumChanged.disconnect(self._onLayerChanged)
+ self._simulation_view.colorSchemeLimitsChanged.connect(self._onColorSchemeLimitsChanged)
self._simulation_view.currentPathNumChanged.disconnect(self._onPathChanged)
self._simulation_view.maxLayersChanged.disconnect(self._onMaxLayersChanged)
self._simulation_view.maxPathsChanged.disconnect(self._onMaxPathsChanged)
diff --git a/plugins/SimulationView/layers3d.shader b/plugins/SimulationView/layers3d.shader
index ceda09f9d5..f9d67f284c 100644
--- a/plugins/SimulationView/layers3d.shader
+++ b/plugins/SimulationView/layers3d.shader
@@ -10,6 +10,10 @@ vertex41core =
uniform lowp float u_min_feedrate;
uniform lowp float u_max_thickness;
uniform lowp float u_min_thickness;
+ uniform lowp float u_max_line_width;
+ uniform lowp float u_min_line_width;
+ uniform lowp float u_max_flow_rate;
+ uniform lowp float u_min_flow_rate;
uniform lowp int u_layer_view_type;
uniform lowp mat4 u_extruder_opacity; // currently only for max 16 extruders, others always visible
@@ -21,6 +25,7 @@ vertex41core =
in highp vec4 a_normal;
in highp vec2 a_line_dim; // line width and thickness
in highp float a_extruder;
+ in highp float a_prev_line_type;
in highp float a_line_type;
in highp float a_feedrate;
in highp float a_thickness;
@@ -32,6 +37,7 @@ vertex41core =
out lowp vec2 v_line_dim;
out highp int v_extruder;
out highp mat4 v_extruder_opacity;
+ out float v_prev_line_type;
out float v_line_type;
out lowp vec4 f_color;
@@ -40,7 +46,15 @@ vertex41core =
vec4 feedrateGradientColor(float abs_value, float min_value, float max_value)
{
- float value = (abs_value - min_value)/(max_value - min_value);
+ float value;
+ if(abs(max_value - min_value) < 0.0001) //Max and min are equal (barring floating point rounding errors).
+ {
+ value = 0.5; //Pick a colour in exactly the middle of the range.
+ }
+ else
+ {
+ value = (abs_value - min_value) / (max_value - min_value);
+ }
float red = value;
float green = 1-abs(1-4*value);
if (value > 0.375)
@@ -53,7 +67,15 @@ vertex41core =
vec4 layerThicknessGradientColor(float abs_value, float min_value, float max_value)
{
- float value = (abs_value - min_value)/(max_value - min_value);
+ float value;
+ if(abs(max_value - min_value) < 0.0001) //Max and min are equal (barring floating point rounding errors).
+ {
+ value = 0.5; //Pick a colour in exactly the middle of the range.
+ }
+ else
+ {
+ value = (abs_value - min_value) / (max_value - min_value);
+ }
float red = min(max(4*value-2, 0), 1);
float green = min(1.5*value, 0.75);
if (value > 0.75)
@@ -64,6 +86,51 @@ vertex41core =
return vec4(red, green, blue, 1.0);
}
+ vec4 lineWidthGradientColor(float abs_value, float min_value, float max_value)
+ {
+ float value;
+ if(abs(max_value - min_value) < 0.0001) //Max and min are equal (barring floating point rounding errors).
+ {
+ value = 0.5; //Pick a colour in exactly the middle of the range.
+ }
+ else
+ {
+ value = (abs_value - min_value) / (max_value - min_value);
+ }
+ float red = value;
+ float green = 1 - abs(1 - 4 * value);
+ if(value > 0.375)
+ {
+ green = 0.5;
+ }
+ float blue = max(1 - 4 * value, 0);
+ return vec4(red, green, blue, 1.0);
+ }
+
+ float clamp(float v)
+ {
+ float t = v < 0 ? 0 : v;
+ return t > 1.0 ? 1.0 : t;
+ }
+
+ // Inspired by https://stackoverflow.com/a/46628410
+ vec4 flowRateGradientColor(float abs_value, float min_value, float max_value)
+ {
+ float t;
+ if(abs(min_value - max_value) < 0.0001)
+ {
+ t = 0;
+ }
+ else
+ {
+ t = 2.0 * ((abs_value - min_value) / (max_value - min_value)) - 1;
+ }
+ float red = clamp(1.5 - abs(2.0 * t - 1.0));
+ float green = clamp(1.5 - abs(2.0 * t));
+ float blue = clamp(1.5 - abs(2.0 * t + 1.0));
+ return vec4(red, green, blue, 1.0);
+ }
+
void main()
{
vec4 v1_vertex = a_vertex;
@@ -86,12 +153,20 @@ vertex41core =
case 3: // "Layer thickness"
v_color = layerThicknessGradientColor(a_line_dim.y, u_min_thickness, u_max_thickness);
break;
+ case 4: // "Line width"
+ v_color = lineWidthGradientColor(a_line_dim.x, u_min_line_width, u_max_line_width);
+ break;
+ case 5: // "Flow"
+ float flow_rate = a_line_dim.x * a_line_dim.y * a_feedrate;
+ v_color = flowRateGradientColor(flow_rate, u_min_flow_rate, u_max_flow_rate);
+ break;
}
v_vertex = world_space_vert.xyz;
v_normal = (u_normalMatrix * normalize(a_normal)).xyz;
v_line_dim = a_line_dim;
v_extruder = int(a_extruder);
+ v_prev_line_type = a_prev_line_type;
v_line_type = a_line_type;
v_extruder_opacity = u_extruder_opacity;
@@ -108,20 +183,24 @@ geometry41core =
uniform highp mat4 u_viewMatrix;
uniform highp mat4 u_projectionMatrix;
+ uniform lowp vec4 u_starts_color;
+
uniform int u_show_travel_moves;
uniform int u_show_helpers;
uniform int u_show_skin;
uniform int u_show_infill;
+ uniform int u_show_starts;
layout(lines) in;
- layout(triangle_strip, max_vertices = 26) out;
+ layout(triangle_strip, max_vertices = 40) out;
in vec4 v_color[];
in vec3 v_vertex[];
in vec3 v_normal[];
- in vec2 v_line_dim[];
+ in lowp vec2 v_line_dim[];
in int v_extruder[];
in mat4 v_extruder_opacity[];
+ in float v_prev_line_type[];
in float v_line_type[];
out vec4 f_color;
@@ -177,17 +256,17 @@ geometry41core =
}
size_y = v_line_dim[1].y / 2 + 0.01;
- g_vertex_delta = gl_in[1].gl_Position - gl_in[0].gl_Position;
- g_vertex_normal_horz_head = normalize(vec3(-g_vertex_delta.x, -g_vertex_delta.y, -g_vertex_delta.z));
- g_vertex_offset_horz_head = vec4(g_vertex_normal_horz_head * size_x, 0.0);
+ g_vertex_delta = gl_in[1].gl_Position - gl_in[0].gl_Position; //Actual movement exhibited by the line.
+ g_vertex_normal_horz_head = normalize(vec3(-g_vertex_delta.x, -g_vertex_delta.y, -g_vertex_delta.z)); //Lengthwise normal vector pointing backwards.
+ g_vertex_offset_horz_head = vec4(g_vertex_normal_horz_head * size_x, 0.0); //Lengthwise offset vector pointing backwards.
- g_vertex_normal_horz = normalize(vec3(g_vertex_delta.z, g_vertex_delta.y, -g_vertex_delta.x));
+ g_vertex_normal_horz = normalize(vec3(g_vertex_delta.z, g_vertex_delta.y, -g_vertex_delta.x)); //Normal vector pointing right.
+ g_vertex_offset_horz = vec4(g_vertex_normal_horz * size_x, 0.0); //Offset vector pointing right.
- g_vertex_offset_horz = vec4(g_vertex_normal_horz * size_x, 0.0); //size * g_vertex_normal_horz;
- g_vertex_normal_vert = vec3(0.0, 1.0, 0.0);
- g_vertex_offset_vert = vec4(g_vertex_normal_vert * size_y, 0.0);
+ g_vertex_normal_vert = vec3(0.0, 1.0, 0.0); //Upwards normal vector.
+ g_vertex_offset_vert = vec4(g_vertex_normal_vert * size_y, 0.0); //Upwards offset vector. Goes up by half the layer thickness.
- if ((v_line_type[0] == 8) || (v_line_type[0] == 9)) {
+ if ((v_line_type[0] == 8) || (v_line_type[0] == 9)) { //Travel or retraction moves.
vec4 va_head = viewProjectionMatrix * (gl_in[0].gl_Position + g_vertex_offset_horz_head + g_vertex_offset_vert);
vec4 va_up = viewProjectionMatrix * (gl_in[0].gl_Position + g_vertex_offset_horz + g_vertex_offset_vert);
vec4 va_down = viewProjectionMatrix * (gl_in[0].gl_Position - g_vertex_offset_horz + g_vertex_offset_vert);
@@ -196,60 +275,60 @@ geometry41core =
vec4 vb_up = viewProjectionMatrix * (gl_in[1].gl_Position + g_vertex_offset_horz + g_vertex_offset_vert);
// Travels: flat plane with pointy ends
- myEmitVertex(v_vertex[0], v_color[0], g_vertex_normal_vert, va_up);
- myEmitVertex(v_vertex[0], v_color[0], g_vertex_normal_vert, va_head);
- myEmitVertex(v_vertex[0], v_color[0], g_vertex_normal_vert, va_down);
- myEmitVertex(v_vertex[0], v_color[0], g_vertex_normal_vert, va_up);
+ myEmitVertex(v_vertex[0], v_color[1], g_vertex_normal_vert, va_up);
+ myEmitVertex(v_vertex[0], v_color[1], g_vertex_normal_vert, va_head);
+ myEmitVertex(v_vertex[0], v_color[1], g_vertex_normal_vert, va_down);
+ myEmitVertex(v_vertex[0], v_color[1], g_vertex_normal_vert, va_up);
myEmitVertex(v_vertex[1], v_color[1], g_vertex_normal_vert, vb_down);
myEmitVertex(v_vertex[1], v_color[1], g_vertex_normal_vert, vb_up);
myEmitVertex(v_vertex[1], v_color[1], g_vertex_normal_vert, vb_head);
//And reverse so that the line is also visible from the back side.
myEmitVertex(v_vertex[1], v_color[1], g_vertex_normal_vert, vb_up);
myEmitVertex(v_vertex[1], v_color[1], g_vertex_normal_vert, vb_down);
- myEmitVertex(v_vertex[0], v_color[0], g_vertex_normal_vert, va_up);
- myEmitVertex(v_vertex[0], v_color[0], g_vertex_normal_vert, va_down);
- myEmitVertex(v_vertex[0], v_color[0], g_vertex_normal_vert, va_head);
- myEmitVertex(v_vertex[0], v_color[0], g_vertex_normal_vert, va_up);
+ myEmitVertex(v_vertex[0], v_color[1], g_vertex_normal_vert, va_up);
+ myEmitVertex(v_vertex[0], v_color[1], g_vertex_normal_vert, va_down);
+ myEmitVertex(v_vertex[0], v_color[1], g_vertex_normal_vert, va_head);
+ myEmitVertex(v_vertex[0], v_color[1], g_vertex_normal_vert, va_up);
EndPrimitive();
} else {
- vec4 va_m_horz = viewProjectionMatrix * (gl_in[0].gl_Position - g_vertex_offset_horz);
- vec4 vb_m_horz = viewProjectionMatrix * (gl_in[1].gl_Position - g_vertex_offset_horz);
- vec4 va_p_vert = viewProjectionMatrix * (gl_in[0].gl_Position + g_vertex_offset_vert);
- vec4 vb_p_vert = viewProjectionMatrix * (gl_in[1].gl_Position + g_vertex_offset_vert);
- vec4 va_p_horz = viewProjectionMatrix * (gl_in[0].gl_Position + g_vertex_offset_horz);
- vec4 vb_p_horz = viewProjectionMatrix * (gl_in[1].gl_Position + g_vertex_offset_horz);
- vec4 va_m_vert = viewProjectionMatrix * (gl_in[0].gl_Position - g_vertex_offset_vert);
- vec4 vb_m_vert = viewProjectionMatrix * (gl_in[1].gl_Position - g_vertex_offset_vert);
- vec4 va_head = viewProjectionMatrix * (gl_in[0].gl_Position + g_vertex_offset_horz_head);
- vec4 vb_head = viewProjectionMatrix * (gl_in[1].gl_Position - g_vertex_offset_horz_head);
+ vec4 va_m_horz = viewProjectionMatrix * (gl_in[0].gl_Position - g_vertex_offset_horz); //Line start, left vertex.
+ vec4 vb_m_horz = viewProjectionMatrix * (gl_in[1].gl_Position - g_vertex_offset_horz); //Line end, left vertex.
+ vec4 va_p_vert = viewProjectionMatrix * (gl_in[0].gl_Position + g_vertex_offset_vert); //Line start, top vertex.
+ vec4 vb_p_vert = viewProjectionMatrix * (gl_in[1].gl_Position + g_vertex_offset_vert); //Line end, top vertex.
+ vec4 va_p_horz = viewProjectionMatrix * (gl_in[0].gl_Position + g_vertex_offset_horz); //Line start, right vertex.
+ vec4 vb_p_horz = viewProjectionMatrix * (gl_in[1].gl_Position + g_vertex_offset_horz); //Line end, right vertex.
+ vec4 va_m_vert = viewProjectionMatrix * (gl_in[0].gl_Position - g_vertex_offset_vert); //Line start, bottom vertex.
+ vec4 vb_m_vert = viewProjectionMatrix * (gl_in[1].gl_Position - g_vertex_offset_vert); //Line end, bottom vertex.
+ vec4 va_head = viewProjectionMatrix * (gl_in[0].gl_Position + g_vertex_offset_horz_head); //Line start, tip.
+ vec4 vb_head = viewProjectionMatrix * (gl_in[1].gl_Position - g_vertex_offset_horz_head); //Line end, tip.
// All normal lines are rendered as 3d tubes.
- myEmitVertex(v_vertex[0], v_color[0], -g_vertex_normal_horz, va_m_horz);
+ myEmitVertex(v_vertex[0], v_color[1], -g_vertex_normal_horz, va_m_horz);
myEmitVertex(v_vertex[1], v_color[1], -g_vertex_normal_horz, vb_m_horz);
- myEmitVertex(v_vertex[0], v_color[0], g_vertex_normal_vert, va_p_vert);
+ myEmitVertex(v_vertex[0], v_color[1], g_vertex_normal_vert, va_p_vert);
myEmitVertex(v_vertex[1], v_color[1], g_vertex_normal_vert, vb_p_vert);
- myEmitVertex(v_vertex[0], v_color[0], g_vertex_normal_horz, va_p_horz);
+ myEmitVertex(v_vertex[0], v_color[1], g_vertex_normal_horz, va_p_horz);
myEmitVertex(v_vertex[1], v_color[1], g_vertex_normal_horz, vb_p_horz);
- myEmitVertex(v_vertex[0], v_color[0], -g_vertex_normal_vert, va_m_vert);
+ myEmitVertex(v_vertex[0], v_color[1], -g_vertex_normal_vert, va_m_vert);
myEmitVertex(v_vertex[1], v_color[1], -g_vertex_normal_vert, vb_m_vert);
- myEmitVertex(v_vertex[0], v_color[0], -g_vertex_normal_horz, va_m_horz);
+ myEmitVertex(v_vertex[0], v_color[1], -g_vertex_normal_horz, va_m_horz);
myEmitVertex(v_vertex[1], v_color[1], -g_vertex_normal_horz, vb_m_horz);
EndPrimitive();
// left side
- myEmitVertex(v_vertex[0], v_color[0], -g_vertex_normal_horz, va_m_horz);
- myEmitVertex(v_vertex[0], v_color[0], g_vertex_normal_vert, va_p_vert);
- myEmitVertex(v_vertex[0], v_color[0], g_vertex_normal_horz_head, va_head);
- myEmitVertex(v_vertex[0], v_color[0], g_vertex_normal_horz, va_p_horz);
+ myEmitVertex(v_vertex[0], v_color[1], -g_vertex_normal_horz, va_m_horz);
+ myEmitVertex(v_vertex[0], v_color[1], g_vertex_normal_vert, va_p_vert);
+ myEmitVertex(v_vertex[0], v_color[1], g_vertex_normal_horz_head, va_head);
+ myEmitVertex(v_vertex[0], v_color[1], g_vertex_normal_horz, va_p_horz);
EndPrimitive();
- myEmitVertex(v_vertex[0], v_color[0], g_vertex_normal_horz, va_p_horz);
- myEmitVertex(v_vertex[0], v_color[0], -g_vertex_normal_vert, va_m_vert);
- myEmitVertex(v_vertex[0], v_color[0], g_vertex_normal_horz_head, va_head);
- myEmitVertex(v_vertex[0], v_color[0], -g_vertex_normal_horz, va_m_horz);
+ myEmitVertex(v_vertex[0], v_color[1], g_vertex_normal_horz, va_p_horz);
+ myEmitVertex(v_vertex[0], v_color[1], -g_vertex_normal_vert, va_m_vert);
+ myEmitVertex(v_vertex[0], v_color[1], g_vertex_normal_horz_head, va_head);
+ myEmitVertex(v_vertex[0], v_color[1], -g_vertex_normal_horz, va_m_horz);
EndPrimitive();
@@ -268,6 +347,28 @@ geometry41core =
EndPrimitive();
}
+
+ if ((u_show_starts == 1) && (v_prev_line_type[0] != 1) && (v_line_type[0] == 1)) {
+ float w = size_x;
+ float h = size_y;
+
+ myEmitVertex(v_vertex[0] + vec3( w, h, w), u_starts_color, normalize(vec3( 1.0, 1.0, 1.0)), viewProjectionMatrix * (gl_in[0].gl_Position + vec4( w, h, w, 0.0))); // Front-top-left
+ myEmitVertex(v_vertex[0] + vec3(-w, h, w), u_starts_color, normalize(vec3(-1.0, 1.0, 1.0)), viewProjectionMatrix * (gl_in[0].gl_Position + vec4(-w, h, w, 0.0))); // Front-top-right
+ myEmitVertex(v_vertex[0] + vec3( w, -h, w), u_starts_color, normalize(vec3( 1.0, -1.0, 1.0)), viewProjectionMatrix * (gl_in[0].gl_Position + vec4( w, -h, w, 0.0))); // Front-bottom-left
+ myEmitVertex(v_vertex[0] + vec3(-w, -h, w), u_starts_color, normalize(vec3(-1.0, -1.0, 1.0)), viewProjectionMatrix * (gl_in[0].gl_Position + vec4(-w, -h, w, 0.0))); // Front-bottom-right
+ myEmitVertex(v_vertex[0] + vec3(-w, -h, -w), u_starts_color, normalize(vec3(-1.0, -1.0, -1.0)), viewProjectionMatrix * (gl_in[0].gl_Position + vec4(-w, -h, -w, 0.0))); // Back-bottom-right
+ myEmitVertex(v_vertex[0] + vec3(-w, h, w), u_starts_color, normalize(vec3(-1.0, 1.0, 1.0)), viewProjectionMatrix * (gl_in[0].gl_Position + vec4(-w, h, w, 0.0))); // Front-top-right
+ myEmitVertex(v_vertex[0] + vec3(-w, h, -w), u_starts_color, normalize(vec3(-1.0, 1.0, -1.0)), viewProjectionMatrix * (gl_in[0].gl_Position + vec4(-w, h, -w, 0.0))); // Back-top-right
+ myEmitVertex(v_vertex[0] + vec3( w, h, w), u_starts_color, normalize(vec3( 1.0, 1.0, 1.0)), viewProjectionMatrix * (gl_in[0].gl_Position + vec4( w, h, w, 0.0))); // Front-top-left
+ myEmitVertex(v_vertex[0] + vec3( w, h, -w), u_starts_color, normalize(vec3( 1.0, 1.0, -1.0)), viewProjectionMatrix * (gl_in[0].gl_Position + vec4( w, h, -w, 0.0))); // Back-top-left
+ myEmitVertex(v_vertex[0] + vec3( w, -h, w), u_starts_color, normalize(vec3( 1.0, -1.0, 1.0)), viewProjectionMatrix * (gl_in[0].gl_Position + vec4( w, -h, w, 0.0))); // Front-bottom-left
+ myEmitVertex(v_vertex[0] + vec3( w, -h, -w), u_starts_color, normalize(vec3( 1.0, -1.0, -1.0)), viewProjectionMatrix * (gl_in[0].gl_Position + vec4( w, -h, -w, 0.0))); // Back-bottom-left
+ myEmitVertex(v_vertex[0] + vec3(-w, -h, -w), u_starts_color, normalize(vec3(-1.0, -1.0, -1.0)), viewProjectionMatrix * (gl_in[0].gl_Position + vec4(-w, -h, -w, 0.0))); // Back-bottom-right
+ myEmitVertex(v_vertex[0] + vec3( w, h, -w), u_starts_color, normalize(vec3( 1.0, 1.0, -1.0)), viewProjectionMatrix * (gl_in[0].gl_Position + vec4( w, h, -w, 0.0))); // Back-top-left
+ myEmitVertex(v_vertex[0] + vec3(-w, h, -w), u_starts_color, normalize(vec3(-1.0, 1.0, -1.0)), viewProjectionMatrix * (gl_in[0].gl_Position + vec4(-w, h, -w, 0.0))); // Back-top-right
+
+ EndPrimitive();
+ }
}
fragment41core =
@@ -312,10 +413,13 @@ u_diffuseColor = [1.0, 0.79, 0.14, 1.0]
u_minimumAlbedo = [0.1, 0.1, 0.1, 1.0]
u_shininess = 20.0
+u_starts_color = [1.0, 1.0, 1.0, 1.0]
+
u_show_travel_moves = 0
u_show_helpers = 1
u_show_skin = 1
u_show_infill = 1
+u_show_starts = 1
u_min_feedrate = 0
u_max_feedrate = 1
@@ -337,6 +441,7 @@ a_normal = normal
a_line_dim = line_dim
a_extruder = extruder
a_material_color = material_color
+a_prev_line_type = prev_line_type
a_line_type = line_type
a_feedrate = feedrate
a_thickness = thickness
diff --git a/plugins/SimulationView/plugin.json b/plugins/SimulationView/plugin.json
index 56275498ca..5ea5e20596 100644
--- a/plugins/SimulationView/plugin.json
+++ b/plugins/SimulationView/plugin.json
@@ -3,6 +3,6 @@
"author": "Ultimaker B.V.",
"version": "1.0.1",
"description": "Provides the Simulation view.",
- "api": "7.4.0",
+ "api": 7,
"i18n-catalog": "cura"
}
diff --git a/plugins/SimulationView/resources/Pause.svg b/plugins/SimulationView/resources/Pause.svg
new file mode 100755
index 0000000000..6bc491e387
--- /dev/null
+++ b/plugins/SimulationView/resources/Pause.svg
@@ -0,0 +1,4 @@
+
+
diff --git a/plugins/SimulationView/resources/Play.svg b/plugins/SimulationView/resources/Play.svg
new file mode 100755
index 0000000000..1b2510513d
--- /dev/null
+++ b/plugins/SimulationView/resources/Play.svg
@@ -0,0 +1,5 @@
+
+
diff --git a/plugins/SimulationView/resources/simulation_pause.svg b/plugins/SimulationView/resources/simulation_pause.svg
deleted file mode 100644
index 652434bd44..0000000000
--- a/plugins/SimulationView/resources/simulation_pause.svg
+++ /dev/null
@@ -1,79 +0,0 @@
-
-
-
-
diff --git a/plugins/SimulationView/resources/simulation_resume.svg b/plugins/SimulationView/resources/simulation_resume.svg
deleted file mode 100644
index 912a2ac418..0000000000
--- a/plugins/SimulationView/resources/simulation_resume.svg
+++ /dev/null
@@ -1,78 +0,0 @@
-
-
-
-
diff --git a/plugins/SliceInfoPlugin/SliceInfo.py b/plugins/SliceInfoPlugin/SliceInfo.py
index 6eed649cc7..02e71207e0 100755
--- a/plugins/SliceInfoPlugin/SliceInfo.py
+++ b/plugins/SliceInfoPlugin/SliceInfo.py
@@ -1,4 +1,4 @@
-# Copyright (c) 2020 Ultimaker B.V.
+# Copyright (c) 2021 Ultimaker B.V.
# Cura is released under the terms of the LGPLv3 or higher.
import json
@@ -87,8 +87,12 @@ class SliceInfo(QObject, Extension):
return None
file_path = os.path.join(plugin_path, "example_data.html")
if file_path:
- with open(file_path, "r", encoding = "utf-8") as f:
- self._example_data_content = f.read()
+ try:
+ with open(file_path, "r", encoding = "utf-8") as f:
+ self._example_data_content = f.read()
+ except EnvironmentError as e:
+ Logger.error(f"Unable to read example slice info data to show to the user: {e}")
+ self._example_data_content = "" + catalog.i18nc("@text", "Unable to read example data file.") + ""
return self._example_data_content
@pyqtSlot(bool)
@@ -229,6 +233,11 @@ class SliceInfo(QObject, Extension):
model["model_settings"] = model_settings
+ if node.source_mime_type is None:
+ model["mime_type"] = ""
+ else:
+ model["mime_type"] = node.source_mime_type.name
+
data["models"].append(model)
print_times = print_information.printTimes()
diff --git a/plugins/SliceInfoPlugin/example_data.html b/plugins/SliceInfoPlugin/example_data.html
index b349ec328d..5b97f1cba6 100644
--- a/plugins/SliceInfoPlugin/example_data.html
+++ b/plugins/SliceInfoPlugin/example_data.html
@@ -54,6 +54,7 @@
"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:535
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:540
#, python-brace-format
msgctxt "@info:status Don't translate the XML tags or !"
msgid "Project file {0} contains an unknown machine type {1}. Cannot import the machine. Models will be imported instead."
msgstr "Projektový soubor {0} obsahuje neznámý typ zařízení {1}. Nelze importovat zařízení. Místo toho budou importovány modely."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:538
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:543
msgctxt "@info:title"
msgid "Open Project File"
msgstr "Otevřít soubor s projektem"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:634
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:639
#, python-brace-format
msgctxt "@info:error Don't translate the XML tags or !"
msgid "Project file {0} is suddenly inaccessible: {1}."
-msgstr "Soubor projektu {0}je neočekávaně nedostupný: {1}."
+msgstr "Soubor projektu {0} je neočekávaně nedostupný: {1}."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:635
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:640
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:647
msgctxt "@info:title"
msgid "Can't Open Project File"
msgstr "Nepovedlo se otevřít soubor projektu"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:686
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:646
+#, python-brace-format
+msgctxt "@info:error Don't translate the XML tags or !"
+msgid "Project file {0} is corrupt: {1}."
+msgstr "Soubor projektu {0} je poškozený: {1}."
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:698
#, python-brace-format
msgctxt "@info:error Don't translate the XML tag !"
msgid "Project file {0} is made using profiles that are unknown to this version of Ultimaker Cura."
@@ -786,9 +805,9 @@ msgstr "Nemáte oprávnění zapisovat do tohoto pracovního prostoru."
#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:96
msgctxt "@error:zip"
msgid "The operating system does not allow saving a project file to this location or with this file name."
-msgstr ""
+msgstr "Operační systém nepovoluje uložit soubor s projektem do tohoto umístění nebo pod tímto názvem."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWriter.py:185
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWriter.py:206
msgctxt "@error:zip"
msgid "Error writing 3mf file."
msgstr "Chyba při zápisu 3mf file."
@@ -843,8 +862,8 @@ msgctxt "@error:file_size"
msgid "The backup exceeds the maximum file size."
msgstr "Záloha překračuje maximální povolenou velikost soubor."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DriveApiService.py:82
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/RestoreBackupJob.py:23
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DriveApiService.py:86
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/RestoreBackupJob.py:26
msgctxt "@info:backup_status"
msgid "There was an error trying to restore your backup."
msgstr "Nastala chyba při pokusu obnovit vaši zálohu."
@@ -854,45 +873,45 @@ msgctxt "@item:inmenu"
msgid "Manage backups"
msgstr "Spravovat zálohy"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:356
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:382
msgctxt "@info:status"
msgid "Unable to slice with the current material as it is incompatible with the selected machine or configuration."
msgstr "Nelze slicovat s aktuálním materiálem, protože je nekompatibilní s vybraným strojem nebo konfigurací."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:356
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:387
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:411
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:420
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:429
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:441
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:382
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:413
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:437
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:446
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:455
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:467
msgctxt "@info:title"
msgid "Unable to slice"
msgstr "Nelze slicovat"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:386
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:412
#, python-brace-format
msgctxt "@info:status"
msgid "Unable to slice with the current settings. The following settings have errors: {0}"
msgstr "S aktuálním nastavením nelze slicovat. Následující nastavení obsahuje chyby: {0}"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:410
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:436
#, python-brace-format
msgctxt "@info:status"
msgid "Unable to slice due to some per-model settings. The following settings have errors on one or more models: {error_labels}"
msgstr "Nelze slicovat kvůli některým nastavení jednotlivých modelů. Následující nastavení obsahuje chyby na jednom nebo více modelech: {error_labels}"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:419
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:445
msgctxt "@info:status"
msgid "Unable to slice because the prime tower or prime position(s) are invalid."
msgstr "Nelze slicovat, protože hlavní věž nebo primární pozice jsou neplatné."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:428
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:454
#, python-format
msgctxt "@info:status"
msgid "Unable to slice because there are objects associated with disabled Extruder %s."
msgstr "Nelze slicovat, protože jsou zde objekty asociované k zakázanému extruder %s."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:437
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:463
msgctxt "@info:status"
msgid ""
"Please review settings and check if your models:\n"
@@ -1161,28 +1180,28 @@ msgctxt "@item:intext"
msgid "Removable Drive"
msgstr "Vyměnitelná jednotka"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:121
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:128
msgctxt "@info:status"
msgid "Cura does not accurately display layers when Wire Printing is enabled."
msgstr "Když je aktivován síťový tisk, Cura přesně nezobrazuje vrstvy."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:122
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:129
msgctxt "@info:title"
msgid "Simulation View"
msgstr "Pohled simulace"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:123
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:130
msgctxt "@info:status"
msgid "Nothing is shown because you need to slice first."
msgstr "Nic není zobrazeno, nejdříve musíte slicovat."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:123
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:130
msgctxt "@info:title"
msgid "No layers to show"
msgstr "Žádné vrstvy k zobrazení"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:124
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:73
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:131
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:74
msgctxt "@info:option_text"
msgid "Do not show this message again"
msgstr "Znovu nezobrazovat tuto zprávu"
@@ -1192,16 +1211,21 @@ msgctxt "@item:inlistbox"
msgid "Layer view"
msgstr "Pohled vrstev"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:70
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:71
msgctxt "@info:status"
-msgid "Your model is not manifold. The highlighted areas indicate either missing or extraneous surfaces."
-msgstr "Váš model není rozmanitý. Zvýrazněné oblasti indikují buď chybějící, či vedlejší povrch."
+msgid "The highlighted areas indicate either missing or extraneous surfaces. Fix your model and open it again into Cura."
+msgstr "Zvýrazněné oblasti označují chybějící nebo vedlejší povrchy. Opravte váš model a otevřete jej znovu."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:72
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:73
msgctxt "@info:title"
-msgid "Model errors"
+msgid "Model Errors"
msgstr "Chyby modelu"
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:79
+msgctxt "@action:button"
+msgid "Learn more"
+msgstr "Zjistit více"
+
#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/__init__.py:12
msgctxt "@item:inmenu"
msgid "Solid view"
@@ -1228,7 +1252,7 @@ msgctxt "@info:title"
msgid "Changes detected from your Ultimaker account"
msgstr "Zjištěny změny z vašeho účtu Ultimaker"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py:146
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py:145
msgctxt "@action:button"
msgid "Sync"
msgstr "Synchronizovat"
@@ -1264,7 +1288,7 @@ msgctxt "@info:generic"
msgid "You need to quit and restart {} before changes have effect."
msgstr "Než se změny projeví, musíte ukončit a restartovat {}."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/SyncOrchestrator.py:76
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/SyncOrchestrator.py:79
msgctxt "@info:generic"
msgid "{} plugins failed to download"
msgstr "Nepovedlo se stáhnout {} zásuvných modulů"
@@ -1305,7 +1329,11 @@ msgctxt "@item:inlistbox"
msgid "Ultimaker Format Package"
msgstr "Balíček ve formátu Ultimaker"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:146
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:57
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:72
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:94
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:149
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:159
msgctxt "@info:error"
msgid "Can't write to UFP file:"
msgstr "Nemohu zapsat do UFP souboru:"
@@ -1320,26 +1348,26 @@ msgctxt "@action"
msgid "Select upgrades"
msgstr "Vybrat vylepšení"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:152
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:154
msgctxt "@action:button"
msgid "Print via cloud"
msgstr "Tisknout přes cloud"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:153
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:155
msgctxt "@properties:tooltip"
msgid "Print via cloud"
msgstr "Tisknout přes cloud"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:154
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:156
msgctxt "@info:status"
msgid "Connected via cloud"
msgstr "Připojen přes cloud"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:264
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:270
#, python-brace-format
msgctxt "@error:send"
msgid "Unknown error code when uploading print job: {0}"
-msgstr ""
+msgstr "Při nahrávání tiskové úlohy došlo k chybě s neznámým kódem: {0}"
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:227
msgctxt "info:status"
@@ -1353,21 +1381,21 @@ msgstr[2] "Z vašeho Ultimaker účtu byly detekovány nové tiskárny"
#, python-brace-format
msgctxt "info:status Filled in with printer name and printer model."
msgid "Adding printer {name} ({model}) from your account"
-msgstr ""
+msgstr "Přidávám tiskárnu {name} ({model}) z vašeho účtu"
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:255
#, python-brace-format
msgctxt "info:{0} gets replaced by a number of printers"
msgid "... and {0} other"
msgid_plural "... and {0} others"
-msgstr[0] ""
-msgstr[1] ""
-msgstr[2] ""
+msgstr[0] "... a {0} další"
+msgstr[1] "... a {0} další"
+msgstr[2] "... a {0} dalších"
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:260
msgctxt "info:status"
msgid "Printers added from Digital Factory:"
-msgstr ""
+msgstr "Tiskárny přidané z Digital Factory:"
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:316
msgctxt "info:status"
@@ -1389,13 +1417,13 @@ msgstr[2] "Tyto tiskárny nejsou napojeny na Digital Factory:"
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:419
msgctxt "info:name"
msgid "Ultimaker Digital Factory"
-msgstr ""
+msgstr "Ultimaker Digital Factory"
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:333
#, python-brace-format
msgctxt "info:status"
msgid "To establish a connection, please visit the {website_link}"
-msgstr ""
+msgstr "Chcete-li navázat spojení, navštivte {website_link}"
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:337
msgctxt "@action:button"
@@ -1411,19 +1439,19 @@ msgstr "Odstranit tiskárnu"
#, python-brace-format
msgctxt "@message {printer_name} is replaced with the name of the printer"
msgid "{printer_name} will be removed until the next account sync."
-msgstr ""
+msgstr "Tiskárna {printer_name} bude odebrána až do další synchronizace účtu."
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:422
#, python-brace-format
msgctxt "@message {printer_name} is replaced with the name of the printer"
msgid "To remove {printer_name} permanently, visit {digital_factory_link}"
-msgstr ""
+msgstr "Chcete-li tiskárnu {printer_name} trvale odebrat, navštivte {digital_factory_link}"
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:423
#, python-brace-format
msgctxt "@message {printer_name} is replaced with the name of the printer"
msgid "Are you sure you want to remove {printer_name} temporarily?"
-msgstr ""
+msgstr "Opravdu chcete tiskárnu {printer_name} dočasně odebrat?"
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:460
msgctxt "@title:window"
@@ -1440,8 +1468,14 @@ msgid_plural ""
"You are about to remove {0} printers from Cura. This action cannot be undone.\n"
"Are you sure you want to continue?"
msgstr[0] ""
+"Chystáte se odebrat {0} tiskárnu z Cury. Tuto akci nelze vrátit zpět.\n"
+"Doopravdy chcete pokračovat?"
msgstr[1] ""
+"Chystáte se odebrat {0} tiskárny z Cury. Tuto akci nelze vrátit zpět.\n"
+"Doopravdy chcete pokračovat?"
msgstr[2] ""
+"Chystáte se odebrat {0} tiskáren z Cury. Tuto akci nelze vrátit zpět.\n"
+"Doopravdy chcete pokračovat?"
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:468
msgctxt "@label"
@@ -1449,6 +1483,8 @@ msgid ""
"You are about to remove all printers from Cura. This action cannot be undone.\n"
"Are you sure you want to continue?"
msgstr ""
+"Chystáte se odebrat všechny tiskárny z Cury. Tuto akci nelze vrátit zpět.\n"
+"Doopravdy chcete pokračovat?"
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Messages/CloudFlowMessage.py:27
msgctxt "@info:status"
@@ -1535,12 +1571,12 @@ msgstr "Nahrávám tiskovou úlohu do tiskárny."
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadQueueFullMessage.py:16
msgctxt "@info:status"
msgid "Print job queue is full. The printer can't accept a new job."
-msgstr ""
+msgstr "Fronta tiskových úloh je plná. Tiskárna nemůže přijmout další úlohu."
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadQueueFullMessage.py:17
msgctxt "@info:title"
msgid "Queue Full"
-msgstr ""
+msgstr "Fronta je plná"
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Messages/PrintJobUploadSuccessMessage.py:15
msgctxt "@info:status"
@@ -1632,82 +1668,82 @@ msgctxt "@info:tooltip"
msgid "Some things could be problematic in this print. Click to see tips for adjustment."
msgstr "Některé věci mohou být v tomto tisku problematické. Kliknutím zobrazíte tipy pro úpravy."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:14
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:15
msgctxt "@title:window"
msgid "Open Project"
msgstr "Otevřit projekt"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:61
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:62
msgctxt "@action:ComboBox Update/override existing profile"
msgid "Update existing"
msgstr "Aktualizovat existující"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:62
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:63
msgctxt "@action:ComboBox Save settings in a new profile"
msgid "Create new"
msgstr "Vytvořit nový"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:74
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:75
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:69
msgctxt "@action:title"
msgid "Summary - Cura Project"
msgstr "Souhrn - Projekt Cura"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:96
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:97
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:93
msgctxt "@action:label"
msgid "Printer settings"
msgstr "Nastavení tiskárny"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:112
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:113
msgctxt "@info:tooltip"
msgid "How should the conflict in the machine be resolved?"
msgstr "Jak by měl být problém v zařízení vyřešen?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:165
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:167
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:102
msgctxt "@action:label"
msgid "Type"
msgstr "Typ"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:181
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:183
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:117
msgctxt "@action:label"
msgid "Printer Group"
msgstr "Skupina tiskárny"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:203
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:205
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:218
msgctxt "@action:label"
msgid "Profile settings"
msgstr "Nastavení profilu"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:219
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:221
msgctxt "@info:tooltip"
msgid "How should the conflict in the profile be resolved?"
msgstr "Jak by měl být problém v profilu vyřešen?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:239
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:349
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:242
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:353
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:117
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:242
msgctxt "@action:label"
msgid "Name"
msgstr "Název"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:255
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:258
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:259
msgctxt "@action:label"
msgid "Intent"
msgstr "Záměr"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:271
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:274
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:226
msgctxt "@action:label"
msgid "Not in profile"
msgstr "Není v profilu"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:276
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:279
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:231
msgctxt "@action:label"
msgid "%1 override"
@@ -1716,12 +1752,12 @@ msgstr[0] "%1 přepsání"
msgstr[1] "%1 přepsání"
msgstr[2] "%1 přepsání"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:287
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:290
msgctxt "@action:label"
msgid "Derivative from"
msgstr "Derivát z"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:292
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:295
msgctxt "@action:label"
msgid "%1, %2 override"
msgid_plural "%1, %2 overrides"
@@ -1729,42 +1765,42 @@ msgstr[0] "%1, %2 override"
msgstr[1] "%1, %2 overrides"
msgstr[2] "%1, %2 overrides"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:309
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:312
msgctxt "@action:label"
msgid "Material settings"
msgstr "Nastavení materiálu"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:325
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:328
msgctxt "@info:tooltip"
msgid "How should the conflict in the material be resolved?"
msgstr "Jak by měl být problém v materiálu vyřešen?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:369
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:373
msgctxt "@action:label"
msgid "Setting visibility"
msgstr "Nastavení zobrazení"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:378
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:382
msgctxt "@action:label"
msgid "Mode"
msgstr "Mód"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:394
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:398
msgctxt "@action:label"
msgid "Visible settings:"
msgstr "Viditelná zařízení:"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:399
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:403
msgctxt "@action:label"
msgid "%1 out of %2"
msgstr "%1 z %2"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:425
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:429
msgctxt "@action:warning"
msgid "Loading a project will clear all models on the build plate."
msgstr "Nahrání projektu vymaže všechny modely na podložce."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:453
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:457
msgctxt "@action:button"
msgid "Open"
msgstr "Otevřít"
@@ -1866,8 +1902,8 @@ msgstr "Zálohovat a synchronizovat vaše nastavení Cura."
#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/qml/pages/WelcomePage.qml:51
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/WelcomePage.qml:39
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:68
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:125
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:53
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:199
msgctxt "@button"
msgid "Sign in"
msgstr "Přihlásit se"
@@ -2101,12 +2137,12 @@ msgctxt "@label"
msgid "Cooling Fan Number"
msgstr "Číslo chladícího větráku"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:162
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:163
msgctxt "@title:label"
msgid "Extruder Start G-code"
msgstr "Počáteční G-kód extuderu"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:176
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:177
msgctxt "@title:label"
msgid "Extruder End G-code"
msgstr "Ukončující G-kód extuderu"
@@ -2191,12 +2227,17 @@ msgctxt "@label"
msgid "Number of Extruders"
msgstr "Počet extrůderů"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:374
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:345
+msgctxt "@label"
+msgid "Apply Extruder offsets to GCode"
+msgstr "Aplikovat offsety extruderu do G kódu"
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:393
msgctxt "@title:label"
msgid "Start G-code"
msgstr "Počáteční G kód"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:385
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:404
msgctxt "@title:label"
msgid "End G-code"
msgstr "Ukončující G kód"
@@ -2224,6 +2265,11 @@ msgctxt "@label link to technical assistance"
msgid "View user manuals online"
msgstr "Zobrazit online manuály"
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MonitorStage/MonitorMain.qml:172
+msgctxt "@info"
+msgid "In order to monitor your print from Cura, please connect the printer."
+msgstr "Abyste mohli monitorovat tisk z Cury, připojte prosím tiskárnu."
+
#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml:42
msgctxt "@label"
msgid "Mesh Type"
@@ -2270,7 +2316,7 @@ msgid "Select Settings to Customize for this model"
msgstr "Vybrat nastavení k přizpůsobení pro tento model"
#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:55
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:94
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:96
msgctxt "@label:textbox"
msgid "Filter..."
msgstr "Filtrovat..."
@@ -2280,32 +2326,32 @@ msgctxt "@label:checkbox"
msgid "Show all"
msgstr "Zobrazit vše"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:18
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:20
msgctxt "@title:window"
msgid "Post Processing Plugin"
msgstr "Zásuvný balíček Post Processing"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:57
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:59
msgctxt "@label"
msgid "Post Processing Scripts"
msgstr "Skripty Post Processingu"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:233
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:235
msgctxt "@action"
msgid "Add a script"
msgstr "Přidat skript"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:279
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:282
msgctxt "@label"
msgid "Settings"
msgstr "Nastavení"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:499
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:502
msgctxt "@info:tooltip"
msgid "Change active post-processing scripts."
msgstr "Změnít aktivní post-processing skripty."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:503
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:506
msgctxt "@info:tooltip"
msgid "The following script is active:"
msgid_plural "The following scripts are active:"
@@ -2319,78 +2365,93 @@ msgctxt "@label"
msgid "Color scheme"
msgstr "Barevné schéma"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:107
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:110
msgctxt "@label:listbox"
msgid "Material Color"
msgstr "Barva materiálu"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:111
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:114
msgctxt "@label:listbox"
msgid "Line Type"
msgstr "Typ úsečky"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:115
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:118
msgctxt "@label:listbox"
msgid "Speed"
msgstr "Rychlost"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:119
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:122
msgctxt "@label:listbox"
-msgid "Layer thickness"
+msgid "Layer Thickness"
msgstr "Tloušťka vrstvy"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:156
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:126
+msgctxt "@label:listbox"
+msgid "Line Width"
+msgstr "Šířka čáry"
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:130
+msgctxt "@label:listbox"
+msgid "Flow"
+msgstr "Průtok"
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:171
msgctxt "@label"
msgid "Compatibility Mode"
msgstr "Mód kompatibility"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:230
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:245
msgctxt "@label"
msgid "Travels"
msgstr "Cesty"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:236
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:251
msgctxt "@label"
msgid "Helpers"
msgstr "Pomocníci"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:242
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:257
msgctxt "@label"
msgid "Shell"
msgstr "Shell"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:248
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:263
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedInfillDensitySelector.qml:65
msgctxt "@label"
msgid "Infill"
msgstr "Výplň"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:298
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:271
+msgctxt "@label"
+msgid "Starts"
+msgstr "Začátky"
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:322
msgctxt "@label"
msgid "Only Show Top Layers"
msgstr "Zobrazit jen vrchní vrstvy"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:308
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:332
msgctxt "@label"
msgid "Show 5 Detailed Layers On Top"
msgstr "Zobrazit 5 podrobných vrstev nahoře"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:322
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:346
msgctxt "@label"
msgid "Top / Bottom"
msgstr "Nahoře / Dole"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:326
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:350
msgctxt "@label"
msgid "Inner Wall"
msgstr "Vnitřní stěna"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:384
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:419
msgctxt "@label"
msgid "min"
msgstr "min"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:433
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:488
msgctxt "@label"
msgid "max"
msgstr "max"
@@ -2531,7 +2592,7 @@ msgid "Plugins"
msgstr "Zásuvné moduly"
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxHeader.qml:44
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:466
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:457
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:89
msgctxt "@title:tab"
msgid "Materials"
@@ -2580,6 +2641,7 @@ msgstr "Schovat"
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/dialogs/CompatibilityDialog.qml:23
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:123
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/FirstStartMachineActionsContent.qml:77
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:178
msgctxt "@button"
msgid "Next"
msgstr "Další"
@@ -2924,7 +2986,7 @@ msgid "Delete"
msgstr "Odstranit"
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:100
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:289
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:290
msgctxt "@label"
msgid "Resume"
msgstr "Obnovit"
@@ -2940,8 +3002,8 @@ msgid "Resuming..."
msgstr "Obnovuji..."
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:106
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:284
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:293
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:285
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:294
msgctxt "@label"
msgid "Pause"
msgstr "Pozastavit"
@@ -2982,7 +3044,7 @@ msgid "Are you sure you want to abort %1?"
msgstr "Doopravdy chcete zrušit %1?"
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:164
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:335
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:336
msgctxt "@window:title"
msgid "Abort print"
msgstr "Zrušit tisk"
@@ -2993,7 +3055,7 @@ msgid "Manage printer"
msgstr "Spravovat tiskárnu"
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:254
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:519
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:523
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:250
msgctxt "@info"
msgid "Please update your printer's firmware to manage the queue remotely."
@@ -3019,27 +3081,34 @@ msgctxt "@label:status"
msgid "Idle"
msgstr "Čekám"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:365
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:364
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:84
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:86
+msgctxt "@label:status"
+msgid "Preparing..."
+msgstr "Připravuji..."
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:369
msgctxt "@label:status"
msgid "Printing"
-msgstr ""
+msgstr "Tisknu"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:406
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:410
msgctxt "@label"
msgid "Untitled"
msgstr "Bez názvu"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:427
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:431
msgctxt "@label"
msgid "Anonymous"
msgstr "Anonymní"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:454
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:458
msgctxt "@label:status"
msgid "Requires configuration changes"
msgstr "Jsou nutné změny v nastavení"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:492
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:496
msgctxt "@action:button"
msgid "Details"
msgstr "Podrobnosti"
@@ -3066,12 +3135,6 @@ msgctxt "@label:status"
msgid "Finished"
msgstr "Dokončeno"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:84
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:86
-msgctxt "@label:status"
-msgid "Preparing..."
-msgstr "Připravuji..."
-
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:88
msgctxt "@label:status"
msgid "Aborting..."
@@ -3152,27 +3215,27 @@ msgctxt "@action:button"
msgid "Sign in"
msgstr "Přihlásit se"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:40
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:20
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:64
msgctxt "@label"
-msgid "Your key to connected 3D printing"
-msgstr "Váš klíč k propojenému 3D tisku"
+msgid "Sign in to the Ultimaker platform"
+msgstr "Přihlásit se do platformy Ultimaker"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:51
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:42
msgctxt "@text"
msgid ""
-"- Customize your experience with more print profiles and plugins\n"
-"- Stay flexible by syncing your setup and loading it anywhere\n"
-"- Increase efficiency with a remote workflow on Ultimaker printers"
+"- Add material profiles and plug-ins from the Marketplace\n"
+"- Back-up and sync your material profiles and plug-ins\n"
+"- Share ideas and get help from 48,000+ users in the Ultimaker community"
msgstr ""
-"- Přizpůsobte si své zážitky pomocí více profilů tisku a modulů\n"
-"- Zůstaňte flexibilní díky synchronizaci nastavení a přístupu k ní kdekoli\n"
-"- Zvyšte efektivitu pomocí vzdáleného pracovního postupu na tiskárnách Ultimaker"
+"- Přidejte materiálnové profily and moduly z Obchodu\n"
+"- Zálohujte a synchronizujte vaše materiálové profily and moduly\n"
+"- Sdílejte nápady a získejte pomoc od více než 48 000 uživatelů v Ultimaker komunitě"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:78
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:142
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:62
msgctxt "@button"
-msgid "Create account"
-msgstr "Vytvořit účet"
+msgid "Create a free Ultimaker account"
+msgstr "Vytvořit účet Ultimaker zdarma"
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/SyncState.qml:28
msgctxt "@label"
@@ -3279,312 +3342,308 @@ msgctxt "@button"
msgid "Cancel"
msgstr "Zrušit"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:82
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:83
msgctxt "@action:inmenu"
msgid "Show Online Troubleshooting Guide"
msgstr "Zobrazit online průvodce řešením problémů"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:89
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:90
msgctxt "@action:inmenu"
msgid "Toggle Full Screen"
msgstr "Přepnout zobrazení na celou obrazovku"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:97
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:98
msgctxt "@action:inmenu"
msgid "Exit Full Screen"
msgstr "Ukončit zobrazení na celou obrazovku"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:104
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:105
msgctxt "@action:inmenu menubar:edit"
msgid "&Undo"
msgstr "&Vrátit"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:114
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:115
msgctxt "@action:inmenu menubar:edit"
msgid "&Redo"
msgstr "&Znovu"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:124
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:125
msgctxt "@action:inmenu menubar:file"
msgid "&Quit"
msgstr "&Ukončit"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:132
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:133
msgctxt "@action:inmenu menubar:view"
msgid "3D View"
msgstr "3D Pohled"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:139
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:140
msgctxt "@action:inmenu menubar:view"
msgid "Front View"
msgstr "Přední pohled"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:146
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:147
msgctxt "@action:inmenu menubar:view"
msgid "Top View"
-msgstr "Pohled ze shora"
+msgstr "Pohled seshora"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:153
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:154
+msgctxt "@action:inmenu menubar:view"
+msgid "Bottom View"
+msgstr "Pohled zezdola"
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:161
msgctxt "@action:inmenu menubar:view"
msgid "Left Side View"
msgstr "Pohled z pravé strany"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:160
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:168
msgctxt "@action:inmenu menubar:view"
msgid "Right Side View"
msgstr "Pohled z pravé strany"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:167
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:175
msgctxt "@action:inmenu"
msgid "Configure Cura..."
msgstr "Konfigurovat Cura..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:174
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:182
msgctxt "@action:inmenu menubar:printer"
msgid "&Add Printer..."
msgstr "Přidat t&iskárnu..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:180
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:188
msgctxt "@action:inmenu menubar:printer"
msgid "Manage Pr&inters..."
msgstr "Spravovat &tiskárny..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:187
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:195
msgctxt "@action:inmenu"
msgid "Manage Materials..."
msgstr "Spravovat materiály..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:195
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:203
msgctxt "@action:inmenu"
msgid "Add more materials from Marketplace"
msgstr "Přidat více materiálů z obchodu"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:202
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:210
msgctxt "@action:inmenu menubar:profile"
msgid "&Update profile with current settings/overrides"
msgstr "&Aktualizovat profil s aktuálními nastaveními/přepsáními"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:210
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:218
msgctxt "@action:inmenu menubar:profile"
msgid "&Discard current changes"
msgstr "Smazat aktuální &změny"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:222
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:230
msgctxt "@action:inmenu menubar:profile"
msgid "&Create profile from current settings/overrides..."
msgstr "&Vytvořit profil z aktuálního nastavení/přepsání."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:228
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:236
msgctxt "@action:inmenu menubar:profile"
msgid "Manage Profiles..."
msgstr "Spravovat profily..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:236
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:244
msgctxt "@action:inmenu menubar:help"
msgid "Show Online &Documentation"
msgstr "Zobrazit online &dokumentaci"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:244
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:252
msgctxt "@action:inmenu menubar:help"
msgid "Report a &Bug"
msgstr "Nahlásit &chybu"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:252
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:260
msgctxt "@action:inmenu menubar:help"
msgid "What's New"
msgstr "Co je nového"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:258
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:266
msgctxt "@action:inmenu menubar:help"
msgid "About..."
msgstr "Více..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:265
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:273
msgctxt "@action:inmenu menubar:edit"
-msgid "Delete Selected Model"
-msgid_plural "Delete Selected Models"
-msgstr[0] "Smazat vybraný model"
-msgstr[1] "Smazat vybrané modely"
-msgstr[2] "Smazat vybrané modely"
+msgid "Delete Selected"
+msgstr "Smazat vybrané"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:275
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:283
msgctxt "@action:inmenu menubar:edit"
-msgid "Center Selected Model"
-msgid_plural "Center Selected Models"
-msgstr[0] "Centrovat vybraný model"
-msgstr[1] "Centrovat vybrané modely"
-msgstr[2] "Centrovat vybrané modely"
+msgid "Center Selected"
+msgstr "Centrovat vybrané"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:284
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:292
msgctxt "@action:inmenu menubar:edit"
-msgid "Multiply Selected Model"
-msgid_plural "Multiply Selected Models"
-msgstr[0] "Násobit vybraný model"
-msgstr[1] "Násobit vybrané modely"
-msgstr[2] "Násobit vybrané modely"
+msgid "Multiply Selected"
+msgstr "Násobit vybrané"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:293
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:301
msgctxt "@action:inmenu"
msgid "Delete Model"
msgstr "Odstranit model"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:301
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:309
msgctxt "@action:inmenu"
msgid "Ce&nter Model on Platform"
msgstr "&Centerovat model na podložce"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:307
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:315
msgctxt "@action:inmenu menubar:edit"
msgid "&Group Models"
msgstr "Sesk&upit modely"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:327
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:335
msgctxt "@action:inmenu menubar:edit"
msgid "Ungroup Models"
msgstr "Rozdělit modely"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:337
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:345
msgctxt "@action:inmenu menubar:edit"
msgid "&Merge Models"
msgstr "Spo&jit modely"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:347
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:355
msgctxt "@action:inmenu"
msgid "&Multiply Model..."
msgstr "Náso&bení modelu..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:354
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:362
msgctxt "@action:inmenu menubar:edit"
msgid "Select All Models"
msgstr "Vybrat všechny modely"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:364
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:372
msgctxt "@action:inmenu menubar:edit"
msgid "Clear Build Plate"
msgstr "Vyčistit podložku"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:374
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:382
msgctxt "@action:inmenu menubar:file"
msgid "Reload All Models"
msgstr "Znovu načíst všechny modely"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:383
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:391
msgctxt "@action:inmenu menubar:edit"
msgid "Arrange All Models To All Build Plates"
msgstr "Uspořádejte všechny modely do všechpodložek"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:390
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:398
msgctxt "@action:inmenu menubar:edit"
msgid "Arrange All Models"
msgstr "Uspořádat všechny modely"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:398
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:406
msgctxt "@action:inmenu menubar:edit"
msgid "Arrange Selection"
msgstr "Uspořádat selekci"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:405
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:413
msgctxt "@action:inmenu menubar:edit"
msgid "Reset All Model Positions"
msgstr "Resetovat všechny pozice modelů"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:412
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:420
msgctxt "@action:inmenu menubar:edit"
msgid "Reset All Model Transformations"
msgstr "Resetovat všechny transformace modelů"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:419
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:429
msgctxt "@action:inmenu menubar:file"
msgid "&Open File(s)..."
msgstr "&Otevřít soubor(y)..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:427
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:439
msgctxt "@action:inmenu menubar:file"
msgid "&New Project..."
msgstr "&Nový projekt..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:434
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:446
msgctxt "@action:inmenu menubar:help"
msgid "Show Configuration Folder"
msgstr "Zobrazit složku s konfigurací"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:441
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:538
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:453
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:550
msgctxt "@action:menu"
msgid "Configure setting visibility..."
msgstr "Konfigurovat viditelnost nastavení..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:448
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:460
msgctxt "@action:menu"
msgid "&Marketplace"
msgstr "Mark&et"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:266
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:257
msgctxt "@label"
msgid "This package will be installed after restarting."
msgstr "Tento balíček bude nainstalován po restartování."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:459
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:15
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:450
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:17
msgctxt "@title:tab"
msgid "General"
msgstr "Obecné"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:462
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:453
msgctxt "@title:tab"
msgid "Settings"
msgstr "Nastavení"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:464
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:455
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:16
msgctxt "@title:tab"
msgid "Printers"
msgstr "Tiskárny"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:468
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:459
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:34
msgctxt "@title:tab"
msgid "Profiles"
msgstr "Profily"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:587
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:576
msgctxt "@title:window %1 is the application name"
msgid "Closing %1"
msgstr "Zavírám %1"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:588
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:600
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:577
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:589
msgctxt "@label %1 is the application name"
msgid "Are you sure you want to exit %1?"
msgstr "Doopravdy chcete zavřít %1?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:638
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:627
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:19
msgctxt "@title:window"
msgid "Open file(s)"
msgstr "Otevřít soubor(y)"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:744
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:737
msgctxt "@window:title"
msgid "Install Package"
msgstr "Nainstalovat balíček"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:752
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:745
msgctxt "@title:window"
msgid "Open File(s)"
msgstr "Otevřít Soubor(y)"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:755
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:748
msgctxt "@text:window"
msgid "We have found one or more G-Code files within the files you have selected. You can only open one G-Code file at a time. If you want to open a G-Code file, please just select only one."
msgstr "Ve vybraných souborech jsme našli jeden nebo více souborů G-kódu. Naraz můžete otevřít pouze jeden soubor G-kódu. Pokud chcete otevřít soubor G-Code, vyberte pouze jeden."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:858
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:857
msgctxt "@title:window"
msgid "Add Printer"
msgstr "Přidat tiskárnu"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:866
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:865
msgctxt "@title:window"
msgid "What's New"
msgstr "Co je nového"
@@ -3727,24 +3786,34 @@ msgstr "Chyba v Python trackovací knihovně"
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:159
msgctxt "@label"
msgid "Polygon packing library, developed by Prusa Research"
-msgstr ""
+msgstr "Knihovna pro plošnou optimalizaci vyvinutá Prusa Research"
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:160
msgctxt "@label"
msgid "Python bindings for libnest2d"
-msgstr ""
+msgstr "Propojení libnest2d s jazykem Python"
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:161
+msgctxt "@label"
+msgid "Support library for system keyring access"
+msgstr "Podpůrná knihovna pro přístup k systémové klíčence"
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:162
msgctxt "@label"
+msgid "Python extensions for Microsoft Windows"
+msgstr "Python rozšíření pro Microsoft Windows"
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:163
+msgctxt "@label"
msgid "Font"
msgstr "Font"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:163
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:164
msgctxt "@label"
msgid "SVG icons"
msgstr "Ikony SVG"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:164
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:165
msgctxt "@label"
msgid "Linux cross-distribution application deployment"
msgstr "Linux cross-distribution application deployment"
@@ -3754,22 +3823,22 @@ msgctxt "@title:window"
msgid "Open project file"
msgstr "Otevřít soubor s projektem"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:93
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:88
msgctxt "@text:window"
msgid "This is a Cura project file. Would you like to open it as a project or import the models from it?"
msgstr "Toto je soubor projektu Cura. Chcete jej otevřít jako projekt nebo importovat z něj modely?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:103
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:98
msgctxt "@text:window"
msgid "Remember my choice"
msgstr "Pamatuj si moji volbu"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:122
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:117
msgctxt "@action:button"
msgid "Open as project"
msgstr "Otevřít jako projekt"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:131
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:126
msgctxt "@action:button"
msgid "Import models"
msgstr "Importovat modely"
@@ -3786,6 +3855,9 @@ msgid ""
"Would you like to Keep these changed settings after switching profiles?\n"
"Alternatively, you can discard the changes to load the defaults from '%1'."
msgstr ""
+"Upravili jste některá nastavení profilu.\n"
+"Chcete tato změněná nastavení zachovat i po přepnutí profilů?\n"
+"V opačném případě můžete změny smazat a načíst výchozí hodnoty z '%1'."
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:111
msgctxt "@title:column"
@@ -3798,7 +3870,7 @@ msgid "Current changes"
msgstr "Aktuální změny"
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:158
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:747
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:733
msgctxt "@option:discardOrKeep"
msgid "Always ask me this"
msgstr "Vždy se zeptat"
@@ -3823,12 +3895,12 @@ msgctxt "@action:button"
msgid "Keep changes"
msgstr "Zanechat změny"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:64
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:59
msgctxt "@text:window"
msgid "We have found one or more project file(s) within the files you have selected. You can open only one project file at a time. We suggest to only import models from those files. Would you like to proceed?"
msgstr "Ve vybraných souborech jsme našli jeden nebo více projektových souborů. Naraz můžete otevřít pouze jeden soubor projektu. Doporučujeme importovat pouze modely z těchto souborů. Chtěli byste pokračovat?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:99
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:94
msgctxt "@action:button"
msgid "Import all as models"
msgstr "Importovat vše jako modely"
@@ -3984,7 +4056,7 @@ msgctxt "@label"
msgid "Material"
msgstr "Materiál"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/CustomConfiguration.qml:394
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/CustomConfiguration.qml:407
msgctxt "@label"
msgid "Use glue for better adhesion with this material combination."
msgstr "S touto kombinací materiálu pro lepší adhezi použijte lepidlo."
@@ -4010,17 +4082,17 @@ msgctxt "@label"
msgid "Number of Copies"
msgstr "Počet kopií"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:33
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:41
msgctxt "@title:menu menubar:file"
msgid "&Save Project..."
msgstr "&Uložit projekt..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:54
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:74
msgctxt "@title:menu menubar:file"
msgid "&Export..."
msgstr "&Exportovat..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:65
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:85
msgctxt "@action:inmenu menubar:file"
msgid "Export Selection..."
msgstr "Výběr exportu..."
@@ -4040,6 +4112,11 @@ msgctxt "@label:category menu label"
msgid "Generic"
msgstr "Obecné"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/OpenFilesMenu.qml:15
+msgctxt "@title:menu menubar:file"
+msgid "Open File(s)..."
+msgstr "Otevřít soubor(y)..."
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/PrinterMenu.qml:25
msgctxt "@label:category menu label"
msgid "Network enabled printers"
@@ -4055,6 +4132,11 @@ msgctxt "@title:menu menubar:file"
msgid "Open &Recent"
msgstr "Otevřít &Poslední"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SaveProjectMenu.qml:15
+msgctxt "@title:menu menubar:file"
+msgid "Save Project..."
+msgstr "Uložit projekt..."
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingsMenu.qml:15
msgctxt "@title:menu menubar:settings"
msgid "&Printer"
@@ -4080,17 +4162,17 @@ msgctxt "@action:inmenu"
msgid "Disable Extruder"
msgstr "Zakázat Extruder"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:13
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:16
msgctxt "@action:inmenu"
msgid "Visible Settings"
msgstr "Viditelná nastavení"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:42
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:45
msgctxt "@action:inmenu"
msgid "Collapse All Categories"
msgstr "Sbalit všechny kategorie"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:51
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:54
msgctxt "@action:inmenu"
msgid "Manage Setting Visibility..."
msgstr "Spravovat nastavení viditelnosti ..."
@@ -4100,22 +4182,22 @@ msgctxt "@action:inmenu menubar:view"
msgid "&Camera position"
msgstr "Pozice &kamery"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:44
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:45
msgctxt "@action:inmenu menubar:view"
msgid "Camera view"
msgstr "Pohled kamery"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:47
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:48
msgctxt "@action:inmenu menubar:view"
msgid "Perspective"
msgstr "Perspektiva"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:59
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:60
msgctxt "@action:inmenu menubar:view"
msgid "Orthographic"
msgstr "Ortografický"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:80
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:81
msgctxt "@action:inmenu menubar:view"
msgid "&Build plate"
msgstr "Pod&ložka"
@@ -4160,12 +4242,12 @@ msgctxt "@label:MonitorStatus"
msgid "Please remove the print"
msgstr "Prosím odstraňte výtisk"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:325
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:326
msgctxt "@label"
msgid "Abort Print"
msgstr "Zrušit tisk"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:337
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:338
msgctxt "@label"
msgid "Are you sure you want to abort the print?"
msgstr "Jste si jist, že chcete zrušit tisknutí?"
@@ -4194,9 +4276,9 @@ msgstr "Přesahy na tomto modelu nejsou podporovány."
msgctxt "@label %1 is the number of settings it overrides."
msgid "Overrides %1 setting."
msgid_plural "Overrides %1 settings."
-msgstr[0] ""
-msgstr[1] ""
-msgstr[2] ""
+msgstr[0] "Přepíše %1 nastavení."
+msgstr[1] "Přepíše %1 nastavení."
+msgstr[2] "Přepíše %1 nastavení."
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/ObjectSelector.qml:59
msgctxt "@label"
@@ -4208,301 +4290,301 @@ msgctxt "@label"
msgid "Interface"
msgstr "Rozhranní"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:216
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:209
msgctxt "@label"
msgid "Currency:"
msgstr "Měna:"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:229
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:222
msgctxt "@label"
msgid "Theme:"
msgstr "Styl:"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:285
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:267
msgctxt "@label"
msgid "You will need to restart the application for these changes to have effect."
msgstr "Aby se tyto změny projevily, budete muset aplikaci restartovat."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:302
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:284
msgctxt "@info:tooltip"
msgid "Slice automatically when changing settings."
msgstr "Slicovat automaticky při změně nastavení."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:310
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:292
msgctxt "@option:check"
msgid "Slice automatically"
msgstr "Slicovat automaticky"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:324
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:306
msgctxt "@label"
msgid "Viewport behavior"
msgstr "Chování výřezu"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:332
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:314
msgctxt "@info:tooltip"
msgid "Highlight unsupported areas of the model in red. Without support these areas will not print properly."
msgstr "Zvýraznit červeně místa modelu bez podpor. Bez podpor tyto místa nebudou správně vytisknuta."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:341
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:323
msgctxt "@option:check"
msgid "Display overhang"
msgstr "Zobrazit převis"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:351
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:333
msgctxt "@info:tooltip"
msgid "Highlight missing or extraneous surfaces of the model using warning signs. The toolpaths will often be missing parts of the intended geometry."
msgstr "Zvýraznit chybějící nebo vedlejší povrchy modelu pomocí varovných značek. Dráhám nástrojů budou často chybět části zamýšlené geometrie."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:360
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:342
msgctxt "@option:check"
msgid "Display model errors"
msgstr "Zobrazovat chyby modelu"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:368
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:350
msgctxt "@info:tooltip"
msgid "Moves the camera so the model is in the center of the view when a model is selected"
msgstr "Při výběru modelu pohybuje kamerou tak, aby byl model ve středu pohledu"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:373
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:355
msgctxt "@action:button"
msgid "Center camera when item is selected"
msgstr "Vycentrovat kameru pokud je vybrána položka"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:383
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:365
msgctxt "@info:tooltip"
msgid "Should the default zoom behavior of cura be inverted?"
msgstr "Mělo by být výchozí chování přiblížení u cury invertováno?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:388
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:370
msgctxt "@action:button"
msgid "Invert the direction of camera zoom."
msgstr "Obrátit směr přibližování kamery."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:404
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:386
msgctxt "@info:tooltip"
msgid "Should zooming move in the direction of the mouse?"
msgstr "Mělo by se přibližování pohybovat ve směru myši?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:404
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:386
msgctxt "@info:tooltip"
msgid "Zooming towards the mouse is not supported in the orthographic perspective."
msgstr "V pravoúhlé perspektivě není podporováno přiblížení směrem k myši."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:409
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:391
msgctxt "@action:button"
msgid "Zoom toward mouse direction"
msgstr "Přiblížit směrem k směru myši"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:435
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:417
msgctxt "@info:tooltip"
msgid "Should models on the platform be moved so that they no longer intersect?"
msgstr "Měly by se modely na platformě pohybovat tak, aby se již neprotínaly?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:440
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:422
msgctxt "@option:check"
msgid "Ensure models are kept apart"
msgstr "Zajistěte, aby modely byly odděleny"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:449
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:431
msgctxt "@info:tooltip"
msgid "Should models on the platform be moved down to touch the build plate?"
msgstr "Měly by být modely na platformě posunuty dolů tak, aby se dotýkaly podložky?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:454
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:436
msgctxt "@option:check"
msgid "Automatically drop models to the build plate"
msgstr "Automaticky přetáhnout modely na podložku"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:466
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:448
msgctxt "@info:tooltip"
msgid "Show caution message in g-code reader."
msgstr "Zobrazte v čtečce g-kódu varovnou zprávu."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:475
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:457
msgctxt "@option:check"
msgid "Caution message in g-code reader"
msgstr "Upozornění ve čtečce G-kódu"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:483
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:465
msgctxt "@info:tooltip"
msgid "Should layer be forced into compatibility mode?"
msgstr "Měla by být vrstva vynucena do režimu kompatibility?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:488
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:470
msgctxt "@option:check"
msgid "Force layer view compatibility mode (restart required)"
msgstr "Vynutit režim kompatibility zobrazení vrstev (vyžaduje restart)"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:498
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:480
msgctxt "@info:tooltip"
msgid "Should Cura open at the location it was closed?"
msgstr "Měla by se Cura otevřít v místě, kde byla uzavřena?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:503
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:485
msgctxt "@option:check"
msgid "Restore window position on start"
msgstr "Při zapnutí obnovit pozici okna"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:513
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:495
msgctxt "@info:tooltip"
msgid "What type of camera rendering should be used?"
msgstr "Jaký typ kamery by se měl použít?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:520
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:502
msgctxt "@window:text"
msgid "Camera rendering:"
msgstr "Vykreslování kamery:"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:531
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:509
msgid "Perspective"
msgstr "Perspektiva"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:532
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:510
msgid "Orthographic"
msgstr "Ortografický"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:563
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:548
msgctxt "@label"
msgid "Opening and saving files"
msgstr "Otevírám a ukládám soubory"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:570
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:555
msgctxt "@info:tooltip"
msgid "Should opening files from the desktop or external applications open in the same instance of Cura?"
msgstr "Měli by se soubory z plochy, nebo externích aplikací otevírat ve stejné instanci Cury?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:575
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:560
msgctxt "@option:check"
msgid "Use a single instance of Cura"
msgstr "Používat pouze jednu instanci programu Cura"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:585
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:570
msgctxt "@info:tooltip"
msgid "Should models be scaled to the build volume if they are too large?"
msgstr "Měly by být modely upraveny na velikost podložky, pokud jsou příliš velké?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:590
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:575
msgctxt "@option:check"
msgid "Scale large models"
msgstr "Škálovat velké modely"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:600
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:585
msgctxt "@info:tooltip"
msgid "An model may appear extremely small if its unit is for example in meters rather than millimeters. Should these models be scaled up?"
msgstr "Model se může jevit velmi malý, pokud je jeho jednotka například v metrech, nikoli v milimetrech. Měly by být tyto modely škálovány?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:605
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:590
msgctxt "@option:check"
msgid "Scale extremely small models"
msgstr "Škálovat extrémně malé modely"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:615
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:600
msgctxt "@info:tooltip"
msgid "Should models be selected after they are loaded?"
msgstr "Měly by být modely vybrány po načtení?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:620
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:605
msgctxt "@option:check"
msgid "Select models when loaded"
msgstr "Vybrat modely po načtení"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:630
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:615
msgctxt "@info:tooltip"
msgid "Should a prefix based on the printer name be added to the print job name automatically?"
msgstr "Je třeba k názvu tiskové úlohy přidat předponu založenou na názvu tiskárny automaticky?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:635
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:620
msgctxt "@option:check"
msgid "Add machine prefix to job name"
msgstr "Přidat předponu zařízení před název úlohy"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:645
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:630
msgctxt "@info:tooltip"
msgid "Should a summary be shown when saving a project file?"
msgstr "Mělo by se při ukládání souboru projektu zobrazit souhrn?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:649
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:634
msgctxt "@option:check"
msgid "Show summary dialog when saving project"
msgstr "Zobrazit souhrnný dialog při ukládání projektu"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:659
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:644
msgctxt "@info:tooltip"
msgid "Default behavior when opening a project file"
msgstr "Výchozí chování při otevírání souboru"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:667
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:652
msgctxt "@window:text"
msgid "Default behavior when opening a project file: "
msgstr "Výchozí chování při otevření souboru s projektem: "
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:681
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:666
msgctxt "@option:openProject"
msgid "Always ask me this"
msgstr "Vždy se zeptat"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:682
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:667
msgctxt "@option:openProject"
msgid "Always open as a project"
msgstr "Vždy otevírat jako projekt"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:683
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:668
msgctxt "@option:openProject"
msgid "Always import models"
msgstr "Vždy importovat modely"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:719
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:705
msgctxt "@info:tooltip"
msgid "When you have made changes to a profile and switched to a different one, a dialog will be shown asking whether you want to keep your modifications or not, or you can choose a default behaviour and never show that dialog again."
msgstr "Pokud jste provedli změny v profilu a přepnuli na jiný, zobrazí se dialogové okno s dotazem, zda si přejete zachovat své modifikace nebo ne, nebo si můžete zvolit výchozí chování a už nikdy toto dialogové okno nezobrazovat."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:728
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:714
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedQualityProfileSelector.qml:52
msgctxt "@label"
msgid "Profiles"
msgstr "Profily"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:733
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:719
msgctxt "@window:text"
msgid "Default behavior for changed setting values when switching to a different profile: "
msgstr "Výchozí chování pro změněné hodnoty nastavení při přepnutí na jiný profil: "
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:748
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:734
msgctxt "@option:discardOrKeep"
msgid "Always discard changed settings"
msgstr "Vždy smazat změněné nastavení"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:749
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:735
msgctxt "@option:discardOrKeep"
msgid "Always transfer changed settings to new profile"
msgstr "Vždy přesunout nastavení do nového profilu"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:783
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:770
msgctxt "@label"
msgid "Privacy"
msgstr "Soukromí"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:790
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:777
msgctxt "@info:tooltip"
msgid "Should Cura check for updates when the program is started?"
msgstr "Měla by Cura zkontrolovat aktualizace při spuštění programu?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:795
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:782
msgctxt "@option:check"
msgid "Check for updates on start"
msgstr "Zkontrolovat aktualizace při zapnutí"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:805
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:792
msgctxt "@info:tooltip"
msgid "Should anonymous data about your print be sent to Ultimaker? Note, no models, IP addresses or other personally identifiable information is sent or stored."
msgstr "Měla by být anonymní data o vašem tisku zaslána společnosti Ultimaker? Upozorňujeme, že nejsou odesílány ani ukládány žádné modely, adresy IP ani jiné osobní údaje."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:810
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:797
msgctxt "@option:check"
msgid "Send (anonymous) print information"
msgstr "Posílat (anonymní) informace o tisku"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:819
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:806
msgctxt "@action:button"
msgid "More information"
msgstr "Více informací"
@@ -4542,55 +4624,65 @@ msgctxt "@action:button"
msgid "Export"
msgstr "Export"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:234
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:199
+msgctxt "@action:button Sending materials to printers"
+msgid "Sync with Printers"
+msgstr "Synchronizovat s tiskárnami"
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:248
msgctxt "@action:label"
msgid "Printer"
msgstr "Tiskárna"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:298
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:274
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:312
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:277
msgctxt "@title:window"
msgid "Confirm Remove"
msgstr "Potvrdit odstranění"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:301
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:275
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:315
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:278
msgctxt "@label (%1 is object name)"
msgid "Are you sure you wish to remove %1? This cannot be undone!"
msgstr "Doopravdy chcete odstranit %1? Toto nelze vrátit zpět!"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:315
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:323
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:329
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:337
msgctxt "@title:window"
msgid "Import Material"
msgstr "Importovat materiál"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:324
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:338
msgctxt "@info:status Don't translate the XML tags or !"
msgid "Could not import material %1: %2"
msgstr "Nelze importovat materiál %1: %2"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:328
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:342
msgctxt "@info:status Don't translate the XML tag !"
msgid "Successfully imported material %1"
msgstr "Úspěšně importován materiál %1"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:346
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:354
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:360
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:368
msgctxt "@title:window"
msgid "Export Material"
msgstr "Exportovat materiál"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:358
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:372
msgctxt "@info:status Don't translate the XML tags and !"
msgid "Failed to export material to %1: %2"
msgstr "Neúspěch při exportu materiálu do %1: %2"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:364
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:378
msgctxt "@info:status Don't translate the XML tag !"
msgid "Successfully exported material to %1"
msgstr "Úspěšné exportování materiálu do %1"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:388
+msgctxt "@title:window"
+msgid "Export All Materials"
+msgstr "Exportovat všechny materiály"
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:72
msgctxt "@title"
msgid "Information"
@@ -4702,53 +4794,53 @@ msgctxt "@info"
msgid "Please provide a name for this profile."
msgstr "Prosím uveďte jméno pro tento profil."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:260
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:263
msgctxt "@title:window"
msgid "Duplicate Profile"
msgstr "Duplikovat profil"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:291
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:294
msgctxt "@title:window"
msgid "Rename Profile"
msgstr "Přejmenovat profil"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:304
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:307
msgctxt "@title:window"
msgid "Import Profile"
msgstr "Importovat profil"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:333
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:336
msgctxt "@title:window"
msgid "Export Profile"
msgstr "Exportovat profil"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:396
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:399
msgctxt "@label %1 is printer name"
msgid "Printer: %1"
msgstr "Tiskárna: %1"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:554
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:557
msgctxt "@action:button"
msgid "Update profile with current settings/overrides"
msgstr "Aktualizovat profil s aktuálním nastavení/přepsánímy"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:561
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:564
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Custom/QualitiesWithIntentMenu.qml:244
msgctxt "@action:button"
msgid "Discard current changes"
msgstr "Zrušit aktuální změny"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:580
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:583
msgctxt "@action:label"
msgid "This profile uses the defaults specified by the printer, so it has no settings/overrides in the list below."
msgstr "Tento profil používá výchozí nastavení zadaná tiskárnou, takže nemá žádná nastavení / přepíše v níže uvedeném seznamu."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:588
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:591
msgctxt "@action:label"
msgid "Your current settings match the selected profile."
msgstr "Vaše aktuální nastavení odpovídá vybranému profilu."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:606
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:609
msgctxt "@title:tab"
msgid "Global Settings"
msgstr "Globální nastavení"
@@ -4778,12 +4870,12 @@ msgctxt "@title:column"
msgid "Unit"
msgstr "Jednotka"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:14
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:16
msgctxt "@title:tab"
msgid "Setting Visibility"
msgstr "Nastavení zobrazení"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:46
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:48
msgctxt "@label:textbox"
msgid "Check all"
msgstr "Zkontrolovat vše"
@@ -5122,27 +5214,27 @@ msgctxt "@label:textbox"
msgid "Search settings"
msgstr "Prohledat nastavení"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:456
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:468
msgctxt "@action:menu"
msgid "Copy value to all extruders"
msgstr "Kopírovat hodnotu na všechny extrudery"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:465
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:477
msgctxt "@action:menu"
msgid "Copy all changed values to all extruders"
msgstr "Kopírovat všechny změněné hodnoty na všechny extrudery"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:502
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:514
msgctxt "@action:menu"
msgid "Hide this setting"
msgstr "Schovat toto nastavení"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:515
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:527
msgctxt "@action:menu"
msgid "Don't show this setting"
msgstr "Neukazovat toto nastavení"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:519
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:531
msgctxt "@action:menu"
msgid "Keep this setting visible"
msgstr "Nechat toto nastavení viditelné"
@@ -5160,7 +5252,7 @@ msgstr "Přední pohled"
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/ViewOrientationControls.qml:53
msgctxt "@info:tooltip"
msgid "Top View"
-msgstr "Pohled ze shora"
+msgstr "Pohled seshora"
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/ViewOrientationControls.qml:66
msgctxt "@info:tooltip"
@@ -5202,11 +5294,6 @@ msgctxt "@button"
msgid "Add printer manually"
msgstr "Přidat tiskárnu manuálně"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddCloudPrintersView.qml:218
-msgctxt "@button"
-msgid "Finish"
-msgstr "Dokončit"
-
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddLocalPrinterScrollView.qml:230
msgctxt "@label"
msgid "Manufacturer"
@@ -5225,7 +5312,7 @@ msgstr "Název tiskárny"
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddLocalPrinterScrollView.qml:274
msgctxt "@text"
msgid "Please name your printer"
-msgstr ""
+msgstr "Pojmenujte prosím svou tiskárnu"
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddNetworkOrLocalPrinterContent.qml:24
msgctxt "@label"
@@ -5313,32 +5400,32 @@ msgctxt "@button"
msgid "Connect"
msgstr "Připojit"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:43
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/ChangelogContent.qml:24
msgctxt "@label"
-msgid "Ultimaker Account"
-msgstr "Účet Ultimaker"
+msgid "Release Notes"
+msgstr "Poznámky k vydání"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:84
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:124
msgctxt "@text"
-msgid "Your key to connected 3D printing"
-msgstr "Váš klíč k propojenému 3D tisku"
+msgid "Add material settings and plugins from the Marketplace"
+msgstr "Přidat nastavení materiálů a moduly z Obchodu"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:101
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:154
msgctxt "@text"
-msgid "- Customize your experience with more print profiles and plugins"
-msgstr "- Přizpůsobte si své zážitky pomocí více profilů tisku a modulů"
+msgid "Backup and sync your material settings and plugins"
+msgstr "Zálohovat a synchronizovat nastavení materiálů a moduly"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:104
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:184
msgctxt "@text"
-msgid "- Stay flexible by syncing your setup and loading it anywhere"
-msgstr "- Zůstaňte flexibilní díky synchronizaci nastavení a přístupu k ní kdekoli"
+msgid "Share ideas and get help from 48,000+ users in the Ultimaker Community"
+msgstr "Sdílejte nápady a získejte pomoc od více než 48 0000 uživatelů v Ultimaker komunitě"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:107
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:217
msgctxt "@text"
-msgid "- Increase efficiency with a remote workflow on Ultimaker printers"
-msgstr "- Zvyšte efektivitu pomocí vzdáleného pracovního postupu na tiskárnách Ultimaker"
+msgid "Create a free Ultimaker Account"
+msgstr "Vytvořit účet Ultimaker zdarma"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:157
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:230
msgctxt "@button"
msgid "Skip"
msgstr "Přeskočit"
@@ -5398,29 +5485,30 @@ msgctxt "@button"
msgid "Decline and close"
msgstr "Odmítnout a zavřít"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:29
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:56
msgctxt "@label"
msgid "Welcome to Ultimaker Cura"
msgstr "Vítejte v Ultimaker Cura"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:47
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:68
msgctxt "@text"
-msgid ""
-"Please follow these steps to set up\n"
-"Ultimaker Cura. This will only take a few moments."
-msgstr ""
-"Při nastavování postupujte podle těchto pokynů\n"
-"Ultimaker Cura. Bude to trvat jen několik okamžiků."
+msgid "Please follow these steps to set up Ultimaker Cura. This will only take a few moments."
+msgstr "Při nastavování postupujte podle těchto pokynů Ultimaker Cura. Bude to trvat jen několik okamžiků."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:58
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:86
msgctxt "@button"
msgid "Get started"
msgstr "Začínáme"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:24
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:28
msgctxt "@label"
-msgid "What's new in Ultimaker Cura"
-msgstr "Co je nového v Ultimaker Cura"
+msgid "What's New"
+msgstr "Co je nového"
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Widgets/ComboBox.qml:24
+msgctxt "@label"
+msgid "No items to select from"
+msgstr "Není z čeho vybírat"
#: ModelChecker/plugin.json
msgctxt "description"
@@ -5502,6 +5590,16 @@ msgctxt "name"
msgid "Cura Profile Writer"
msgstr "Zapisovač Cura profilu"
+#: DigitalLibrary/plugin.json
+msgctxt "description"
+msgid "Connects to the Digital Library, allowing Cura to open files from and save files to the Digital Library."
+msgstr "Připojuje k Digitální knihovně. Umožňuje Cuře otevírat a ukládat soubory z a do Digitální knihovny."
+
+#: DigitalLibrary/plugin.json
+msgctxt "name"
+msgid "Ultimaker Digital Library"
+msgstr "Digitální knihovna Ultimaker"
+
#: FirmwareUpdateChecker/plugin.json
msgctxt "description"
msgid "Checks for firmware updates."
@@ -5965,12 +6063,32 @@ msgstr "Aktualizace verze 4.6.2 na 4.7"
#: VersionUpgrade/VersionUpgrade47to48/plugin.json
msgctxt "description"
msgid "Upgrades configurations from Cura 4.7 to Cura 4.8."
-msgstr ""
+msgstr "Aktualizuje konfigurace z Cura 4.7 na Cura 4.8."
#: VersionUpgrade/VersionUpgrade47to48/plugin.json
msgctxt "name"
msgid "Version Upgrade 4.7 to 4.8"
-msgstr ""
+msgstr "Aktualizace verze 4.7 na 4.8"
+
+#: VersionUpgrade/VersionUpgrade48to49/plugin.json
+msgctxt "description"
+msgid "Upgrades configurations from Cura 4.8 to Cura 4.9."
+msgstr "Aktualizuje konfigurace z Cura 4.8 na Cura 4.9."
+
+#: VersionUpgrade/VersionUpgrade48to49/plugin.json
+msgctxt "name"
+msgid "Version Upgrade 4.8 to 4.9"
+msgstr "Aktualizace verze 4.8 na 4.9"
+
+#: VersionUpgrade/VersionUpgrade49to410/plugin.json
+msgctxt "description"
+msgid "Upgrades configurations from Cura 4.9 to Cura 4.10."
+msgstr "Aktualizuje konfigurace z Cura 4.9 na Cura 4.10."
+
+#: VersionUpgrade/VersionUpgrade49to410/plugin.json
+msgctxt "name"
+msgid "Version Upgrade 4.9 to 4.10"
+msgstr "Aktualizace verze 4.9 na 4.10"
#: X3DReader/plugin.json
msgctxt "description"
@@ -6002,6 +6120,97 @@ msgctxt "name"
msgid "X-Ray View"
msgstr "Rentgenový pohled"
+#~ msgctxt "@info:status"
+#~ msgid "Global stack is missing."
+#~ msgstr "Chybí globální zásobník."
+
+#~ msgctxt "@info:status"
+#~ msgid "Your model is not manifold. The highlighted areas indicate either missing or extraneous surfaces."
+#~ msgstr "Váš model není rozmanitý. Zvýrazněné oblasti indikují buď chybějící, či vedlejší povrch."
+
+#~ msgctxt "@info:title"
+#~ msgid "Model errors"
+#~ msgstr "Chyby modelu"
+
+#~ msgctxt "@label:listbox"
+#~ msgid "Layer thickness"
+#~ msgstr "Tloušťka vrstvy"
+
+#~ msgctxt "@label"
+#~ msgid "Your key to connected 3D printing"
+#~ msgstr "Váš klíč k propojenému 3D tisku"
+
+#~ msgctxt "@text"
+#~ msgid ""
+#~ "- Customize your experience with more print profiles and plugins\n"
+#~ "- Stay flexible by syncing your setup and loading it anywhere\n"
+#~ "- Increase efficiency with a remote workflow on Ultimaker printers"
+#~ msgstr ""
+#~ "- Přizpůsobte si své zážitky pomocí více profilů tisku a modulů\n"
+#~ "- Zůstaňte flexibilní díky synchronizaci nastavení a přístupu k ní kdekoli\n"
+#~ "- Zvyšte efektivitu pomocí vzdáleného pracovního postupu na tiskárnách Ultimaker"
+
+#~ msgctxt "@button"
+#~ msgid "Create account"
+#~ msgstr "Vytvořit účet"
+
+#~ msgctxt "@action:inmenu menubar:edit"
+#~ msgid "Delete Selected Model"
+#~ msgid_plural "Delete Selected Models"
+#~ msgstr[0] "Smazat vybraný model"
+#~ msgstr[1] "Smazat vybrané modely"
+#~ msgstr[2] "Smazat vybrané modely"
+
+#~ msgctxt "@action:inmenu menubar:edit"
+#~ msgid "Center Selected Model"
+#~ msgid_plural "Center Selected Models"
+#~ msgstr[0] "Centrovat vybraný model"
+#~ msgstr[1] "Centrovat vybrané modely"
+#~ msgstr[2] "Centrovat vybrané modely"
+
+#~ msgctxt "@action:inmenu menubar:edit"
+#~ msgid "Multiply Selected Model"
+#~ msgid_plural "Multiply Selected Models"
+#~ msgstr[0] "Násobit vybraný model"
+#~ msgstr[1] "Násobit vybrané modely"
+#~ msgstr[2] "Násobit vybrané modely"
+
+#~ msgctxt "@button"
+#~ msgid "Finish"
+#~ msgstr "Dokončit"
+
+#~ msgctxt "@label"
+#~ msgid "Ultimaker Account"
+#~ msgstr "Účet Ultimaker"
+
+#~ msgctxt "@text"
+#~ msgid "Your key to connected 3D printing"
+#~ msgstr "Váš klíč k propojenému 3D tisku"
+
+#~ msgctxt "@text"
+#~ msgid "- Customize your experience with more print profiles and plugins"
+#~ msgstr "- Přizpůsobte si své zážitky pomocí více profilů tisku a modulů"
+
+#~ msgctxt "@text"
+#~ msgid "- Stay flexible by syncing your setup and loading it anywhere"
+#~ msgstr "- Zůstaňte flexibilní díky synchronizaci nastavení a přístupu k ní kdekoli"
+
+#~ msgctxt "@text"
+#~ msgid "- Increase efficiency with a remote workflow on Ultimaker printers"
+#~ msgstr "- Zvyšte efektivitu pomocí vzdáleného pracovního postupu na tiskárnách Ultimaker"
+
+#~ msgctxt "@text"
+#~ msgid ""
+#~ "Please follow these steps to set up\n"
+#~ "Ultimaker Cura. This will only take a few moments."
+#~ msgstr ""
+#~ "Při nastavování postupujte podle těchto pokynů\n"
+#~ "Ultimaker Cura. Bude to trvat jen několik okamžiků."
+
+#~ msgctxt "@label"
+#~ msgid "What's new in Ultimaker Cura"
+#~ msgstr "Co je nového v Ultimaker Cura"
+
#~ msgctxt "@label ({} is object name)"
#~ msgid "Are you sure you wish to remove {}? This cannot be undone!"
#~ msgstr "Doopravdy chcete odstranit {}? Toto nelze vrátit zpět!"
diff --git a/resources/i18n/cs_CZ/fdmextruder.def.json.po b/resources/i18n/cs_CZ/fdmextruder.def.json.po
index 03847d2514..e2833ba4c3 100644
--- a/resources/i18n/cs_CZ/fdmextruder.def.json.po
+++ b/resources/i18n/cs_CZ/fdmextruder.def.json.po
@@ -1,13 +1,13 @@
# Cura
-# Copyright (C) 2020 Ultimaker B.V.
+# Copyright (C) 2021 Ultimaker B.V.
# This file is distributed under the same license as the Cura package.
# Ruben Dulek , 2020.
#
msgid ""
msgstr ""
-"Project-Id-Version: Cura 4.8\n"
+"Project-Id-Version: Cura 4.10\n"
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
-"POT-Creation-Date: 2020-10-19 13:15+0000\n"
+"POT-Creation-Date: 2021-06-10 17:35+0000\n"
"PO-Revision-Date: 2020-02-20 17:30+0100\n"
"Last-Translator: DenyCZ \n"
"Language-Team: DenyCZ \n"
diff --git a/resources/i18n/cs_CZ/fdmprinter.def.json.po b/resources/i18n/cs_CZ/fdmprinter.def.json.po
index 7dd0b5d797..fca828a2a6 100644
--- a/resources/i18n/cs_CZ/fdmprinter.def.json.po
+++ b/resources/i18n/cs_CZ/fdmprinter.def.json.po
@@ -1,21 +1,21 @@
# Cura
-# Copyright (C) 2020 Ultimaker B.V.
+# Copyright (C) 2021 Ultimaker B.V.
# This file is distributed under the same license as the Cura package.
# Ruben Dulek , 2020.
#
msgid ""
msgstr ""
-"Project-Id-Version: Cura 4.8\n"
+"Project-Id-Version: Cura 4.10\n"
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
-"POT-Creation-Date: 2020-10-19 13:15+0000\n"
-"PO-Revision-Date: 2020-08-04 12:40+0200\n"
-"Last-Translator: DenyCZ \n"
+"POT-Creation-Date: 2021-06-10 17:35+0000\n"
+"PO-Revision-Date: 2021-04-04 19:37+0200\n"
+"Last-Translator: Miroslav Šustek \n"
"Language-Team: DenyCZ \n"
"Language: cs_CZ\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: Poedit 2.3\n"
+"X-Generator: Poedit 2.4.2\n"
#: fdmprinter.def.json
msgctxt "machine_settings label"
@@ -418,6 +418,26 @@ msgctxt "machine_extruders_share_heater description"
msgid "Whether the extruders share a single heater rather than each extruder having its own heater."
msgstr "Zda extrudéry sdílejí jeden ohřívač spíše než každý extrudér mající svůj vlastní ohřívač."
+#: fdmprinter.def.json
+msgctxt "machine_extruders_share_nozzle label"
+msgid "Extruders Share Nozzle"
+msgstr "Extrudery sdílí trysku"
+
+#: fdmprinter.def.json
+msgctxt "machine_extruders_share_nozzle description"
+msgid "Whether the extruders share a single nozzle rather than each extruder having its own nozzle. When set to true, it is expected that the printer-start gcode script properly sets up all extruders in an initial retraction state that is known and mutually compatible (either zero or one filament not retracted); in that case the initial retraction status is described, per extruder, by the 'machine_extruders_shared_nozzle_initial_retraction' parameter."
+msgstr "Určuje, zda extrudery sdílí jednu trysku namísto, aby měl každý extruder svou vlastní trysku. Pokud je zvoleno, předpokládá se, že počáteční G kód tiskárny správně nastaví všechny extrudery do známého stavu, který je vzájemně kompatibilní (všechny filamenty jsou zatažené nebo jen jeden je nezatažený). V tomto případě je počáteční stav zatažení určen pro každý extruder parametrem 'machine_extruders_shared_nozzle_initial_retraction'."
+
+#: fdmprinter.def.json
+msgctxt "machine_extruders_shared_nozzle_initial_retraction label"
+msgid "Shared Nozzle Initial Retraction"
+msgstr "Počáteční retrakce sdílené trysky"
+
+#: fdmprinter.def.json
+msgctxt "machine_extruders_shared_nozzle_initial_retraction description"
+msgid "How much the filament of each extruder is assumed to have been retracted from the shared nozzle tip at the completion of the printer-start gcode script; the value should be equal to or greater than the length of the common part of the nozzle's ducts."
+msgstr "Jak daleko je zatažen filament každého extruderu sdílené trysky po dokončení počátečního G kódu tiskárny. Tato hodnota by se měla rovnat nebo být vyšší než je délka společné části vedení trysky."
+
#: fdmprinter.def.json
msgctxt "machine_disallowed_areas label"
msgid "Disallowed Areas"
@@ -485,8 +505,8 @@ msgstr "Offset s extrudérem"
#: fdmprinter.def.json
msgctxt "machine_use_extruder_offset_to_offset_coords description"
-msgid "Apply the extruder offset to the coordinate system."
-msgstr "Naneste odsazení extrudéru na souřadnicový systém."
+msgid "Apply the extruder offset to the coordinate system. Affects all extruders."
+msgstr "Použít offset extruderu v souřadnicovém systému. Ovlivňuje všechny extrudery."
#: fdmprinter.def.json
msgctxt "extruder_prime_pos_z label"
@@ -880,8 +900,8 @@ msgstr "Násobitel šířky čáry v první vrstvě. Jejich zvýšení by mohlo
#: fdmprinter.def.json
msgctxt "shell label"
-msgid "Shell"
-msgstr "Shell"
+msgid "Walls"
+msgstr "Stěny"
#: fdmprinter.def.json
msgctxt "shell description"
@@ -948,166 +968,6 @@ msgctxt "wall_0_wipe_dist description"
msgid "Distance of a travel move inserted after the outer wall, to hide the Z seam better."
msgstr "Vzdálenost pohybového posunu vloženého za vnější stěnu, aby se skryla Z šev lépe."
-#: fdmprinter.def.json
-msgctxt "roofing_extruder_nr label"
-msgid "Top Surface Skin Extruder"
-msgstr "Nejvyšší povrchový extrudér"
-
-#: fdmprinter.def.json
-msgctxt "roofing_extruder_nr description"
-msgid "The extruder train used for printing the top most skin. This is used in multi-extrusion."
-msgstr "Vytlačovací stroj používaný pro tisk nejvyššího povrchu. To se používá při vícenásobném vytlačování."
-
-#: fdmprinter.def.json
-msgctxt "roofing_layer_count label"
-msgid "Top Surface Skin Layers"
-msgstr "Nejvyšší povrchová vrstva"
-
-#: fdmprinter.def.json
-msgctxt "roofing_layer_count description"
-msgid "The number of top most skin layers. Usually only one top most layer is sufficient to generate higher quality top surfaces."
-msgstr "Počet nejpřednějších vrstev pokožky. Obvykle stačí jedna horní vrstva nejvíce k vytvoření horních povrchů vyšší kvality."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_extruder_nr label"
-msgid "Top/Bottom Extruder"
-msgstr "Vrchní/spodní extruder"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_extruder_nr description"
-msgid "The extruder train used for printing the top and bottom skin. This is used in multi-extrusion."
-msgstr "Vytlačovací souprava použitá pro tisk horní a spodní pokožky. To se používá při vícenásobném vytlačování."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_thickness label"
-msgid "Top/Bottom Thickness"
-msgstr "Vrchní/spodní tloušťka"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_thickness description"
-msgid "The thickness of the top/bottom layers in the print. This value divided by the layer height defines the number of top/bottom layers."
-msgstr "Tloušťka horní / dolní vrstvy v tisku. Tato hodnota dělená výškou vrstvy definuje počet vrstev horní / dolní."
-
-#: fdmprinter.def.json
-msgctxt "top_thickness label"
-msgid "Top Thickness"
-msgstr "Vrchní tloušťka"
-
-#: fdmprinter.def.json
-msgctxt "top_thickness description"
-msgid "The thickness of the top layers in the print. This value divided by the layer height defines the number of top layers."
-msgstr "Tloušťka horních vrstev v tisku. Tato hodnota dělená výškou vrstvy definuje počet vrchních vrstev."
-
-#: fdmprinter.def.json
-msgctxt "top_layers label"
-msgid "Top Layers"
-msgstr "Vrchní vrstvy"
-
-#: fdmprinter.def.json
-msgctxt "top_layers description"
-msgid "The number of top layers. When calculated by the top thickness, this value is rounded to a whole number."
-msgstr "Počet vrchních vrstev. Při výpočtu podle nejvyšší tloušťky se tato hodnota zaokrouhlí na celé číslo."
-
-#: fdmprinter.def.json
-msgctxt "bottom_thickness label"
-msgid "Bottom Thickness"
-msgstr "Spodní tloušťka"
-
-#: fdmprinter.def.json
-msgctxt "bottom_thickness description"
-msgid "The thickness of the bottom layers in the print. This value divided by the layer height defines the number of bottom layers."
-msgstr "Tloušťka spodních vrstev v tisku. Tato hodnota dělená výškou vrstvy definuje počet spodních vrstev."
-
-#: fdmprinter.def.json
-msgctxt "bottom_layers label"
-msgid "Bottom Layers"
-msgstr "Spodní vrstvy"
-
-#: fdmprinter.def.json
-msgctxt "bottom_layers description"
-msgid "The number of bottom layers. When calculated by the bottom thickness, this value is rounded to a whole number."
-msgstr "Počet spodních vrstev. Při výpočtu podle tloušťky dna je tato hodnota zaokrouhlena na celé číslo."
-
-#: fdmprinter.def.json
-msgctxt "initial_bottom_layers label"
-msgid "Initial Bottom Layers"
-msgstr "Počáteční spodní vrstvy"
-
-#: fdmprinter.def.json
-msgctxt "initial_bottom_layers description"
-msgid "The number of initial bottom layers, from the build-plate upwards. When calculated by the bottom thickness, this value is rounded to a whole number."
-msgstr "Počet počátečních spodních vrstev od montážní desky směrem nahoru. Při výpočtu podle tloušťky dna je tato hodnota zaokrouhlena na celé číslo."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern label"
-msgid "Top/Bottom Pattern"
-msgstr "Vrchní/spodní vzor"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern description"
-msgid "The pattern of the top/bottom layers."
-msgstr "Vzor horní / dolní vrstvy."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern option lines"
-msgid "Lines"
-msgstr "Čáry"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern option concentric"
-msgid "Concentric"
-msgstr "Soustředný"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern option zigzag"
-msgid "Zig Zag"
-msgstr "Zig Zag"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 label"
-msgid "Bottom Pattern Initial Layer"
-msgstr "Vzor spodní počáteční vrstvy"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 description"
-msgid "The pattern on the bottom of the print on the first layer."
-msgstr "Vzor ve spodní části tisku na první vrstvě."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 option lines"
-msgid "Lines"
-msgstr "Čáry"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 option concentric"
-msgid "Concentric"
-msgstr "Soustředný"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 option zigzag"
-msgid "Zig Zag"
-msgstr "Zig Zag"
-
-#: fdmprinter.def.json
-msgctxt "connect_skin_polygons label"
-msgid "Connect Top/Bottom Polygons"
-msgstr "Připojte horní / dolní polygony"
-
-#: fdmprinter.def.json
-msgctxt "connect_skin_polygons description"
-msgid "Connect top/bottom skin paths where they run next to each other. For the concentric pattern enabling this setting greatly reduces the travel time, but because the connections can happen midway over infill this feature can reduce the top surface quality."
-msgstr "Propojte horní / dolní povrchové cesty tam, kde běží vedle sebe. Pro soustředné uspořádání umožňující toto nastavení výrazně zkracuje dobu cestování, ale protože se spojení může uskutečnit uprostřed výplně, může tato funkce snížit kvalitu povrchu."
-
-#: fdmprinter.def.json
-msgctxt "skin_angles label"
-msgid "Top/Bottom Line Directions"
-msgstr "Pokyny pro horní a dolní řádek"
-
-#: fdmprinter.def.json
-msgctxt "skin_angles description"
-msgid "A list of integer line directions to use when the top/bottom layers use the lines or zig zag pattern. Elements from the list are used sequentially as the layers progress and when the end of the list is reached, it starts at the beginning again. The list items are separated by commas and the whole list is contained in square brackets. Default is an empty list which means use the traditional default angles (45 and 135 degrees)."
-msgstr "Seznam směrů celočíselných čar, které se použijí, když horní / dolní vrstvy používají čáry nebo vzor zig zag. Prvky ze seznamu se používají postupně jako vrstvy a jakmile je dosaženo konce seznamu, začíná znovu na začátku. Položky seznamu jsou odděleny čárkami a celý seznam je obsažen v hranatých závorkách. Výchozí je prázdný seznam, což znamená použití tradičních výchozích úhlů (45 a 135 stupňů)."
-
#: fdmprinter.def.json
msgctxt "wall_0_inset label"
msgid "Outer Wall Inset"
@@ -1413,6 +1273,176 @@ msgctxt "z_seam_relative description"
msgid "When enabled, the z seam coordinates are relative to each part's centre. When disabled, the coordinates define an absolute position on the build plate."
msgstr "Pokud je tato možnost povolena, jsou souřadnice z švu vztaženy ke středu každé součásti. Pokud je zakázána, souřadnice definují absolutní polohu na sestavovací desce."
+#: fdmprinter.def.json
+msgctxt "top_bottom label"
+msgid "Top/Bottom"
+msgstr "Vrch/spodek"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom description"
+msgid "Top/Bottom"
+msgstr "Vrch/spodek"
+
+#: fdmprinter.def.json
+msgctxt "roofing_extruder_nr label"
+msgid "Top Surface Skin Extruder"
+msgstr "Nejvyšší povrchový extrudér"
+
+#: fdmprinter.def.json
+msgctxt "roofing_extruder_nr description"
+msgid "The extruder train used for printing the top most skin. This is used in multi-extrusion."
+msgstr "Vytlačovací stroj používaný pro tisk nejvyššího povrchu. To se používá při vícenásobném vytlačování."
+
+#: fdmprinter.def.json
+msgctxt "roofing_layer_count label"
+msgid "Top Surface Skin Layers"
+msgstr "Nejvyšší povrchová vrstva"
+
+#: fdmprinter.def.json
+msgctxt "roofing_layer_count description"
+msgid "The number of top most skin layers. Usually only one top most layer is sufficient to generate higher quality top surfaces."
+msgstr "Počet nejpřednějších vrstev pokožky. Obvykle stačí jedna horní vrstva nejvíce k vytvoření horních povrchů vyšší kvality."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_extruder_nr label"
+msgid "Top/Bottom Extruder"
+msgstr "Vrchní/spodní extruder"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_extruder_nr description"
+msgid "The extruder train used for printing the top and bottom skin. This is used in multi-extrusion."
+msgstr "Vytlačovací souprava použitá pro tisk horní a spodní pokožky. To se používá při vícenásobném vytlačování."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_thickness label"
+msgid "Top/Bottom Thickness"
+msgstr "Vrchní/spodní tloušťka"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_thickness description"
+msgid "The thickness of the top/bottom layers in the print. This value divided by the layer height defines the number of top/bottom layers."
+msgstr "Tloušťka horní / dolní vrstvy v tisku. Tato hodnota dělená výškou vrstvy definuje počet vrstev horní / dolní."
+
+#: fdmprinter.def.json
+msgctxt "top_thickness label"
+msgid "Top Thickness"
+msgstr "Vrchní tloušťka"
+
+#: fdmprinter.def.json
+msgctxt "top_thickness description"
+msgid "The thickness of the top layers in the print. This value divided by the layer height defines the number of top layers."
+msgstr "Tloušťka horních vrstev v tisku. Tato hodnota dělená výškou vrstvy definuje počet vrchních vrstev."
+
+#: fdmprinter.def.json
+msgctxt "top_layers label"
+msgid "Top Layers"
+msgstr "Vrchní vrstvy"
+
+#: fdmprinter.def.json
+msgctxt "top_layers description"
+msgid "The number of top layers. When calculated by the top thickness, this value is rounded to a whole number."
+msgstr "Počet vrchních vrstev. Při výpočtu podle nejvyšší tloušťky se tato hodnota zaokrouhlí na celé číslo."
+
+#: fdmprinter.def.json
+msgctxt "bottom_thickness label"
+msgid "Bottom Thickness"
+msgstr "Spodní tloušťka"
+
+#: fdmprinter.def.json
+msgctxt "bottom_thickness description"
+msgid "The thickness of the bottom layers in the print. This value divided by the layer height defines the number of bottom layers."
+msgstr "Tloušťka spodních vrstev v tisku. Tato hodnota dělená výškou vrstvy definuje počet spodních vrstev."
+
+#: fdmprinter.def.json
+msgctxt "bottom_layers label"
+msgid "Bottom Layers"
+msgstr "Spodní vrstvy"
+
+#: fdmprinter.def.json
+msgctxt "bottom_layers description"
+msgid "The number of bottom layers. When calculated by the bottom thickness, this value is rounded to a whole number."
+msgstr "Počet spodních vrstev. Při výpočtu podle tloušťky dna je tato hodnota zaokrouhlena na celé číslo."
+
+#: fdmprinter.def.json
+msgctxt "initial_bottom_layers label"
+msgid "Initial Bottom Layers"
+msgstr "Počáteční spodní vrstvy"
+
+#: fdmprinter.def.json
+msgctxt "initial_bottom_layers description"
+msgid "The number of initial bottom layers, from the build-plate upwards. When calculated by the bottom thickness, this value is rounded to a whole number."
+msgstr "Počet počátečních spodních vrstev od montážní desky směrem nahoru. Při výpočtu podle tloušťky dna je tato hodnota zaokrouhlena na celé číslo."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern label"
+msgid "Top/Bottom Pattern"
+msgstr "Vrchní/spodní vzor"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern description"
+msgid "The pattern of the top/bottom layers."
+msgstr "Vzor horní / dolní vrstvy."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern option lines"
+msgid "Lines"
+msgstr "Čáry"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern option concentric"
+msgid "Concentric"
+msgstr "Soustředný"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern option zigzag"
+msgid "Zig Zag"
+msgstr "Zig Zag"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 label"
+msgid "Bottom Pattern Initial Layer"
+msgstr "Vzor spodní počáteční vrstvy"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 description"
+msgid "The pattern on the bottom of the print on the first layer."
+msgstr "Vzor ve spodní části tisku na první vrstvě."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 option lines"
+msgid "Lines"
+msgstr "Čáry"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 option concentric"
+msgid "Concentric"
+msgstr "Soustředný"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 option zigzag"
+msgid "Zig Zag"
+msgstr "Zig Zag"
+
+#: fdmprinter.def.json
+msgctxt "connect_skin_polygons label"
+msgid "Connect Top/Bottom Polygons"
+msgstr "Připojte horní / dolní polygony"
+
+#: fdmprinter.def.json
+msgctxt "connect_skin_polygons description"
+msgid "Connect top/bottom skin paths where they run next to each other. For the concentric pattern enabling this setting greatly reduces the travel time, but because the connections can happen midway over infill this feature can reduce the top surface quality."
+msgstr "Propojte horní / dolní povrchové cesty tam, kde běží vedle sebe. Pro soustředné uspořádání umožňující toto nastavení výrazně zkracuje dobu cestování, ale protože se spojení může uskutečnit uprostřed výplně, může tato funkce snížit kvalitu povrchu."
+
+#: fdmprinter.def.json
+msgctxt "skin_angles label"
+msgid "Top/Bottom Line Directions"
+msgstr "Pokyny pro horní a dolní řádek"
+
+#: fdmprinter.def.json
+msgctxt "skin_angles description"
+msgid "A list of integer line directions to use when the top/bottom layers use the lines or zig zag pattern. Elements from the list are used sequentially as the layers progress and when the end of the list is reached, it starts at the beginning again. The list items are separated by commas and the whole list is contained in square brackets. Default is an empty list which means use the traditional default angles (45 and 135 degrees)."
+msgstr "Seznam směrů celočíselných čar, které se použijí, když horní / dolní vrstvy používají čáry nebo vzor zig zag. Prvky ze seznamu se používají postupně jako vrstvy a jakmile je dosaženo konce seznamu, začíná znovu na začátku. Položky seznamu jsou odděleny čárkami a celý seznam je obsažen v hranatých závorkách. Výchozí je prázdný seznam, což znamená použití tradičních výchozích úhlů (45 a 135 stupňů)."
+
#: fdmprinter.def.json
msgctxt "skin_no_small_gaps_heuristic label"
msgid "No Skin in Z Gaps"
@@ -1553,6 +1583,86 @@ msgctxt "skin_overlap_mm description"
msgid "Adjust the amount of overlap between the walls and (the endpoints of) the skin-centerlines. A slight overlap allows the walls to connect firmly to the skin. Note that, given an equal skin and wall line-width, any value over half the width of the wall may already cause any skin to go past the wall, because at that point the position of the nozzle of the skin-extruder may already reach past the middle of the wall."
msgstr "Upravte míru překrytí mezi stěnami a (koncovými body) osami porvchu. Mírné překrytí umožňuje, aby se stěny pevně spojily s povrchem. Je třeba si uvědomit, že při stejné šířce linie povrchu a stěny může jakákoli hodnota přesahující polovinu šířky stěny již způsobit, že jakýkoli povrch projde kolem zdi, protože v tomto bodě může pozice trysky extruderu povrchu již dosáhnout. kolem středu zdi."
+#: fdmprinter.def.json
+msgctxt "skin_preshrink label"
+msgid "Skin Removal Width"
+msgstr "Šířka odstranění povrchu"
+
+#: fdmprinter.def.json
+msgctxt "skin_preshrink description"
+msgid "The largest width of skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top/bottom skin at slanted surfaces in the model."
+msgstr "Největší šířka oblastí povrchu, které mají být odstraněny. Každá oblast povrchu menší než tato hodnota zmizí. To může pomoci omezit množství času a materiálu stráveného tiskem vrchní / spodní kůže na šikmých plochách v modelu."
+
+#: fdmprinter.def.json
+msgctxt "top_skin_preshrink label"
+msgid "Top Skin Removal Width"
+msgstr "Horní šířka odstranění povrchu"
+
+#: fdmprinter.def.json
+msgctxt "top_skin_preshrink description"
+msgid "The largest width of top skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top skin at slanted surfaces in the model."
+msgstr "Největší šířka horních oblastí povrchu, které mají být odstraněny. Každá oblast povrchu menší než tato hodnota zmizí. To může pomoci omezit množství času a materiálu stráveného tiskem vrchní kůže na šikmých plochách v modelu."
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_preshrink label"
+msgid "Bottom Skin Removal Width"
+msgstr "Dolní šířka odstranění povrchu"
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_preshrink description"
+msgid "The largest width of bottom skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing bottom skin at slanted surfaces in the model."
+msgstr "Největší šířka spodních částí povrchu, které mají být odstraněny. Každá oblast povrchu menší než tato hodnota zmizí. To může pomoci omezit množství času a materiálu stráveného tiskem spodní vrstvy na šikmých plochách v modelu."
+
+#: fdmprinter.def.json
+msgctxt "expand_skins_expand_distance label"
+msgid "Skin Expand Distance"
+msgstr "Vzdálenost rozšíření povrchu"
+
+#: fdmprinter.def.json
+msgctxt "expand_skins_expand_distance description"
+msgid "The distance the skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on neighboring layers adhere better to the skin. Lower values save amount of material used."
+msgstr "Vzdálenost povrchu je rozšířena do výplně. Vyšší hodnoty umožňují lepší přilnavost povrchu k vzoru výplně a díky tomu lepí přilnavost stěn na sousedních vrstvách k povrchu. Nižší hodnoty šetří množství použitého materiálu."
+
+#: fdmprinter.def.json
+msgctxt "top_skin_expand_distance label"
+msgid "Top Skin Expand Distance"
+msgstr "Horní vzdálenost rozšíření povrchu"
+
+#: fdmprinter.def.json
+msgctxt "top_skin_expand_distance description"
+msgid "The distance the top skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on the layer above adhere better to the skin. Lower values save amount of material used."
+msgstr "Vzdálenost, ve které jsou vrchní vrstvy povrchu rozšířeny do výplně. Vyšší hodnoty umožňují lepší přilnavost povrchu k vzoru výplně a lepší přilnutí stěn nad vrstvou k povrchu. Nižší hodnoty šetří množství použitého materiálu."
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_expand_distance label"
+msgid "Bottom Skin Expand Distance"
+msgstr "Dolní vzdálenost rozšíření povrchu"
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_expand_distance description"
+msgid "The distance the bottom skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the skin adhere better to the walls on the layer below. Lower values save amount of material used."
+msgstr "Vzdálenost spodního povrchu, který se rozšiřuje do výplně. Vyšší hodnoty umožňují lepší přilnavost povrchu k vzoru výplně a lepší přilnavost povrchu ke stěnám na spodní vrstvě. Nižší hodnoty šetří množství použitého materiálu."
+
+#: fdmprinter.def.json
+msgctxt "max_skin_angle_for_expansion label"
+msgid "Maximum Skin Angle for Expansion"
+msgstr "Maximální úhel pro rozšíření povrchu"
+
+#: fdmprinter.def.json
+msgctxt "max_skin_angle_for_expansion description"
+msgid "Top and/or bottom surfaces of your object with an angle larger than this setting, won't have their top/bottom skin expanded. This avoids expanding the narrow skin areas that are created when the model surface has a near vertical slope. An angle of 0° is horizontal and will cause no skin to be expanded, while an angle of 90° is vertical and will cause all skin to be expanded."
+msgstr "Horní a/nebo dolní povrchy objektu s větším úhlem, než je toto nastavení, nebudou mít své horní/spodní povrchy rozšířeny. Tím se zabrání rozšíření úzkých oblastí, které jsou vytvořeny, když má povrch modelu téměř svislý sklon. Úhel 0° je vodorovný a způsobí, že žádný povrch nebude rozšířen, zatímco úhel 90° je svislý a způsobí, že všechny povrchy budou rozšířeny."
+
+#: fdmprinter.def.json
+msgctxt "min_skin_width_for_expansion label"
+msgid "Minimum Skin Width for Expansion"
+msgstr "Minimální úhel pro rozšíření povrchu"
+
+#: fdmprinter.def.json
+msgctxt "min_skin_width_for_expansion description"
+msgid "Skin areas narrower than this are not expanded. This avoids expanding the narrow skin areas that are created when the model surface has a slope close to the vertical."
+msgstr "Oblasti povrchu užší, než je tento, nejsou rozšířeny. Tím se zabrání rozšíření úzkých oblastí vzhledu, které jsou vytvořeny, když má povrch modelu sklon v blízkosti svislé."
+
#: fdmprinter.def.json
msgctxt "infill label"
msgid "Infill"
@@ -1862,86 +1972,6 @@ msgctxt "infill_support_angle description"
msgid "The minimum angle of internal overhangs for which infill is added. At a value of 0° objects are totally filled with infill, 90° will not provide any infill."
msgstr "Minimální úhel vnitřních přesahů, pro které je přidána výplň. Při hodnotě 0 ° jsou objekty zcela vyplněny výplní, 90 ° neposkytuje výplně."
-#: fdmprinter.def.json
-msgctxt "skin_preshrink label"
-msgid "Skin Removal Width"
-msgstr "Šířka odstranění povrchu"
-
-#: fdmprinter.def.json
-msgctxt "skin_preshrink description"
-msgid "The largest width of skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top/bottom skin at slanted surfaces in the model."
-msgstr "Největší šířka oblastí povrchu, které mají být odstraněny. Každá oblast povrchu menší než tato hodnota zmizí. To může pomoci omezit množství času a materiálu stráveného tiskem vrchní / spodní kůže na šikmých plochách v modelu."
-
-#: fdmprinter.def.json
-msgctxt "top_skin_preshrink label"
-msgid "Top Skin Removal Width"
-msgstr "Horní šířka odstranění povrchu"
-
-#: fdmprinter.def.json
-msgctxt "top_skin_preshrink description"
-msgid "The largest width of top skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top skin at slanted surfaces in the model."
-msgstr "Největší šířka horních oblastí povrchu, které mají být odstraněny. Každá oblast povrchu menší než tato hodnota zmizí. To může pomoci omezit množství času a materiálu stráveného tiskem vrchní kůže na šikmých plochách v modelu."
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_preshrink label"
-msgid "Bottom Skin Removal Width"
-msgstr "Dolní šířka odstranění povrchu"
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_preshrink description"
-msgid "The largest width of bottom skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing bottom skin at slanted surfaces in the model."
-msgstr "Největší šířka spodních částí povrchu, které mají být odstraněny. Každá oblast povrchu menší než tato hodnota zmizí. To může pomoci omezit množství času a materiálu stráveného tiskem spodní vrstvy na šikmých plochách v modelu."
-
-#: fdmprinter.def.json
-msgctxt "expand_skins_expand_distance label"
-msgid "Skin Expand Distance"
-msgstr "Vzdálenost rozšíření povrchu"
-
-#: fdmprinter.def.json
-msgctxt "expand_skins_expand_distance description"
-msgid "The distance the skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on neighboring layers adhere better to the skin. Lower values save amount of material used."
-msgstr "Vzdálenost povrchu je rozšířena do výplně. Vyšší hodnoty umožňují lepší přilnavost povrchu k vzoru výplně a díky tomu lepí přilnavost stěn na sousedních vrstvách k povrchu. Nižší hodnoty šetří množství použitého materiálu."
-
-#: fdmprinter.def.json
-msgctxt "top_skin_expand_distance label"
-msgid "Top Skin Expand Distance"
-msgstr "Horní vzdálenost rozšíření povrchu"
-
-#: fdmprinter.def.json
-msgctxt "top_skin_expand_distance description"
-msgid "The distance the top skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on the layer above adhere better to the skin. Lower values save amount of material used."
-msgstr "Vzdálenost, ve které jsou vrchní vrstvy povrchu rozšířeny do výplně. Vyšší hodnoty umožňují lepší přilnavost povrchu k vzoru výplně a lepší přilnutí stěn nad vrstvou k povrchu. Nižší hodnoty šetří množství použitého materiálu."
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_expand_distance label"
-msgid "Bottom Skin Expand Distance"
-msgstr "Dolní vzdálenost rozšíření povrchu"
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_expand_distance description"
-msgid "The distance the bottom skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the skin adhere better to the walls on the layer below. Lower values save amount of material used."
-msgstr "Vzdálenost spodního povrchu, který se rozšiřuje do výplně. Vyšší hodnoty umožňují lepší přilnavost povrchu k vzoru výplně a lepší přilnavost povrchu ke stěnám na spodní vrstvě. Nižší hodnoty šetří množství použitého materiálu."
-
-#: fdmprinter.def.json
-msgctxt "max_skin_angle_for_expansion label"
-msgid "Maximum Skin Angle for Expansion"
-msgstr "Maximální úhel pro rozšíření povrchu"
-
-#: fdmprinter.def.json
-msgctxt "max_skin_angle_for_expansion description"
-msgid "Top and/or bottom surfaces of your object with an angle larger than this setting, won't have their top/bottom skin expanded. This avoids expanding the narrow skin areas that are created when the model surface has a near vertical slope. An angle of 0° is horizontal, while an angle of 90° is vertical."
-msgstr "Horní a/nebo dolní povrch objektu s větším úhlem, než je toto nastavení, nebudou mít rozbalenou horní/dolní plochu. Tím se zabrání rozšíření úzkých oblastí vzhledu, které jsou vytvořeny, když má povrch modelu téměř svislý sklon. Úhel 0° je vodorovný, zatímco úhel 90° je svislý."
-
-#: fdmprinter.def.json
-msgctxt "min_skin_width_for_expansion label"
-msgid "Minimum Skin Width for Expansion"
-msgstr "Minimální úhel pro rozšíření povrchu"
-
-#: fdmprinter.def.json
-msgctxt "min_skin_width_for_expansion description"
-msgid "Skin areas narrower than this are not expanded. This avoids expanding the narrow skin areas that are created when the model surface has a slope close to the vertical."
-msgstr "Oblasti povrchu užší, než je tento, nejsou rozšířeny. Tím se zabrání rozšíření úzkých oblastí vzhledu, které jsou vytvořeny, když má povrch modelu sklon v blízkosti svislé."
-
#: fdmprinter.def.json
msgctxt "skin_edge_support_thickness label"
msgid "Skin Edge Support Thickness"
@@ -2060,7 +2090,7 @@ msgstr "Teplota podložky"
#: fdmprinter.def.json
msgctxt "material_bed_temperature description"
msgid "The temperature used for the heated build plate. If this is 0, the build plate is left unheated."
-msgstr ""
+msgstr "Teplota použitá pro vyhřívanou podložku. Pokud je to 0, podložka se vyhřívat nebude."
#: fdmprinter.def.json
msgctxt "material_bed_temperature_layer_0 label"
@@ -2070,7 +2100,7 @@ msgstr "Teplota podložky při počáteční vrstvě"
#: fdmprinter.def.json
msgctxt "material_bed_temperature_layer_0 description"
msgid "The temperature used for the heated build plate at the first layer. If this is 0, the build plate is left unheated during the first layer."
-msgstr ""
+msgstr "Teplota použitá pro vyhřívanou podložku při první vrstvě. Pokud je to 0, podložka se při první vrstvě vyhřívat nebude."
#: fdmprinter.def.json
msgctxt "material_adhesion_tendency label"
@@ -2095,12 +2125,12 @@ msgstr "Povrchová energie."
#: fdmprinter.def.json
msgctxt "material_shrinkage_percentage label"
msgid "Scaling Factor Shrinkage Compensation"
-msgstr ""
+msgstr "Faktor zvětšení pro kompenzaci smrštění"
#: fdmprinter.def.json
msgctxt "material_shrinkage_percentage description"
msgid "To compensate for the shrinkage of the material as it cools down, the model will be scaled with this factor."
-msgstr ""
+msgstr "Model bude zvětšen tímto faktorem, aby bylo kompenzováno smrštění materiálu po vychladnutí."
#: fdmprinter.def.json
msgctxt "material_crystallinity label"
@@ -2559,8 +2589,8 @@ msgstr "Rychlost prvotní vrstvy"
#: fdmprinter.def.json
msgctxt "speed_layer_0 description"
-msgid "The speed for the initial layer. A lower value is advised to improve adhesion to the build plate."
-msgstr "Rychlost počáteční vrstvy. Doporučuje se nižší hodnota pro zlepšení přilnavosti k montážní desce."
+msgid "The speed for the initial layer. A lower value is advised to improve adhesion to the build plate. Does not affect the build plate adhesion structures themselves, like brim and raft."
+msgstr "Rychlost počáteční vrstvy. Doporučuje se nižší hodnota pro zlepšení přilnavosti k montážní desce. Nemá vliv na samotné struktury pro přilnavost k podložce (např. límec a raft)."
#: fdmprinter.def.json
msgctxt "speed_print_layer_0 label"
@@ -3169,8 +3199,8 @@ msgstr "Maximální vzdálenost Combing-u bez retrakce"
#: fdmprinter.def.json
msgctxt "retraction_combing_max_distance description"
-msgid "When non-zero, combing travel moves that are longer than this distance will use retraction."
-msgstr "Pokud nenulové, pohyby combingového pohybu, které jsou delší než tato vzdálenost, použijí zatažení."
+msgid "When greater than zero, combing travel moves that are longer than this distance will use retraction. If set to zero, there is no maximum and combing moves will not use retraction."
+msgstr "Pokud je větší než nula, combingové pohyby delší než tato vzdálenost budou používat retrakci. Nula znamená, že se při combingových pohybech retrakce provádět nebudou."
#: fdmprinter.def.json
msgctxt "travel_retract_before_outer_wall label"
@@ -5069,12 +5099,12 @@ msgstr "Pomocí této mřížky můžete upravit výplň dalších sítí, s nim
#: fdmprinter.def.json
msgctxt "infill_mesh_order label"
msgid "Mesh Processing Rank"
-msgstr "Úroveň Zpracování Masky"
+msgstr "Pořadí zpracování sítě"
#: fdmprinter.def.json
msgctxt "infill_mesh_order description"
-msgid "Determines the priority of this mesh when considering multiple overlapping infill meshes. Areas where multiple infill meshes overlap will take on the settings of the mesh with the lowest rank. An infill mesh with a higher order will modify the infill of infill meshes with lower order and normal meshes."
-msgstr ""
+msgid "Determines the priority of this mesh when considering multiple overlapping infill meshes. Areas where multiple infill meshes overlap will take on the settings of the mesh with the highest rank. An infill mesh with a higher rank will modify the infill of infill meshes with lower rank and normal meshes."
+msgstr "Určuje prioritu této sítě, když se překrývá více sítí výplně. U oblastí, kde se překrývá více sítí výplně, se nastavení přebírá ze sítě s nejvyšším pořadím. Síť výplně s vyšším pořadím bude modifikovat výplň sítě výplně s nižším pořadím a běžné sítě."
#: fdmprinter.def.json
msgctxt "cutting_mesh label"
@@ -5204,7 +5234,7 @@ msgstr "Použijte spíše relativní extruzi než absolutní extruzi. Použití
#: fdmprinter.def.json
msgctxt "experimental label"
msgid "Experimental"
-msgstr "Experimentálí"
+msgstr "Experimentální"
#: fdmprinter.def.json
msgctxt "experimental description"
@@ -5421,6 +5451,16 @@ msgctxt "conical_overhang_angle description"
msgid "The maximum angle of overhangs after the they have been made printable. At a value of 0° all overhangs are replaced by a piece of model connected to the build plate, 90° will not change the model in any way."
msgstr "Maximální úhel přesahů po jejich tisku. Při hodnotě 0 ° jsou všechny převisy nahrazeny kusem modelu připojeným k podložce, 90 ° model nijak nijak nezmění."
+#: fdmprinter.def.json
+msgctxt "conical_overhang_hole_size label"
+msgid "Maximum Overhang Hole Area"
+msgstr "Maximální plocha díry pod převisem"
+
+#: fdmprinter.def.json
+msgctxt "conical_overhang_hole_size description"
+msgid "The maximum area of a hole in the base of the model before it's removed by Make Overhang Printable. Holes smaller than this will be retained. A value of 0 mm² will fill all holes in the models base."
+msgstr "Maximální plocha díry v základně modelu, která nebude odstraněna funkcí „Udělat převis tisknutelný“. Menší díry budou zachovány. Hodnota 0 mm² způsobí vyplnění všech děr v základně modelu."
+
#: fdmprinter.def.json
msgctxt "coasting_enable label"
msgid "Enable Coasting"
@@ -6360,6 +6400,30 @@ msgctxt "mesh_rotation_matrix description"
msgid "Transformation matrix to be applied to the model when loading it from file."
msgstr "Transformační matice, která se použije na model při načítání ze souboru."
+#~ msgctxt "retraction_combing_max_distance description"
+#~ msgid "When non-zero, combing travel moves that are longer than this distance will use retraction."
+#~ msgstr "Pokud nenulové, pohyby combingového pohybu, které jsou delší než tato vzdálenost, použijí zatažení."
+
+#~ msgctxt "infill_mesh_order description"
+#~ msgid "Determines the priority of this mesh when considering multiple overlapping infill meshes. Areas where multiple infill meshes overlap will take on the settings of the mesh with the lowest rank. An infill mesh with a higher order will modify the infill of infill meshes with lower order and normal meshes."
+#~ msgstr "Určuje prioritu této sítě, když se překrývá více sítí výplně. U oblastí, kde se překrývá více sítí výplně, se nastavení přebírá ze sítě s nejnižším pořadím. Síť výplně s vyšším pořadím bude modifikovat výplň sítě výplně s nižším pořadím a běžné sítě."
+
+#~ msgctxt "machine_use_extruder_offset_to_offset_coords description"
+#~ msgid "Apply the extruder offset to the coordinate system."
+#~ msgstr "Naneste odsazení extrudéru na souřadnicový systém."
+
+#~ msgctxt "shell label"
+#~ msgid "Shell"
+#~ msgstr "Shell"
+
+#~ msgctxt "max_skin_angle_for_expansion description"
+#~ msgid "Top and/or bottom surfaces of your object with an angle larger than this setting, won't have their top/bottom skin expanded. This avoids expanding the narrow skin areas that are created when the model surface has a near vertical slope. An angle of 0° is horizontal, while an angle of 90° is vertical."
+#~ msgstr "Horní a/nebo dolní povrch objektu s větším úhlem, než je toto nastavení, nebudou mít rozbalenou horní/dolní plochu. Tím se zabrání rozšíření úzkých oblastí vzhledu, které jsou vytvořeny, když má povrch modelu téměř svislý sklon. Úhel 0° je vodorovný, zatímco úhel 90° je svislý."
+
+#~ msgctxt "speed_layer_0 description"
+#~ msgid "The speed for the initial layer. A lower value is advised to improve adhesion to the build plate."
+#~ msgstr "Rychlost počáteční vrstvy. Doporučuje se nižší hodnota pro zlepšení přilnavosti k montážní desce."
+
#~ msgctxt "material_bed_temperature description"
#~ msgid "The temperature used for the heated build plate. If this is 0, the bed temperature will not be adjusted."
#~ msgstr "Teplota použitá pro vyhřívanou podložku. Pokud je to 0, teplota podložky nebude upravena."
diff --git a/resources/i18n/cura.pot b/resources/i18n/cura.pot
index f2ef969f37..07459f1da2 100644
--- a/resources/i18n/cura.pot
+++ b/resources/i18n/cura.pot
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
-"POT-Creation-Date: 2020-10-19 13:15+0200\n"
+"POT-Creation-Date: 2021-06-10 17:35+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME \n"
"Language-Team: LANGUAGE \n"
@@ -21,7 +21,7 @@ msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/DiscoveredPrintersModel.py:83
#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:110
#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/QualityManagementModel.py:361
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1581
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1612
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:130
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:171
msgctxt "@label"
@@ -99,12 +99,12 @@ msgid ""
"validation with the intent of significant print time reduction."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:226
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:234
msgctxt "@label"
msgid "Custom Material"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:227
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:235
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationMenu.qml:205
msgctxt "@label"
msgid "Custom"
@@ -126,7 +126,7 @@ msgctxt "@item:inlistbox"
msgid "All Files (*)"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/API/Account.py:178
+#: /home/trin/Gedeeld/Projects/Cura/cura/API/Account.py:181
msgctxt "@info:title"
msgid "Login failed"
msgstr ""
@@ -156,28 +156,33 @@ msgctxt "@info:title"
msgid "Can't Find Location"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:104
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:116
msgctxt "@info:backup_failed"
msgid "Could not create archive from user data directory: {}"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:110
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:122
#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:107
#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:113
msgctxt "@info:title"
msgid "Backup"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:123
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:135
msgctxt "@info:backup_failed"
msgid "Tried to restore a Cura backup without having proper data or meta data."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:134
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:146
msgctxt "@info:backup_failed"
msgid "Tried to restore a Cura backup that is higher than the current version."
msgstr ""
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:157
+msgctxt "@info:backup_failed"
+msgid "The following error occurred while trying to restore a Cura backup:"
+msgstr ""
+
#: /home/trin/Gedeeld/Projects/Cura/cura/BuildVolume.py:98
msgctxt "@info:status"
msgid ""
@@ -328,47 +333,47 @@ msgctxt "@action:button"
msgid "Send report"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:521
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:527
msgctxt "@info:progress"
msgid "Loading machines..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:528
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:534
msgctxt "@info:progress"
msgid "Setting up preferences..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:657
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:672
msgctxt "@info:progress"
msgid "Initializing Active Machine..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:788
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:803
msgctxt "@info:progress"
msgid "Initializing machine manager..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:802
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:817
msgctxt "@info:progress"
msgid "Initializing build volume..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:870
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:888
msgctxt "@info:progress"
msgid "Setting up scene..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:906
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:924
msgctxt "@info:progress"
msgid "Loading interface..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:911
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:929
msgctxt "@info:progress"
msgid "Initializing engine..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1221
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1246
#, python-format
msgctxt ""
"@info 'width', 'depth' and 'height' are variable names that must NOT be "
@@ -376,28 +381,28 @@ msgctxt ""
msgid "%(width).1f x %(depth).1f x %(height).1f mm"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1777
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1799
#, python-brace-format
msgctxt "@info:status"
msgid "Only one G-code file can be loaded at a time. Skipped importing {0}"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1778
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:188
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:242
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1800
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:190
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:244
#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:153
#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:165
msgctxt "@info:title"
msgid "Warning"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1787
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1809
#, python-brace-format
msgctxt "@info:status"
msgid "Can't open any other file if G-code is loading. Skipped importing {0}"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1788
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1810
#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:146
#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:153
#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:139
@@ -420,7 +425,7 @@ msgctxt "@info:title"
msgid "Placing Object"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationHelpers.py:90
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationHelpers.py:92
msgctxt "@message"
msgid "Could not read response."
msgstr ""
@@ -440,14 +445,14 @@ msgctxt "@message"
msgid "Something unexpected happened when trying to log in, please try again."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:187
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:189
msgctxt "@info"
msgid ""
"Unable to start a new sign in process. Check if another sign in attempt is "
"still active."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:242
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:244
msgctxt "@info"
msgid "Unable to reach the Ultimaker account server."
msgstr ""
@@ -467,8 +472,8 @@ msgid ""
"overwrite it?"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:452
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:455
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:457
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:460
msgctxt "@info:status"
msgid "Invalid file URL:"
msgstr ""
@@ -557,27 +562,27 @@ msgctxt "@info:status"
msgid "Profile {0} has an unknown file type or is corrupted."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:423
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:426
msgctxt "@label"
msgid "Custom profile"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:439
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:442
msgctxt "@info:status"
msgid "Profile is missing a quality type."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:443
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:446
msgctxt "@info:status"
-msgid "Global stack is missing."
+msgid "There is no active printer yet."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:449
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:452
msgctxt "@info:status"
msgid "Unable to add the profile."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:463
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:466
#, python-brace-format
msgctxt "@info:status"
msgid ""
@@ -585,7 +590,7 @@ msgid ""
"definition '{1}'."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:468
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:471
#, python-brace-format
msgctxt "@info:status"
msgid ""
@@ -604,24 +609,24 @@ msgctxt "@info:No intent profile selected"
msgid "Default"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:712
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:713
#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:216
msgctxt "@label"
msgid "Nozzle"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:860
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:856
msgctxt "@info:message Followed by a list of settings."
msgid ""
"Settings have been changed to match the current availability of extruders:"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:862
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:858
msgctxt "@info:title"
msgid "Settings updated"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1447
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1478
msgctxt "@info:title"
msgid "Extruder(s) Disabled"
msgstr ""
@@ -634,13 +639,13 @@ msgid "Add"
msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:26
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:263
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:272
msgctxt "@action:button"
msgid "Finish"
msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:33
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:441
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:445
#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:234
#: /home/trin/Gedeeld/Projects/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:150
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxProgressButton.qml:19
@@ -648,7 +653,7 @@ msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:352
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:58
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/PrintWindow.qml:42
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:87
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:82
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:292
msgctxt "@action:button"
msgid "Cancel"
@@ -660,76 +665,83 @@ msgctxt "@label"
msgid "Group #{group_nr}"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:83
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:82
msgctxt "@tooltip"
msgid "Outer Wall"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:84
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:83
msgctxt "@tooltip"
msgid "Inner Walls"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:85
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:84
msgctxt "@tooltip"
msgid "Skin"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:86
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:85
msgctxt "@tooltip"
msgid "Infill"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:87
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:86
msgctxt "@tooltip"
msgid "Support Infill"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:88
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:87
msgctxt "@tooltip"
msgid "Support Interface"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:89
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:88
msgctxt "@tooltip"
msgid "Support"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:90
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:89
msgctxt "@tooltip"
msgid "Skirt"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:91
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:90
msgctxt "@tooltip"
msgid "Prime Tower"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:92
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:91
msgctxt "@tooltip"
msgid "Travel"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:93
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:92
msgctxt "@tooltip"
msgid "Retractions"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:94
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:93
msgctxt "@tooltip"
msgid "Other"
msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:56
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:259
msgctxt "@action:button"
msgid "Next"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WhatsNewPagesModel.py:17
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:268
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WhatsNewPagesModel.py:55
+msgctxt "@action:button"
+msgid "Skip"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WhatsNewPagesModel.py:60
#: /home/trin/Gedeeld/Projects/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:185
#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:128
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:482
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:173
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:485
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:174
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:127
msgctxt "@action:button"
msgid "Close"
@@ -753,7 +765,7 @@ msgid ""
"guide
"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:535
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:540
#, python-brace-format
msgctxt "@info:status Don't translate the XML tags or !"
msgid ""
@@ -762,12 +774,12 @@ msgid ""
"instead."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:538
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:543
msgctxt "@info:title"
msgid "Open Project File"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:634
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:639
#, python-brace-format
msgctxt "@info:error Don't translate the XML tags or !"
msgid ""
@@ -775,12 +787,20 @@ msgid ""
"."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:635
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:640
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:647
msgctxt "@info:title"
msgid "Can't Open Project File"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:686
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:646
+#, python-brace-format
+msgctxt "@info:error Don't translate the XML tags or !"
+msgid ""
+"Project file {0} is corrupt: {1}."
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:698
#, python-brace-format
msgctxt "@info:error Don't translate the XML tag !"
msgid ""
@@ -822,7 +842,7 @@ msgid ""
"or with this file name."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWriter.py:185
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWriter.py:206
msgctxt "@error:zip"
msgid "Error writing 3mf file."
msgstr ""
@@ -877,8 +897,8 @@ msgctxt "@error:file_size"
msgid "The backup exceeds the maximum file size."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DriveApiService.py:82
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/RestoreBackupJob.py:23
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DriveApiService.py:86
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/RestoreBackupJob.py:26
msgctxt "@info:backup_status"
msgid "There was an error trying to restore your backup."
msgstr ""
@@ -888,24 +908,24 @@ msgctxt "@item:inmenu"
msgid "Manage backups"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:356
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:382
msgctxt "@info:status"
msgid ""
"Unable to slice with the current material as it is incompatible with the "
"selected machine or configuration."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:356
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:387
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:411
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:420
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:429
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:441
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:382
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:413
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:437
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:446
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:455
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:467
msgctxt "@info:title"
msgid "Unable to slice"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:386
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:412
#, python-brace-format
msgctxt "@info:status"
msgid ""
@@ -913,7 +933,7 @@ msgid ""
"errors: {0}"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:410
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:436
#, python-brace-format
msgctxt "@info:status"
msgid ""
@@ -921,13 +941,13 @@ msgid ""
"errors on one or more models: {error_labels}"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:419
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:445
msgctxt "@info:status"
msgid ""
"Unable to slice because the prime tower or prime position(s) are invalid."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:428
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:454
#, python-format
msgctxt "@info:status"
msgid ""
@@ -935,7 +955,7 @@ msgid ""
"%s."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:437
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:463
msgctxt "@info:status"
msgid ""
"Please review settings and check if your models:\n"
@@ -1207,28 +1227,28 @@ msgctxt "@item:intext"
msgid "Removable Drive"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:121
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:128
msgctxt "@info:status"
msgid "Cura does not accurately display layers when Wire Printing is enabled."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:122
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:129
msgctxt "@info:title"
msgid "Simulation View"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:123
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:130
msgctxt "@info:status"
msgid "Nothing is shown because you need to slice first."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:123
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:130
msgctxt "@info:title"
msgid "No layers to show"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:124
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:73
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:131
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:74
msgctxt "@info:option_text"
msgid "Do not show this message again"
msgstr ""
@@ -1238,16 +1258,21 @@ msgctxt "@item:inlistbox"
msgid "Layer view"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:70
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:71
msgctxt "@info:status"
msgid ""
-"Your model is not manifold. The highlighted areas indicate either missing or "
-"extraneous surfaces."
+"The highlighted areas indicate either missing or extraneous surfaces. Fix "
+"your model and open it again into Cura."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:72
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:73
msgctxt "@info:title"
-msgid "Model errors"
+msgid "Model Errors"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:79
+msgctxt "@action:button"
+msgid "Learn more"
msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/__init__.py:12
@@ -1276,7 +1301,7 @@ msgctxt "@info:title"
msgid "Changes detected from your Ultimaker account"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py:146
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py:145
msgctxt "@action:button"
msgid "Sync"
msgstr ""
@@ -1312,7 +1337,7 @@ msgctxt "@info:generic"
msgid "You need to quit and restart {} before changes have effect."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/SyncOrchestrator.py:76
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/SyncOrchestrator.py:79
msgctxt "@info:generic"
msgid "{} plugins failed to download"
msgstr ""
@@ -1353,7 +1378,11 @@ msgctxt "@item:inlistbox"
msgid "Ultimaker Format Package"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:146
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:57
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:72
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:94
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:149
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:159
msgctxt "@info:error"
msgid "Can't write to UFP file:"
msgstr ""
@@ -1368,22 +1397,22 @@ msgctxt "@action"
msgid "Select upgrades"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:152
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:154
msgctxt "@action:button"
msgid "Print via cloud"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:153
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:155
msgctxt "@properties:tooltip"
msgid "Print via cloud"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:154
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:156
msgctxt "@info:status"
msgid "Connected via cloud"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:264
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:270
#, python-brace-format
msgctxt "@error:send"
msgid "Unknown error code when uploading print job: {0}"
@@ -1689,82 +1718,82 @@ msgid ""
"adjustment."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:14
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:15
msgctxt "@title:window"
msgid "Open Project"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:61
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:62
msgctxt "@action:ComboBox Update/override existing profile"
msgid "Update existing"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:62
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:63
msgctxt "@action:ComboBox Save settings in a new profile"
msgid "Create new"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:74
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:75
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:69
msgctxt "@action:title"
msgid "Summary - Cura Project"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:96
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:97
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:93
msgctxt "@action:label"
msgid "Printer settings"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:112
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:113
msgctxt "@info:tooltip"
msgid "How should the conflict in the machine be resolved?"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:165
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:167
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:102
msgctxt "@action:label"
msgid "Type"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:181
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:183
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:117
msgctxt "@action:label"
msgid "Printer Group"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:203
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:205
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:218
msgctxt "@action:label"
msgid "Profile settings"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:219
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:221
msgctxt "@info:tooltip"
msgid "How should the conflict in the profile be resolved?"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:239
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:349
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:242
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:353
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:117
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:242
msgctxt "@action:label"
msgid "Name"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:255
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:258
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:259
msgctxt "@action:label"
msgid "Intent"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:271
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:274
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:226
msgctxt "@action:label"
msgid "Not in profile"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:276
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:279
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:231
msgctxt "@action:label"
msgid "%1 override"
@@ -1772,54 +1801,54 @@ msgid_plural "%1 overrides"
msgstr[0] ""
msgstr[1] ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:287
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:290
msgctxt "@action:label"
msgid "Derivative from"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:292
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:295
msgctxt "@action:label"
msgid "%1, %2 override"
msgid_plural "%1, %2 overrides"
msgstr[0] ""
msgstr[1] ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:309
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:312
msgctxt "@action:label"
msgid "Material settings"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:325
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:328
msgctxt "@info:tooltip"
msgid "How should the conflict in the material be resolved?"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:369
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:373
msgctxt "@action:label"
msgid "Setting visibility"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:378
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:382
msgctxt "@action:label"
msgid "Mode"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:394
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:398
msgctxt "@action:label"
msgid "Visible settings:"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:399
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:403
msgctxt "@action:label"
msgid "%1 out of %2"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:425
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:429
msgctxt "@action:warning"
msgid "Loading a project will clear all models on the build plate."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:453
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:457
msgctxt "@action:button"
msgid "Open"
msgstr ""
@@ -1927,8 +1956,8 @@ msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/qml/pages/WelcomePage.qml:51
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/WelcomePage.qml:39
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:68
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:125
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:53
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:199
msgctxt "@button"
msgid "Sign in"
msgstr ""
@@ -2179,12 +2208,12 @@ msgctxt "@label"
msgid "Cooling Fan Number"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:162
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:163
msgctxt "@title:label"
msgid "Extruder Start G-code"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:176
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:177
msgctxt "@title:label"
msgid "Extruder End G-code"
msgstr ""
@@ -2269,12 +2298,17 @@ msgctxt "@label"
msgid "Number of Extruders"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:374
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:345
+msgctxt "@label"
+msgid "Apply Extruder offsets to GCode"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:393
msgctxt "@title:label"
msgid "Start G-code"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:385
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:404
msgctxt "@title:label"
msgid "End G-code"
msgstr ""
@@ -2298,6 +2332,11 @@ msgctxt "@label link to technical assistance"
msgid "View user manuals online"
msgstr ""
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MonitorStage/MonitorMain.qml:172
+msgctxt "@info"
+msgid "In order to monitor your print from Cura, please connect the printer."
+msgstr ""
+
#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml:42
msgctxt "@label"
msgid "Mesh Type"
@@ -2344,7 +2383,7 @@ msgid "Select Settings to Customize for this model"
msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:55
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:94
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:96
msgctxt "@label:textbox"
msgid "Filter..."
msgstr ""
@@ -2354,32 +2393,32 @@ msgctxt "@label:checkbox"
msgid "Show all"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:18
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:20
msgctxt "@title:window"
msgid "Post Processing Plugin"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:57
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:59
msgctxt "@label"
msgid "Post Processing Scripts"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:233
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:235
msgctxt "@action"
msgid "Add a script"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:279
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:282
msgctxt "@label"
msgid "Settings"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:499
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:502
msgctxt "@info:tooltip"
msgid "Change active post-processing scripts."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:503
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:506
msgctxt "@info:tooltip"
msgid "The following script is active:"
msgid_plural "The following scripts are active:"
@@ -2392,78 +2431,93 @@ msgctxt "@label"
msgid "Color scheme"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:107
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:110
msgctxt "@label:listbox"
msgid "Material Color"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:111
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:114
msgctxt "@label:listbox"
msgid "Line Type"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:115
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:118
msgctxt "@label:listbox"
msgid "Speed"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:119
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:122
msgctxt "@label:listbox"
-msgid "Layer thickness"
+msgid "Layer Thickness"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:156
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:126
+msgctxt "@label:listbox"
+msgid "Line Width"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:130
+msgctxt "@label:listbox"
+msgid "Flow"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:171
msgctxt "@label"
msgid "Compatibility Mode"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:230
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:245
msgctxt "@label"
msgid "Travels"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:236
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:251
msgctxt "@label"
msgid "Helpers"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:242
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:257
msgctxt "@label"
msgid "Shell"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:248
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:263
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedInfillDensitySelector.qml:65
msgctxt "@label"
msgid "Infill"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:298
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:271
msgctxt "@label"
-msgid "Only Show Top Layers"
-msgstr ""
-
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:308
-msgctxt "@label"
-msgid "Show 5 Detailed Layers On Top"
+msgid "Starts"
msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:322
msgctxt "@label"
+msgid "Only Show Top Layers"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:332
+msgctxt "@label"
+msgid "Show 5 Detailed Layers On Top"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:346
+msgctxt "@label"
msgid "Top / Bottom"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:326
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:350
msgctxt "@label"
msgid "Inner Wall"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:384
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:419
msgctxt "@label"
msgid "min"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:433
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:488
msgctxt "@label"
msgid "max"
msgstr ""
@@ -2606,7 +2660,7 @@ msgid "Plugins"
msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxHeader.qml:44
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:466
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:457
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:89
msgctxt "@title:tab"
msgid "Materials"
@@ -2655,6 +2709,7 @@ msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/dialogs/CompatibilityDialog.qml:23
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:123
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/FirstStartMachineActionsContent.qml:77
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:178
msgctxt "@button"
msgid "Next"
msgstr ""
@@ -3023,7 +3078,7 @@ msgid "Delete"
msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:100
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:289
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:290
msgctxt "@label"
msgid "Resume"
msgstr ""
@@ -3039,8 +3094,8 @@ msgid "Resuming..."
msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:106
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:284
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:293
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:285
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:294
msgctxt "@label"
msgid "Pause"
msgstr ""
@@ -3081,7 +3136,7 @@ msgid "Are you sure you want to abort %1?"
msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:164
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:335
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:336
msgctxt "@window:title"
msgid "Abort print"
msgstr ""
@@ -3092,7 +3147,7 @@ msgid "Manage printer"
msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:254
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:519
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:523
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:250
msgctxt "@info"
msgid "Please update your printer's firmware to manage the queue remotely."
@@ -3118,27 +3173,34 @@ msgctxt "@label:status"
msgid "Idle"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:365
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:364
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:84
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:86
+msgctxt "@label:status"
+msgid "Preparing..."
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:369
msgctxt "@label:status"
msgid "Printing"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:406
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:410
msgctxt "@label"
msgid "Untitled"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:427
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:431
msgctxt "@label"
msgid "Anonymous"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:454
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:458
msgctxt "@label:status"
msgid "Requires configuration changes"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:492
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:496
msgctxt "@action:button"
msgid "Details"
msgstr ""
@@ -3165,12 +3227,6 @@ msgctxt "@label:status"
msgid "Finished"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:84
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:86
-msgctxt "@label:status"
-msgid "Preparing..."
-msgstr ""
-
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:88
msgctxt "@label:status"
msgid "Aborting..."
@@ -3251,23 +3307,23 @@ msgctxt "@action:button"
msgid "Sign in"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:40
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:20
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:64
msgctxt "@label"
-msgid "Your key to connected 3D printing"
+msgid "Sign in to the Ultimaker platform"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:51
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:42
msgctxt "@text"
msgid ""
-"- Customize your experience with more print profiles and plugins\n"
-"- Stay flexible by syncing your setup and loading it anywhere\n"
-"- Increase efficiency with a remote workflow on Ultimaker printers"
+"- Add material profiles and plug-ins from the Marketplace\n"
+"- Back-up and sync your material profiles and plug-ins\n"
+"- Share ideas and get help from 48,000+ users in the Ultimaker community"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:78
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:142
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:62
msgctxt "@button"
-msgid "Create account"
+msgid "Create a free Ultimaker account"
msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/SyncState.qml:28
@@ -3375,299 +3431,298 @@ msgctxt "@button"
msgid "Cancel"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:82
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:83
msgctxt "@action:inmenu"
msgid "Show Online Troubleshooting Guide"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:89
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:90
msgctxt "@action:inmenu"
msgid "Toggle Full Screen"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:97
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:98
msgctxt "@action:inmenu"
msgid "Exit Full Screen"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:104
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:105
msgctxt "@action:inmenu menubar:edit"
msgid "&Undo"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:114
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:115
msgctxt "@action:inmenu menubar:edit"
msgid "&Redo"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:124
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:125
msgctxt "@action:inmenu menubar:file"
msgid "&Quit"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:132
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:133
msgctxt "@action:inmenu menubar:view"
msgid "3D View"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:139
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:140
msgctxt "@action:inmenu menubar:view"
msgid "Front View"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:146
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:147
msgctxt "@action:inmenu menubar:view"
msgid "Top View"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:153
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:154
+msgctxt "@action:inmenu menubar:view"
+msgid "Bottom View"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:161
msgctxt "@action:inmenu menubar:view"
msgid "Left Side View"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:160
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:168
msgctxt "@action:inmenu menubar:view"
msgid "Right Side View"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:167
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:175
msgctxt "@action:inmenu"
msgid "Configure Cura..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:174
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:182
msgctxt "@action:inmenu menubar:printer"
msgid "&Add Printer..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:180
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:188
msgctxt "@action:inmenu menubar:printer"
msgid "Manage Pr&inters..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:187
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:195
msgctxt "@action:inmenu"
msgid "Manage Materials..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:195
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:203
msgctxt "@action:inmenu"
msgid "Add more materials from Marketplace"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:202
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:210
msgctxt "@action:inmenu menubar:profile"
msgid "&Update profile with current settings/overrides"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:210
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:218
msgctxt "@action:inmenu menubar:profile"
msgid "&Discard current changes"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:222
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:230
msgctxt "@action:inmenu menubar:profile"
msgid "&Create profile from current settings/overrides..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:228
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:236
msgctxt "@action:inmenu menubar:profile"
msgid "Manage Profiles..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:236
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:244
msgctxt "@action:inmenu menubar:help"
msgid "Show Online &Documentation"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:244
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:252
msgctxt "@action:inmenu menubar:help"
msgid "Report a &Bug"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:252
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:260
msgctxt "@action:inmenu menubar:help"
msgid "What's New"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:258
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:266
msgctxt "@action:inmenu menubar:help"
msgid "About..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:265
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:273
msgctxt "@action:inmenu menubar:edit"
-msgid "Delete Selected Model"
-msgid_plural "Delete Selected Models"
-msgstr[0] ""
-msgstr[1] ""
+msgid "Delete Selected"
+msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:275
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:283
msgctxt "@action:inmenu menubar:edit"
-msgid "Center Selected Model"
-msgid_plural "Center Selected Models"
-msgstr[0] ""
-msgstr[1] ""
+msgid "Center Selected"
+msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:284
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:292
msgctxt "@action:inmenu menubar:edit"
-msgid "Multiply Selected Model"
-msgid_plural "Multiply Selected Models"
-msgstr[0] ""
-msgstr[1] ""
-
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:293
-msgctxt "@action:inmenu"
-msgid "Delete Model"
+msgid "Multiply Selected"
msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:301
msgctxt "@action:inmenu"
+msgid "Delete Model"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:309
+msgctxt "@action:inmenu"
msgid "Ce&nter Model on Platform"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:307
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:315
msgctxt "@action:inmenu menubar:edit"
msgid "&Group Models"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:327
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:335
msgctxt "@action:inmenu menubar:edit"
msgid "Ungroup Models"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:337
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:345
msgctxt "@action:inmenu menubar:edit"
msgid "&Merge Models"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:347
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:355
msgctxt "@action:inmenu"
msgid "&Multiply Model..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:354
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:362
msgctxt "@action:inmenu menubar:edit"
msgid "Select All Models"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:364
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:372
msgctxt "@action:inmenu menubar:edit"
msgid "Clear Build Plate"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:374
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:382
msgctxt "@action:inmenu menubar:file"
msgid "Reload All Models"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:383
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:391
msgctxt "@action:inmenu menubar:edit"
msgid "Arrange All Models To All Build Plates"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:390
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:398
msgctxt "@action:inmenu menubar:edit"
msgid "Arrange All Models"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:398
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:406
msgctxt "@action:inmenu menubar:edit"
msgid "Arrange Selection"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:405
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:413
msgctxt "@action:inmenu menubar:edit"
msgid "Reset All Model Positions"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:412
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:420
msgctxt "@action:inmenu menubar:edit"
msgid "Reset All Model Transformations"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:419
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:429
msgctxt "@action:inmenu menubar:file"
msgid "&Open File(s)..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:427
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:439
msgctxt "@action:inmenu menubar:file"
msgid "&New Project..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:434
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:446
msgctxt "@action:inmenu menubar:help"
msgid "Show Configuration Folder"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:441
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:538
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:453
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:550
msgctxt "@action:menu"
msgid "Configure setting visibility..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:448
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:460
msgctxt "@action:menu"
msgid "&Marketplace"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:266
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:257
msgctxt "@label"
msgid "This package will be installed after restarting."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:459
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:15
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:450
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:17
msgctxt "@title:tab"
msgid "General"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:462
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:453
msgctxt "@title:tab"
msgid "Settings"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:464
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:455
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:16
msgctxt "@title:tab"
msgid "Printers"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:468
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:459
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:34
msgctxt "@title:tab"
msgid "Profiles"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:587
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:576
msgctxt "@title:window %1 is the application name"
msgid "Closing %1"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:588
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:600
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:577
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:589
msgctxt "@label %1 is the application name"
msgid "Are you sure you want to exit %1?"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:638
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:627
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:19
msgctxt "@title:window"
msgid "Open file(s)"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:744
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:737
msgctxt "@window:title"
msgid "Install Package"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:752
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:745
msgctxt "@title:window"
msgid "Open File(s)"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:755
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:748
msgctxt "@text:window"
msgid ""
"We have found one or more G-Code files within the files you have selected. "
@@ -3675,12 +3730,12 @@ msgid ""
"file, please just select only one."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:858
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:857
msgctxt "@title:window"
msgid "Add Printer"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:866
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:865
msgctxt "@title:window"
msgid "What's New"
msgstr ""
@@ -3828,18 +3883,28 @@ msgctxt "@label"
msgid "Python bindings for libnest2d"
msgstr ""
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:161
+msgctxt "@label"
+msgid "Support library for system keyring access"
+msgstr ""
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:162
msgctxt "@label"
-msgid "Font"
+msgid "Python extensions for Microsoft Windows"
msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:163
msgctxt "@label"
-msgid "SVG icons"
+msgid "Font"
msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:164
msgctxt "@label"
+msgid "SVG icons"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:165
+msgctxt "@label"
msgid "Linux cross-distribution application deployment"
msgstr ""
@@ -3848,24 +3913,24 @@ msgctxt "@title:window"
msgid "Open project file"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:93
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:88
msgctxt "@text:window"
msgid ""
"This is a Cura project file. Would you like to open it as a project or "
"import the models from it?"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:103
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:98
msgctxt "@text:window"
msgid "Remember my choice"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:122
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:117
msgctxt "@action:button"
msgid "Open as project"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:131
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:126
msgctxt "@action:button"
msgid "Import models"
msgstr ""
@@ -3894,7 +3959,7 @@ msgid "Current changes"
msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:158
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:747
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:733
msgctxt "@option:discardOrKeep"
msgid "Always ask me this"
msgstr ""
@@ -3919,7 +3984,7 @@ msgctxt "@action:button"
msgid "Keep changes"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:64
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:59
msgctxt "@text:window"
msgid ""
"We have found one or more project file(s) within the files you have "
@@ -3927,7 +3992,7 @@ msgid ""
"import models from those files. Would you like to proceed?"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:99
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:94
msgctxt "@action:button"
msgid "Import all as models"
msgstr ""
@@ -4087,7 +4152,7 @@ msgctxt "@label"
msgid "Material"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/CustomConfiguration.qml:394
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/CustomConfiguration.qml:407
msgctxt "@label"
msgid "Use glue for better adhesion with this material combination."
msgstr ""
@@ -4111,17 +4176,17 @@ msgctxt "@label"
msgid "Number of Copies"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:33
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:41
msgctxt "@title:menu menubar:file"
msgid "&Save Project..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:54
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:74
msgctxt "@title:menu menubar:file"
msgid "&Export..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:65
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:85
msgctxt "@action:inmenu menubar:file"
msgid "Export Selection..."
msgstr ""
@@ -4141,6 +4206,11 @@ msgctxt "@label:category menu label"
msgid "Generic"
msgstr ""
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/OpenFilesMenu.qml:15
+msgctxt "@title:menu menubar:file"
+msgid "Open File(s)..."
+msgstr ""
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/PrinterMenu.qml:25
msgctxt "@label:category menu label"
msgid "Network enabled printers"
@@ -4156,6 +4226,11 @@ msgctxt "@title:menu menubar:file"
msgid "Open &Recent"
msgstr ""
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SaveProjectMenu.qml:15
+msgctxt "@title:menu menubar:file"
+msgid "Save Project..."
+msgstr ""
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingsMenu.qml:15
msgctxt "@title:menu menubar:settings"
msgid "&Printer"
@@ -4181,17 +4256,17 @@ msgctxt "@action:inmenu"
msgid "Disable Extruder"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:13
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:16
msgctxt "@action:inmenu"
msgid "Visible Settings"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:42
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:45
msgctxt "@action:inmenu"
msgid "Collapse All Categories"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:51
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:54
msgctxt "@action:inmenu"
msgid "Manage Setting Visibility..."
msgstr ""
@@ -4201,22 +4276,22 @@ msgctxt "@action:inmenu menubar:view"
msgid "&Camera position"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:44
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:45
msgctxt "@action:inmenu menubar:view"
msgid "Camera view"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:47
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:48
msgctxt "@action:inmenu menubar:view"
msgid "Perspective"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:59
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:60
msgctxt "@action:inmenu menubar:view"
msgid "Orthographic"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:80
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:81
msgctxt "@action:inmenu menubar:view"
msgid "&Build plate"
msgstr ""
@@ -4261,12 +4336,12 @@ msgctxt "@label:MonitorStatus"
msgid "Please remove the print"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:325
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:326
msgctxt "@label"
msgid "Abort Print"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:337
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:338
msgctxt "@label"
msgid "Are you sure you want to abort the print?"
msgstr ""
@@ -4308,265 +4383,265 @@ msgctxt "@label"
msgid "Interface"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:216
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:209
msgctxt "@label"
msgid "Currency:"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:229
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:222
msgctxt "@label"
msgid "Theme:"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:285
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:267
msgctxt "@label"
msgid ""
"You will need to restart the application for these changes to have effect."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:302
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:284
msgctxt "@info:tooltip"
msgid "Slice automatically when changing settings."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:310
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:292
msgctxt "@option:check"
msgid "Slice automatically"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:324
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:306
msgctxt "@label"
msgid "Viewport behavior"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:332
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:314
msgctxt "@info:tooltip"
msgid ""
"Highlight unsupported areas of the model in red. Without support these areas "
"will not print properly."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:341
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:323
msgctxt "@option:check"
msgid "Display overhang"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:351
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:333
msgctxt "@info:tooltip"
msgid ""
"Highlight missing or extraneous surfaces of the model using warning signs. "
"The toolpaths will often be missing parts of the intended geometry."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:360
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:342
msgctxt "@option:check"
msgid "Display model errors"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:368
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:350
msgctxt "@info:tooltip"
msgid ""
"Moves the camera so the model is in the center of the view when a model is "
"selected"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:373
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:355
msgctxt "@action:button"
msgid "Center camera when item is selected"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:383
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:365
msgctxt "@info:tooltip"
msgid "Should the default zoom behavior of cura be inverted?"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:388
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:370
msgctxt "@action:button"
msgid "Invert the direction of camera zoom."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:404
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:386
msgctxt "@info:tooltip"
msgid "Should zooming move in the direction of the mouse?"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:404
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:386
msgctxt "@info:tooltip"
msgid ""
"Zooming towards the mouse is not supported in the orthographic perspective."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:409
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:391
msgctxt "@action:button"
msgid "Zoom toward mouse direction"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:435
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:417
msgctxt "@info:tooltip"
msgid ""
"Should models on the platform be moved so that they no longer intersect?"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:440
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:422
msgctxt "@option:check"
msgid "Ensure models are kept apart"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:449
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:431
msgctxt "@info:tooltip"
msgid "Should models on the platform be moved down to touch the build plate?"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:454
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:436
msgctxt "@option:check"
msgid "Automatically drop models to the build plate"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:466
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:448
msgctxt "@info:tooltip"
msgid "Show caution message in g-code reader."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:475
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:457
msgctxt "@option:check"
msgid "Caution message in g-code reader"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:483
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:465
msgctxt "@info:tooltip"
msgid "Should layer be forced into compatibility mode?"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:488
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:470
msgctxt "@option:check"
msgid "Force layer view compatibility mode (restart required)"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:498
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:480
msgctxt "@info:tooltip"
msgid "Should Cura open at the location it was closed?"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:503
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:485
msgctxt "@option:check"
msgid "Restore window position on start"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:513
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:495
msgctxt "@info:tooltip"
msgid "What type of camera rendering should be used?"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:520
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:502
msgctxt "@window:text"
msgid "Camera rendering:"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:531
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:509
msgid "Perspective"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:532
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:510
msgid "Orthographic"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:563
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:548
msgctxt "@label"
msgid "Opening and saving files"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:570
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:555
msgctxt "@info:tooltip"
msgid ""
"Should opening files from the desktop or external applications open in the "
"same instance of Cura?"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:575
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:560
msgctxt "@option:check"
msgid "Use a single instance of Cura"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:585
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:570
msgctxt "@info:tooltip"
msgid "Should models be scaled to the build volume if they are too large?"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:590
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:575
msgctxt "@option:check"
msgid "Scale large models"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:600
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:585
msgctxt "@info:tooltip"
msgid ""
"An model may appear extremely small if its unit is for example in meters "
"rather than millimeters. Should these models be scaled up?"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:605
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:590
msgctxt "@option:check"
msgid "Scale extremely small models"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:615
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:600
msgctxt "@info:tooltip"
msgid "Should models be selected after they are loaded?"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:620
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:605
msgctxt "@option:check"
msgid "Select models when loaded"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:630
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:615
msgctxt "@info:tooltip"
msgid ""
"Should a prefix based on the printer name be added to the print job name "
"automatically?"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:635
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:620
msgctxt "@option:check"
msgid "Add machine prefix to job name"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:645
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:630
msgctxt "@info:tooltip"
msgid "Should a summary be shown when saving a project file?"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:649
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:634
msgctxt "@option:check"
msgid "Show summary dialog when saving project"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:659
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:644
msgctxt "@info:tooltip"
msgid "Default behavior when opening a project file"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:667
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:652
msgctxt "@window:text"
msgid "Default behavior when opening a project file: "
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:681
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:666
msgctxt "@option:openProject"
msgid "Always ask me this"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:682
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:667
msgctxt "@option:openProject"
msgid "Always open as a project"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:683
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:668
msgctxt "@option:openProject"
msgid "Always import models"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:719
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:705
msgctxt "@info:tooltip"
msgid ""
"When you have made changes to a profile and switched to a different one, a "
@@ -4574,45 +4649,45 @@ msgid ""
"not, or you can choose a default behaviour and never show that dialog again."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:728
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:714
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedQualityProfileSelector.qml:52
msgctxt "@label"
msgid "Profiles"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:733
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:719
msgctxt "@window:text"
msgid ""
"Default behavior for changed setting values when switching to a different "
"profile: "
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:748
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:734
msgctxt "@option:discardOrKeep"
msgid "Always discard changed settings"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:749
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:735
msgctxt "@option:discardOrKeep"
msgid "Always transfer changed settings to new profile"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:783
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:770
msgctxt "@label"
msgid "Privacy"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:790
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:777
msgctxt "@info:tooltip"
msgid "Should Cura check for updates when the program is started?"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:795
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:782
msgctxt "@option:check"
msgid "Check for updates on start"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:805
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:792
msgctxt "@info:tooltip"
msgid ""
"Should anonymous data about your print be sent to Ultimaker? Note, no "
@@ -4620,12 +4695,12 @@ msgid ""
"stored."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:810
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:797
msgctxt "@option:check"
msgid "Send (anonymous) print information"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:819
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:806
msgctxt "@action:button"
msgid "More information"
msgstr ""
@@ -4665,57 +4740,67 @@ msgctxt "@action:button"
msgid "Export"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:234
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:199
+msgctxt "@action:button Sending materials to printers"
+msgid "Sync with Printers"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:248
msgctxt "@action:label"
msgid "Printer"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:298
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:274
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:312
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:277
msgctxt "@title:window"
msgid "Confirm Remove"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:301
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:275
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:315
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:278
msgctxt "@label (%1 is object name)"
msgid "Are you sure you wish to remove %1? This cannot be undone!"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:315
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:323
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:329
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:337
msgctxt "@title:window"
msgid "Import Material"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:324
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:338
msgctxt "@info:status Don't translate the XML tags or !"
msgid ""
"Could not import material %1: %2"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:328
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:342
msgctxt "@info:status Don't translate the XML tag !"
msgid "Successfully imported material %1"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:346
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:354
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:360
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:368
msgctxt "@title:window"
msgid "Export Material"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:358
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:372
msgctxt "@info:status Don't translate the XML tags and !"
msgid ""
"Failed to export material to %1: %2"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:364
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:378
msgctxt "@info:status Don't translate the XML tag !"
msgid "Successfully exported material to %1"
msgstr ""
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:388
+msgctxt "@title:window"
+msgid "Export All Materials"
+msgstr ""
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:72
msgctxt "@title"
msgid "Information"
@@ -4829,55 +4914,55 @@ msgctxt "@info"
msgid "Please provide a name for this profile."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:260
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:263
msgctxt "@title:window"
msgid "Duplicate Profile"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:291
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:294
msgctxt "@title:window"
msgid "Rename Profile"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:304
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:307
msgctxt "@title:window"
msgid "Import Profile"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:333
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:336
msgctxt "@title:window"
msgid "Export Profile"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:396
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:399
msgctxt "@label %1 is printer name"
msgid "Printer: %1"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:554
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:557
msgctxt "@action:button"
msgid "Update profile with current settings/overrides"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:561
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:564
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Custom/QualitiesWithIntentMenu.qml:244
msgctxt "@action:button"
msgid "Discard current changes"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:580
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:583
msgctxt "@action:label"
msgid ""
"This profile uses the defaults specified by the printer, so it has no "
"settings/overrides in the list below."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:588
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:591
msgctxt "@action:label"
msgid "Your current settings match the selected profile."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:606
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:609
msgctxt "@title:tab"
msgid "Global Settings"
msgstr ""
@@ -4907,12 +4992,12 @@ msgctxt "@title:column"
msgid "Unit"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:14
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:16
msgctxt "@title:tab"
msgid "Setting Visibility"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:46
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:48
msgctxt "@label:textbox"
msgid "Check all"
msgstr ""
@@ -5278,27 +5363,27 @@ msgctxt "@label:textbox"
msgid "Search settings"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:456
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:468
msgctxt "@action:menu"
msgid "Copy value to all extruders"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:465
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:477
msgctxt "@action:menu"
msgid "Copy all changed values to all extruders"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:502
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:514
msgctxt "@action:menu"
msgid "Hide this setting"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:515
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:527
msgctxt "@action:menu"
msgid "Don't show this setting"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:519
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:531
msgctxt "@action:menu"
msgid "Keep this setting visible"
msgstr ""
@@ -5358,11 +5443,6 @@ msgctxt "@button"
msgid "Add printer manually"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddCloudPrintersView.qml:218
-msgctxt "@button"
-msgid "Finish"
-msgstr ""
-
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddLocalPrinterScrollView.qml:230
msgctxt "@label"
msgid "Manufacturer"
@@ -5471,32 +5551,32 @@ msgctxt "@button"
msgid "Connect"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:43
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/ChangelogContent.qml:24
msgctxt "@label"
-msgid "Ultimaker Account"
+msgid "Release Notes"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:84
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:124
msgctxt "@text"
-msgid "Your key to connected 3D printing"
+msgid "Add material settings and plugins from the Marketplace"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:101
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:154
msgctxt "@text"
-msgid "- Customize your experience with more print profiles and plugins"
+msgid "Backup and sync your material settings and plugins"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:104
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:184
msgctxt "@text"
-msgid "- Stay flexible by syncing your setup and loading it anywhere"
+msgid "Share ideas and get help from 48,000+ users in the Ultimaker Community"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:107
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:217
msgctxt "@text"
-msgid "- Increase efficiency with a remote workflow on Ultimaker printers"
+msgid "Create a free Ultimaker Account"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:157
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:230
msgctxt "@button"
msgid "Skip"
msgstr ""
@@ -5559,26 +5639,31 @@ msgctxt "@button"
msgid "Decline and close"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:29
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:56
msgctxt "@label"
msgid "Welcome to Ultimaker Cura"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:47
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:68
msgctxt "@text"
msgid ""
-"Please follow these steps to set up\n"
-"Ultimaker Cura. This will only take a few moments."
+"Please follow these steps to set up Ultimaker Cura. This will only take a "
+"few moments."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:58
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:86
msgctxt "@button"
msgid "Get started"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:24
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:28
msgctxt "@label"
-msgid "What's new in Ultimaker Cura"
+msgid "What's New"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Widgets/ComboBox.qml:24
+msgctxt "@label"
+msgid "No items to select from"
msgstr ""
#: ModelChecker/plugin.json
@@ -5663,6 +5748,18 @@ msgctxt "name"
msgid "Cura Profile Writer"
msgstr ""
+#: DigitalLibrary/plugin.json
+msgctxt "description"
+msgid ""
+"Connects to the Digital Library, allowing Cura to open files from and save "
+"files to the Digital Library."
+msgstr ""
+
+#: DigitalLibrary/plugin.json
+msgctxt "name"
+msgid "Ultimaker Digital Library"
+msgstr ""
+
#: FirmwareUpdateChecker/plugin.json
msgctxt "description"
msgid "Checks for firmware updates."
@@ -6139,6 +6236,26 @@ msgctxt "name"
msgid "Version Upgrade 4.7 to 4.8"
msgstr ""
+#: VersionUpgrade/VersionUpgrade48to49/plugin.json
+msgctxt "description"
+msgid "Upgrades configurations from Cura 4.8 to Cura 4.9."
+msgstr ""
+
+#: VersionUpgrade/VersionUpgrade48to49/plugin.json
+msgctxt "name"
+msgid "Version Upgrade 4.8 to 4.9"
+msgstr ""
+
+#: VersionUpgrade/VersionUpgrade49to410/plugin.json
+msgctxt "description"
+msgid "Upgrades configurations from Cura 4.9 to Cura 4.10."
+msgstr ""
+
+#: VersionUpgrade/VersionUpgrade49to410/plugin.json
+msgctxt "name"
+msgid "Version Upgrade 4.9 to 4.10"
+msgstr ""
+
#: X3DReader/plugin.json
msgctxt "description"
msgid "Provides support for reading X3D files."
diff --git a/resources/i18n/de_DE/cura.po b/resources/i18n/de_DE/cura.po
index 5743da88dc..fb20f85938 100644
--- a/resources/i18n/de_DE/cura.po
+++ b/resources/i18n/de_DE/cura.po
@@ -1,13 +1,13 @@
# Cura
-# Copyright (C) 2020 Ultimaker B.V.
+# Copyright (C) 2021 Ultimaker B.V.
# This file is distributed under the same license as the Cura package.
#
msgid ""
msgstr ""
-"Project-Id-Version: Cura 4.8\n"
+"Project-Id-Version: Cura 4.10\n"
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
-"POT-Creation-Date: 2020-10-19 13:15+0200\n"
-"PO-Revision-Date: 2020-11-09 14:27+0100\n"
+"POT-Creation-Date: 2021-06-10 17:35+0200\n"
+"PO-Revision-Date: 2021-04-16 15:15+0200\n"
"Last-Translator: Lionbridge \n"
"Language-Team: German , German \n"
"Language: de_DE\n"
@@ -17,8 +17,12 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 2.4.1\n"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/DiscoveredPrintersModel.py:83 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:110 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/QualityManagementModel.py:361
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1581 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:130 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:171
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/DiscoveredPrintersModel.py:83
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:110
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/QualityManagementModel.py:361
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1612
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:130
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:171
msgctxt "@label"
msgid "Unknown"
msgstr "Unbekannt"
@@ -44,47 +48,56 @@ msgctxt "@label {0} is the name of a printer that's about to be deleted."
msgid "Are you sure you wish to remove {0}? This cannot be undone!"
msgstr "Möchten Sie {0} wirklich entfernen? Der Vorgang kann nicht rückgängig gemacht werden!"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:42 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:11 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/QualityManagementModel.py:338
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:42
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:11
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/QualityManagementModel.py:338
msgctxt "@label"
msgid "Default"
msgstr "Default"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:45 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:14
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:45
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:14
msgctxt "@label"
msgid "Visual"
msgstr "Visuell"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:46 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:15
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:46
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:15
msgctxt "@text"
msgid "The visual profile is designed to print visual prototypes and models with the intent of high visual and surface quality."
msgstr "Das visuelle Profil wurde für den Druck visueller Prototypen und Modellen entwickelt, bei denen das Ziel eine hohe visuelle Qualität und eine hohe Oberflächenqualität ist."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:49 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:18
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:49
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:18
msgctxt "@label"
msgid "Engineering"
msgstr "Engineering"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:50 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:19
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:50
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:19
msgctxt "@text"
msgid "The engineering profile is designed to print functional prototypes and end-use parts with the intent of better accuracy and for closer tolerances."
msgstr "Das Engineering-Profil ist für den Druck von Funktionsprototypen und Endnutzungsteilen gedacht, bei denen Präzision gefragt ist und engere Toleranzen gelten."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:53 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:22
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:53
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:22
msgctxt "@label"
msgid "Draft"
msgstr "Entwurf"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:54 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:23
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:54
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:23
msgctxt "@text"
msgid "The draft profile is designed to print initial prototypes and concept validation with the intent of significant print time reduction."
msgstr "Das Entwurfsprofil wurde für erste Prototypen und die Konzeptvalidierung entwickelt, um einen deutlich schnelleren Druck zu ermöglichen."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:226
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:234
msgctxt "@label"
msgid "Custom Material"
msgstr "Benutzerdefiniertes Material"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:227 /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationMenu.qml:205
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:235
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationMenu.qml:205
msgctxt "@label"
msgid "Custom"
msgstr "Benutzerdefiniert"
@@ -105,51 +118,63 @@ msgctxt "@item:inlistbox"
msgid "All Files (*)"
msgstr "Alle Dateien (*)"
-#: /home/trin/Gedeeld/Projects/Cura/cura/API/Account.py:178
+#: /home/trin/Gedeeld/Projects/Cura/cura/API/Account.py:181
msgctxt "@info:title"
msgid "Login failed"
msgstr "Login fehlgeschlagen"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:67 /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:24
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:67
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:24
msgctxt "@info:status"
msgid "Finding new location for objects"
msgstr "Neue Position für Objekte finden"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:71 /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:28
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:71
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:28
msgctxt "@info:title"
msgid "Finding Location"
msgstr "Position finden"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:150 /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:41 /home/trin/Gedeeld/Projects/Cura/cura/MultiplyObjectsJob.py:76
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:150
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:41
+#: /home/trin/Gedeeld/Projects/Cura/cura/MultiplyObjectsJob.py:76
msgctxt "@info:status"
msgid "Unable to find a location within the build volume for all objects"
msgstr "Innerhalb der Druckabmessung für alle Objekte konnte keine Position gefunden werden"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:151 /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:42
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:151
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:42
msgctxt "@info:title"
msgid "Can't Find Location"
msgstr "Kann Position nicht finden"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:104
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:116
msgctxt "@info:backup_failed"
msgid "Could not create archive from user data directory: {}"
msgstr "Konnte kein Archiv von Benutzer-Datenverzeichnis {} erstellen"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:110 /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:107 /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:113
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:122
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:107
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:113
msgctxt "@info:title"
msgid "Backup"
msgstr "Backup"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:123
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:135
msgctxt "@info:backup_failed"
msgid "Tried to restore a Cura backup without having proper data or meta data."
msgstr "Versucht, ein Cura-Backup-Verzeichnis ohne entsprechende Daten oder Metadaten wiederherzustellen."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:134
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:146
msgctxt "@info:backup_failed"
msgid "Tried to restore a Cura backup that is higher than the current version."
msgstr "Versucht, ein Cura-Backup wiederherzustellen, das eine höhere Version als die aktuelle hat."
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:157
+msgctxt "@info:backup_failed"
+msgid "The following error occurred while trying to restore a Cura backup:"
+msgstr "Beim Versuch, ein Backup von Cura wiederherzustellen, trat der folgende Fehler auf:"
+
#: /home/trin/Gedeeld/Projects/Cura/cura/BuildVolume.py:98
msgctxt "@info:status"
msgid "The build volume height has been reduced due to the value of the \"Print Sequence\" setting to prevent the gantry from colliding with printed models."
@@ -299,71 +324,76 @@ msgctxt "@action:button"
msgid "Send report"
msgstr "Bericht senden"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:521
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:527
msgctxt "@info:progress"
msgid "Loading machines..."
msgstr "Geräte werden geladen..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:528
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:534
msgctxt "@info:progress"
msgid "Setting up preferences..."
msgstr "Erstellungen werden eingerichtet ..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:657
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:672
msgctxt "@info:progress"
msgid "Initializing Active Machine..."
msgstr "Aktives Gerät wird initialisiert ..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:788
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:803
msgctxt "@info:progress"
msgid "Initializing machine manager..."
msgstr "Gerätemanager wird initialisiert ..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:802
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:817
msgctxt "@info:progress"
msgid "Initializing build volume..."
msgstr "Bauraum wird initialisiert ..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:870
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:888
msgctxt "@info:progress"
msgid "Setting up scene..."
msgstr "Die Szene wird eingerichtet..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:906
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:924
msgctxt "@info:progress"
msgid "Loading interface..."
msgstr "Die Benutzeroberfläche wird geladen..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:911
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:929
msgctxt "@info:progress"
msgid "Initializing engine..."
msgstr "Funktion wird initialisiert ..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1221
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1246
#, python-format
msgctxt "@info 'width', 'depth' and 'height' are variable names that must NOT be translated; just translate the format of ##x##x## mm."
msgid "%(width).1f x %(depth).1f x %(height).1f mm"
msgstr "%(width).1f x %(depth).1f x %(height).1f mm"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1777
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1799
#, python-brace-format
msgctxt "@info:status"
msgid "Only one G-code file can be loaded at a time. Skipped importing {0}"
msgstr "Es kann nur jeweils ein G-Code gleichzeitig geladen werden. Wichtige {0} werden übersprungen."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1778 /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:188 /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:242
-#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:153 /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:165
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1800
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:190
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:244
+#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:153
+#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:165
msgctxt "@info:title"
msgid "Warning"
msgstr "Warnhinweis"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1787
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1809
#, python-brace-format
msgctxt "@info:status"
msgid "Can't open any other file if G-code is loading. Skipped importing {0}"
msgstr "Wenn G-Code geladen wird, kann keine weitere Datei geöffnet werden. Wichtige {0} werden übersprungen."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1788 /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:146 /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:153
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1810
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:146
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:153
#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:139
msgctxt "@info:title"
msgid "Error"
@@ -384,7 +414,7 @@ msgctxt "@info:title"
msgid "Placing Object"
msgstr "Objekt-Platzierung"
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationHelpers.py:90
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationHelpers.py:92
msgctxt "@message"
msgid "Could not read response."
msgstr "Antwort konnte nicht gelesen werden."
@@ -404,28 +434,31 @@ msgctxt "@message"
msgid "Something unexpected happened when trying to log in, please try again."
msgstr "Bei dem Versuch, sich anzumelden, trat ein unerwarteter Fehler auf. Bitte erneut versuchen."
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:187
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:189
msgctxt "@info"
msgid "Unable to start a new sign in process. Check if another sign in attempt is still active."
msgstr "Es kann kein neuer Anmeldevorgang gestartet werden. Bitte überprüfen Sie, ob noch ein weiterer Anmeldevorgang aktiv ist."
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:242
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:244
msgctxt "@info"
msgid "Unable to reach the Ultimaker account server."
msgstr "Der Ultimaker-Konto-Server konnte nicht erreicht werden."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:205 /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:132
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:205
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:132
msgctxt "@title:window"
msgid "File Already Exists"
msgstr "Datei bereits vorhanden"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:206 /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:133
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:206
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:133
#, python-brace-format
msgctxt "@label Don't translate the XML tag !"
msgid "The file {0} already exists. Are you sure you want to overwrite it?"
msgstr "Die Datei {0} ist bereits vorhanden. Soll die Datei wirklich überschrieben werden?"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:452 /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:455
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:457
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:460
msgctxt "@info:status"
msgid "Invalid file URL:"
msgstr "Ungültige Datei-URL:"
@@ -477,7 +510,8 @@ msgctxt "@info:status Don't translate the XML tags !"
msgid "Failed to import profile from {0}:"
msgstr "Import des Profils aus Datei {0} fehlgeschlagen:"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:235 /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:245
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:235
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:245
#, python-brace-format
msgctxt "@info:status Don't translate the XML tags !"
msgid "This profile {0} contains incorrect data, could not import it."
@@ -507,33 +541,33 @@ msgctxt "@info:status"
msgid "Profile {0} has an unknown file type or is corrupted."
msgstr "Profil {0} hat einen unbekannten Dateityp oder ist beschädigt."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:423
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:426
msgctxt "@label"
msgid "Custom profile"
msgstr "Benutzerdefiniertes Profil"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:439
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:442
msgctxt "@info:status"
msgid "Profile is missing a quality type."
msgstr "Für das Profil fehlt eine Qualitätsangabe."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:443
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:446
msgctxt "@info:status"
-msgid "Global stack is missing."
-msgstr "Globaler Stack fehlt."
+msgid "There is no active printer yet."
+msgstr "Es ist noch kein Drucker aktiv."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:449
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:452
msgctxt "@info:status"
msgid "Unable to add the profile."
msgstr "Das Profil kann nicht hinzugefügt werden."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:463
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:466
#, python-brace-format
msgctxt "@info:status"
msgid "Quality type '{0}' is not compatible with the current active machine definition '{1}'."
msgstr "Der Qualitätstyp „{0}“ ist nicht mit der aktuell aktiven Maschinendefinition „{1}“ kompatibel."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:468
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:471
#, python-brace-format
msgctxt "@info:status"
msgid "Warning: The profile is not visible because its quality type '{0}' is not available for the current configuration. Switch to a material/nozzle combination that can use this quality type."
@@ -549,40 +583,51 @@ msgctxt "@info:No intent profile selected"
msgid "Default"
msgstr "Default"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:712 /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:216
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:713
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:216
msgctxt "@label"
msgid "Nozzle"
msgstr "Düse"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:860
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:856
msgctxt "@info:message Followed by a list of settings."
msgid "Settings have been changed to match the current availability of extruders:"
msgstr "Die Einstellungen wurden an die aktuell verfügbaren Extruder angepasst:"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:862
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:858
msgctxt "@info:title"
msgid "Settings updated"
msgstr "Einstellungen aktualisiert"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1447
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1478
msgctxt "@info:title"
msgid "Extruder(s) Disabled"
msgstr "Extruder deaktiviert"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:17 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:67 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:48
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:17
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:67
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:48
msgctxt "@action:button"
msgid "Add"
msgstr "Hinzufügen"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:26 /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:263
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:26
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:272
msgctxt "@action:button"
msgid "Finish"
msgstr "Beenden"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:33 /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:441 /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:234 /home/trin/Gedeeld/Projects/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:150
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxProgressButton.qml:19 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/dialogs/ToolboxConfirmUninstallResetDialog.qml:81
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:352 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:58 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/PrintWindow.qml:42
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:87 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:292
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:33
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:445
+#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:234
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:150
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxProgressButton.qml:19
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/dialogs/ToolboxConfirmUninstallResetDialog.qml:81
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:352
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:58
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/PrintWindow.qml:42
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:82
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:292
msgctxt "@action:button"
msgid "Cancel"
msgstr "Abbrechen"
@@ -593,73 +638,84 @@ msgctxt "@label"
msgid "Group #{group_nr}"
msgstr "Gruppe #{group_nr}"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:83
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:82
msgctxt "@tooltip"
msgid "Outer Wall"
msgstr "Außenwand"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:84
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:83
msgctxt "@tooltip"
msgid "Inner Walls"
msgstr "Innenwände"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:85
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:84
msgctxt "@tooltip"
msgid "Skin"
msgstr "Außenhaut"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:86
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:85
msgctxt "@tooltip"
msgid "Infill"
msgstr "Füllung"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:87
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:86
msgctxt "@tooltip"
msgid "Support Infill"
msgstr "Stützstruktur-Füllung"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:88
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:87
msgctxt "@tooltip"
msgid "Support Interface"
msgstr "Stützstruktur-Schnittstelle"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:89
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:88
msgctxt "@tooltip"
msgid "Support"
msgstr "Stützstruktur"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:90
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:89
msgctxt "@tooltip"
msgid "Skirt"
msgstr "Skirt"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:91
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:90
msgctxt "@tooltip"
msgid "Prime Tower"
msgstr "Einzugsturm"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:92
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:91
msgctxt "@tooltip"
msgid "Travel"
msgstr "Bewegungen"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:93
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:92
msgctxt "@tooltip"
msgid "Retractions"
msgstr "Einzüge"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:94
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:93
msgctxt "@tooltip"
msgid "Other"
msgstr "Sonstige"
#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:56
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:259
msgctxt "@action:button"
msgid "Next"
msgstr "Weiter"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WhatsNewPagesModel.py:17 /home/trin/Gedeeld/Projects/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:185 /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:128
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:482 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:173 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:127
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:268
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WhatsNewPagesModel.py:55
+msgctxt "@action:button"
+msgid "Skip"
+msgstr "Überspringen"
+
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WhatsNewPagesModel.py:60
+#: /home/trin/Gedeeld/Projects/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:185
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:128
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:485
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:174
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:127
msgctxt "@action:button"
msgid "Close"
msgstr "Schließen"
@@ -683,29 +739,36 @@ msgstr ""
"
Erfahren Sie, wie Sie die bestmögliche Druckqualität und Zuverlässigkeit sicherstellen.
"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:535
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:540
#, python-brace-format
msgctxt "@info:status Don't translate the XML tags or !"
msgid "Project file {0} contains an unknown machine type {1}. Cannot import the machine. Models will be imported instead."
msgstr "Projektdatei {0} enthält einen unbekannten Maschinentyp {1}. Importieren der Maschine ist nicht möglich. Stattdessen werden die Modelle importiert."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:538
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:543
msgctxt "@info:title"
msgid "Open Project File"
msgstr "Projektdatei öffnen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:634
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:639
#, python-brace-format
msgctxt "@info:error Don't translate the XML tags or !"
msgid "Project file {0} is suddenly inaccessible: {1}."
msgstr "Auf Projektdatei {0} kann plötzlich nicht mehr zugegriffen werden: {1}."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:635
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:640
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:647
msgctxt "@info:title"
msgid "Can't Open Project File"
msgstr "Projektdatei kann nicht geöffnet werden"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:686
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:646
+#, python-brace-format
+msgctxt "@info:error Don't translate the XML tags or !"
+msgid "Project file {0} is corrupt: {1}."
+msgstr "Projektdatei {0} ist beschädigt: {1}."
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:698
#, python-brace-format
msgctxt "@info:error Don't translate the XML tag !"
msgid "Project file {0} is made using profiles that are unknown to this version of Ultimaker Cura."
@@ -721,7 +784,8 @@ msgctxt "@title:tab"
msgid "Custom"
msgstr "Benutzerdefiniert"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/__init__.py:27 /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/__init__.py:33
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/__init__.py:27
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/__init__.py:33
msgctxt "@item:inlistbox"
msgid "3MF File"
msgstr "3MF-Datei"
@@ -731,7 +795,8 @@ msgctxt "@error:zip"
msgid "3MF Writer plug-in is corrupt."
msgstr "Das 3MF-Writer-Plugin ist beschädigt."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:59 /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:92
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:59
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:92
msgctxt "@error:zip"
msgid "No permission to write the workspace here."
msgstr "Keine Erlaubnis zum Beschreiben dieses Arbeitsbereichs."
@@ -741,7 +806,7 @@ msgctxt "@error:zip"
msgid "The operating system does not allow saving a project file to this location or with this file name."
msgstr "Das Betriebssystem erlaubt es nicht, eine Projektdatei an diesem Speicherort oder mit diesem Dateinamen zu speichern."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWriter.py:185
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWriter.py:206
msgctxt "@error:zip"
msgid "Error writing 3mf file."
msgstr "Fehler beim Schreiben von 3MF-Datei."
@@ -796,7 +861,8 @@ msgctxt "@error:file_size"
msgid "The backup exceeds the maximum file size."
msgstr "Das Backup überschreitet die maximale Dateigröße."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DriveApiService.py:82 /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/RestoreBackupJob.py:23
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DriveApiService.py:86
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/RestoreBackupJob.py:26
msgctxt "@info:backup_status"
msgid "There was an error trying to restore your backup."
msgstr "Beim Versuch, Ihr Backup wiederherzustellen, trat ein Fehler auf."
@@ -806,41 +872,45 @@ msgctxt "@item:inmenu"
msgid "Manage backups"
msgstr "Backups verwalten"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:356
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:382
msgctxt "@info:status"
msgid "Unable to slice with the current material as it is incompatible with the selected machine or configuration."
msgstr "Slicing mit dem aktuellen Material nicht möglich, da es mit der gewählten Maschine oder Konfiguration nicht kompatibel ist."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:356 /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:387 /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:411
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:420 /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:429 /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:441
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:382
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:413
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:437
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:446
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:455
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:467
msgctxt "@info:title"
msgid "Unable to slice"
msgstr "Slicing nicht möglich"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:386
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:412
#, python-brace-format
msgctxt "@info:status"
msgid "Unable to slice with the current settings. The following settings have errors: {0}"
msgstr "Die aktuellen Einstellungen lassen kein Schneiden (Slicing) zu. Die folgenden Einstellungen sind fehlerhaft:{0}"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:410
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:436
#, python-brace-format
msgctxt "@info:status"
msgid "Unable to slice due to some per-model settings. The following settings have errors on one or more models: {error_labels}"
msgstr "Aufgrund der Pro-Modell-Einstellungen ist kein Schneiden (Slicing) möglich. Die folgenden Einstellungen sind für ein oder mehrere Modelle fehlerhaft: {error_labels}"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:419
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:445
msgctxt "@info:status"
msgid "Unable to slice because the prime tower or prime position(s) are invalid."
msgstr "Schneiden (Slicing) ist nicht möglich, da der Einzugsturm oder die Einzugsposition(en) ungültig ist (sind)."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:428
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:454
#, python-format
msgctxt "@info:status"
msgid "Unable to slice because there are objects associated with disabled Extruder %s."
msgstr "Schneiden (Slicing) ist nicht möglich, da Objekte vorhanden sind, die mit dem deaktivierten Extruder %s verbunden sind."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:437
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:463
msgctxt "@info:status"
msgid ""
"Please review settings and check if your models:\n"
@@ -853,7 +923,8 @@ msgstr ""
"- Einem aktiven Extruder zugewiesen sind\n"
"- Nicht alle als Modifier Meshes eingerichtet sind"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/ProcessSlicedLayersJob.py:52 /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/ProcessSlicedLayersJob.py:260
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/ProcessSlicedLayersJob.py:52
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/ProcessSlicedLayersJob.py:260
msgctxt "@info:status"
msgid "Processing Layers"
msgstr "Schichten werden verarbeitet"
@@ -863,7 +934,8 @@ msgctxt "@info:title"
msgid "Information"
msgstr "Informationen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraProfileReader/__init__.py:14 /home/trin/Gedeeld/Projects/Cura/plugins/CuraProfileWriter/__init__.py:14
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraProfileReader/__init__.py:14
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraProfileWriter/__init__.py:14
msgctxt "@item:inlistbox"
msgid "Cura Profile"
msgstr "Cura-Profil"
@@ -895,7 +967,8 @@ msgctxt "@action"
msgid "Update Firmware"
msgstr "Firmware aktualisieren"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeGzReader/__init__.py:17 /home/trin/Gedeeld/Projects/Cura/plugins/GCodeGzWriter/__init__.py:17
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeGzReader/__init__.py:17
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeGzWriter/__init__.py:17
msgctxt "@item:inlistbox"
msgid "Compressed G-code File"
msgstr "Komprimierte G-Code-Datei"
@@ -905,7 +978,9 @@ msgctxt "@error:not supported"
msgid "GCodeGzWriter does not support text mode."
msgstr "GCodeWriter unterstützt keinen Textmodus."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeProfileReader/__init__.py:14 /home/trin/Gedeeld/Projects/Cura/plugins/GCodeReader/__init__.py:14 /home/trin/Gedeeld/Projects/Cura/plugins/GCodeWriter/__init__.py:16
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeProfileReader/__init__.py:14
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeReader/__init__.py:14
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeWriter/__init__.py:16
msgctxt "@item:inlistbox"
msgid "G-code File"
msgstr "G-Code-Datei"
@@ -915,7 +990,8 @@ msgctxt "@info:status"
msgid "Parsing G-code"
msgstr "G-Code parsen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeReader/FlavorParser.py:349 /home/trin/Gedeeld/Projects/Cura/plugins/GCodeReader/FlavorParser.py:503
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeReader/FlavorParser.py:349
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeReader/FlavorParser.py:503
msgctxt "@info:title"
msgid "G-code Details"
msgstr "G-Code-Details"
@@ -935,7 +1011,8 @@ msgctxt "@error:not supported"
msgid "GCodeWriter does not support non-text mode."
msgstr "GCodeWriter unterstützt keinen Nicht-Textmodus."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeWriter/GCodeWriter.py:80 /home/trin/Gedeeld/Projects/Cura/plugins/GCodeWriter/GCodeWriter.py:96
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeWriter/GCodeWriter.py:80
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeWriter/GCodeWriter.py:96
msgctxt "@warning:status"
msgid "Please prepare G-code before exporting."
msgstr "Vor dem Exportieren bitte G-Code vorbereiten."
@@ -1021,7 +1098,8 @@ msgctxt "@item:inlistbox"
msgid "Save to Removable Drive {0}"
msgstr "Auf Wechseldatenträger speichern {0}"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:66 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/MeshFormatHandler.py:118
+#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:66
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/MeshFormatHandler.py:118
msgctxt "@info:status"
msgid "There are no file formats available to write with!"
msgstr "Es sind keine Dateiformate zum Schreiben vorhanden!"
@@ -1037,7 +1115,8 @@ msgctxt "@info:title"
msgid "Saving"
msgstr "Wird gespeichert"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:106 /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:109
+#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:106
+#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:109
#, python-brace-format
msgctxt "@info:status Don't translate the XML tags or !"
msgid "Could not save to {0}: {1}"
@@ -1049,7 +1128,8 @@ msgctxt "@info:status Don't translate the tag {device}!"
msgid "Could not find a file name when trying to write to {device}."
msgstr "Bei dem Versuch, auf {device} zu schreiben, wurde ein Dateiname nicht gefunden."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:138 /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:153
+#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:138
+#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:153
#, python-brace-format
msgctxt "@info:status"
msgid "Could not save to removable drive {0}: {1}"
@@ -1099,27 +1179,28 @@ msgctxt "@item:intext"
msgid "Removable Drive"
msgstr "Wechseldatenträger"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:121
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:128
msgctxt "@info:status"
msgid "Cura does not accurately display layers when Wire Printing is enabled."
msgstr "Cura zeigt die Schichten nicht präzise an, wenn „Drucken mit Drahtstruktur“ aktiviert ist."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:122
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:129
msgctxt "@info:title"
msgid "Simulation View"
msgstr "Simulationsansicht"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:123
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:130
msgctxt "@info:status"
msgid "Nothing is shown because you need to slice first."
msgstr "Es kann nichts angezeigt werden, weil Sie zuerst das Slicing vornehmen müssen."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:123
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:130
msgctxt "@info:title"
msgid "No layers to show"
msgstr "Keine anzeigbaren Schichten vorhanden"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:124 /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:73
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:131
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:74
msgctxt "@info:option_text"
msgid "Do not show this message again"
msgstr "Diese Meldung nicht mehr anzeigen"
@@ -1129,16 +1210,21 @@ msgctxt "@item:inlistbox"
msgid "Layer view"
msgstr "Schichtenansicht"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:70
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:71
msgctxt "@info:status"
-msgid "Your model is not manifold. The highlighted areas indicate either missing or extraneous surfaces."
-msgstr "Ihrem Modell fehlen Schichten. Die fehlenden oder fehlerhaften Bereiche sind hervorgehoben."
+msgid "The highlighted areas indicate either missing or extraneous surfaces. Fix your model and open it again into Cura."
+msgstr "Die hervorgehobenen Bereiche kennzeichnen fehlende oder überschüssige Oberflächen. Beheben Sie die Fehler am Modell und öffnen Sie es erneut in Cura."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:72
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:73
msgctxt "@info:title"
-msgid "Model errors"
+msgid "Model Errors"
msgstr "Modellfehler"
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:79
+msgctxt "@action:button"
+msgid "Learn more"
+msgstr "Mehr erfahren"
+
#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/__init__.py:12
msgctxt "@item:inmenu"
msgid "Solid view"
@@ -1159,12 +1245,13 @@ msgctxt "@info:generic"
msgid "Do you want to sync material and software packages with your account?"
msgstr "Möchten Sie Material- und Softwarepakete mit Ihrem Konto synchronisieren?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py:143 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/DownloadPresenter.py:93
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py:143
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/DownloadPresenter.py:93
msgctxt "@info:title"
msgid "Changes detected from your Ultimaker account"
msgstr "Von Ihrem Ultimaker-Konto erkannte Änderungen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py:146
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py:145
msgctxt "@action:button"
msgid "Sync"
msgstr "Synchronisieren"
@@ -1179,7 +1266,8 @@ msgctxt "@button"
msgid "Decline"
msgstr "Ablehnen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/LicenseModel.py:10 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/UserAgreementContent.qml:56
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/LicenseModel.py:10
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/UserAgreementContent.qml:56
msgctxt "@button"
msgid "Agree"
msgstr "Stimme zu"
@@ -1199,7 +1287,7 @@ msgctxt "@info:generic"
msgid "You need to quit and restart {} before changes have effect."
msgstr "Sie müssen das Programm beenden und neu starten {}, bevor Änderungen wirksam werden."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/SyncOrchestrator.py:76
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/SyncOrchestrator.py:79
msgctxt "@info:generic"
msgid "{} plugins failed to download"
msgstr "{} Plugins konnten nicht heruntergeladen werden"
@@ -1234,12 +1322,17 @@ msgctxt "@item:inlistbox"
msgid "Compressed COLLADA Digital Asset Exchange"
msgstr "Compressed COLLADA Digital Asset Exchange"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPReader/__init__.py:22 /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/__init__.py:28
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPReader/__init__.py:22
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/__init__.py:28
msgctxt "@item:inlistbox"
msgid "Ultimaker Format Package"
msgstr "Ultimaker Format Package"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:146
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:57
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:72
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:94
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:149
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:159
msgctxt "@info:error"
msgid "Can't write to UFP file:"
msgstr "Kann nicht in UFP-Datei schreiben:"
@@ -1254,22 +1347,22 @@ msgctxt "@action"
msgid "Select upgrades"
msgstr "Upgrades wählen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:152
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:154
msgctxt "@action:button"
msgid "Print via cloud"
msgstr "Über Cloud drucken"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:153
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:155
msgctxt "@properties:tooltip"
msgid "Print via cloud"
msgstr "Über Cloud drucken"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:154
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:156
msgctxt "@info:status"
msgid "Connected via cloud"
msgstr "Über Cloud verbunden"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:264
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:270
#, python-brace-format
msgctxt "@error:send"
msgid "Unknown error code when uploading print job: {0}"
@@ -1280,7 +1373,7 @@ msgctxt "info:status"
msgid "New printer detected from your Ultimaker account"
msgid_plural "New printers detected from your Ultimaker account"
msgstr[0] "Ihr Ultimaker-Konto hat einen neuen Drucker erkannt"
-msgstr[1] "Ihr Ultimaker-Konto hat neue Drucker erkannt."
+msgstr[1] "Ihr Ultimaker-Konto hat neue Drucker erkannt"
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:238
#, python-brace-format
@@ -1315,7 +1408,8 @@ msgid_plural "These printers are not linked to the Digital Factory:"
msgstr[0] "Dieser Drucker ist nicht mit der Digital Factory verbunden:"
msgstr[1] "Diese Drucker sind nicht mit der Digital Factory verbunden:"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:329 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:419
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:329
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:419
msgctxt "info:name"
msgid "Ultimaker Digital Factory"
msgstr "Ultimaker Digital Factory"
@@ -1373,7 +1467,7 @@ msgstr[0] ""
"Möchten Sie wirklich fortfahren?"
msgstr[1] ""
"Es werden gleich {0} Drucker aus Cura entfernt. Der Vorgang kann nicht rückgängig gemacht werden. \n"
-"Möchten Sie wirklich fortfahren."
+"Möchten Sie wirklich fortfahren?"
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:468
msgctxt "@label"
@@ -1564,127 +1658,137 @@ msgctxt "@info:tooltip"
msgid "Some things could be problematic in this print. Click to see tips for adjustment."
msgstr "Einige Punkte bei diesem Druck könnten problematisch sein. Klicken Sie, um Tipps für die Anpassung zu erhalten."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:14
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:15
msgctxt "@title:window"
msgid "Open Project"
msgstr "Projekt öffnen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:61
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:62
msgctxt "@action:ComboBox Update/override existing profile"
msgid "Update existing"
msgstr "Vorhandenes aktualisieren"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:62
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:63
msgctxt "@action:ComboBox Save settings in a new profile"
msgid "Create new"
msgstr "Neu erstellen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:74 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:69
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:75
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:69
msgctxt "@action:title"
msgid "Summary - Cura Project"
msgstr "Zusammenfassung – Cura-Projekt"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:96 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:93
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:97
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:93
msgctxt "@action:label"
msgid "Printer settings"
msgstr "Druckereinstellungen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:112
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:113
msgctxt "@info:tooltip"
msgid "How should the conflict in the machine be resolved?"
msgstr "Wie soll der Konflikt im Gerät gelöst werden?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:165 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:102
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:167
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:102
msgctxt "@action:label"
msgid "Type"
msgstr "Typ"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:181 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:117
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:183
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:117
msgctxt "@action:label"
msgid "Printer Group"
msgstr "Druckergruppe"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:203 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:218
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:205
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:218
msgctxt "@action:label"
msgid "Profile settings"
msgstr "Profileinstellungen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:219
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:221
msgctxt "@info:tooltip"
msgid "How should the conflict in the profile be resolved?"
msgstr "Wie soll der Konflikt im Profil gelöst werden?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:239 /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:349 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:117
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:242
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:353
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:117
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:242
msgctxt "@action:label"
msgid "Name"
msgstr "Name"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:255 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:259
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:258
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:259
msgctxt "@action:label"
msgid "Intent"
msgstr "Intent"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:271 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:226
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:274
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:226
msgctxt "@action:label"
msgid "Not in profile"
msgstr "Nicht im Profil"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:276 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:231
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:279
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:231
msgctxt "@action:label"
msgid "%1 override"
msgid_plural "%1 overrides"
msgstr[0] "%1 überschreiben"
msgstr[1] "%1 überschreibt"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:287
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:290
msgctxt "@action:label"
msgid "Derivative from"
msgstr "Ableitung von"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:292
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:295
msgctxt "@action:label"
msgid "%1, %2 override"
msgid_plural "%1, %2 overrides"
msgstr[0] "%1, %2 überschreiben"
msgstr[1] "%1, %2 überschreibt"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:309
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:312
msgctxt "@action:label"
msgid "Material settings"
msgstr "Materialeinstellungen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:325
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:328
msgctxt "@info:tooltip"
msgid "How should the conflict in the material be resolved?"
msgstr "Wie soll der Konflikt im Material gelöst werden?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:369
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:373
msgctxt "@action:label"
msgid "Setting visibility"
msgstr "Sichtbarkeit einstellen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:378
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:382
msgctxt "@action:label"
msgid "Mode"
msgstr "Modus"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:394
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:398
msgctxt "@action:label"
msgid "Visible settings:"
msgstr "Sichtbare Einstellungen:"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:399
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:403
msgctxt "@action:label"
msgid "%1 out of %2"
msgstr "%1 von %2"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:425
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:429
msgctxt "@action:warning"
msgid "Loading a project will clear all models on the build plate."
msgstr "Das Laden eines Projekts entfernt alle Modelle von der Druckplatte."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:453
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:457
msgctxt "@action:button"
msgid "Open"
msgstr "Öffnen"
@@ -1784,8 +1888,10 @@ msgctxt "@description"
msgid "Backup and synchronize your Cura settings."
msgstr "Ihre Cura-Einstellungen sichern und synchronisieren."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/qml/pages/WelcomePage.qml:51 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/WelcomePage.qml:39 /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:68
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:125
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/qml/pages/WelcomePage.qml:51
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/WelcomePage.qml:39
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:53
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:199
msgctxt "@button"
msgid "Sign in"
msgstr "Anmelden"
@@ -1935,7 +2041,8 @@ msgctxt "@item:inlistbox"
msgid "Linear"
msgstr "Linear"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:161 /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:172
+#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:161
+#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:172
msgctxt "@item:inlistbox"
msgid "Translucency"
msgstr "Transparenz"
@@ -1960,7 +2067,9 @@ msgctxt "@action:label"
msgid "Smoothing"
msgstr "Glättung"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:227 /home/trin/Gedeeld/Projects/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:139 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:361
+#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:227
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:139
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:361
msgctxt "@action:button"
msgid "OK"
msgstr "OK"
@@ -1980,10 +2089,18 @@ msgctxt "@label"
msgid "Nozzle size"
msgstr "Düsengröße"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:79 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:93 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:109
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:124 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:74 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:89
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:104 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:205 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:225
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:245 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:265 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:283
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:79
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:93
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:109
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:124
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:74
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:89
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:104
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:205
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:225
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:245
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:265
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:283
msgctxt "@label"
msgid "mm"
msgstr "mm"
@@ -2008,12 +2125,12 @@ msgctxt "@label"
msgid "Cooling Fan Number"
msgstr "Kühllüfter-Nr."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:162
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:163
msgctxt "@title:label"
msgid "Extruder Start G-code"
msgstr "G-Code Extruder-Start"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:176
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:177
msgctxt "@title:label"
msgid "Extruder End G-code"
msgstr "G-Code Extruder-Ende"
@@ -2098,12 +2215,17 @@ msgctxt "@label"
msgid "Number of Extruders"
msgstr "Anzahl Extruder"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:374
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:345
+msgctxt "@label"
+msgid "Apply Extruder offsets to GCode"
+msgstr "Extruder-Versatzwerte auf GCode anwenden"
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:393
msgctxt "@title:label"
msgid "Start G-code"
msgstr "Start G-Code"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:385
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:404
msgctxt "@title:label"
msgid "End G-code"
msgstr "Ende G-Code"
@@ -2130,6 +2252,11 @@ msgctxt "@label link to technical assistance"
msgid "View user manuals online"
msgstr "Benutzerhandbücher online anzeigen"
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MonitorStage/MonitorMain.qml:172
+msgctxt "@info"
+msgid "In order to monitor your print from Cura, please connect the printer."
+msgstr "Um Ihren Druck von Cura aus zu überwachen, schließen Sie bitte den Drucker an."
+
#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml:42
msgctxt "@label"
msgid "Mesh Type"
@@ -2175,7 +2302,8 @@ msgctxt "@title:window"
msgid "Select Settings to Customize for this model"
msgstr "Einstellungen für die benutzerdefinierte Anpassung dieses Modells wählen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:55 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:94
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:55
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:96
msgctxt "@label:textbox"
msgid "Filter..."
msgstr "Filtern..."
@@ -2185,114 +2313,131 @@ msgctxt "@label:checkbox"
msgid "Show all"
msgstr "Alle anzeigen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:18
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:20
msgctxt "@title:window"
msgid "Post Processing Plugin"
msgstr "Plugin Nachbearbeitung"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:57
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:59
msgctxt "@label"
msgid "Post Processing Scripts"
msgstr "Skripts Nachbearbeitung"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:233
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:235
msgctxt "@action"
msgid "Add a script"
msgstr "Ein Skript hinzufügen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:279
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:282
msgctxt "@label"
msgid "Settings"
msgstr "Einstellungen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:499
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:502
msgctxt "@info:tooltip"
msgid "Change active post-processing scripts."
msgstr "Aktive Nachbearbeitungsskripts ändern."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:503
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:506
msgctxt "@info:tooltip"
msgid "The following script is active:"
msgid_plural "The following scripts are active:"
msgstr[0] "Die folgenden Skript ist aktiv:"
msgstr[1] "Die folgenden Skripte sind aktiv:"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:20 /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:49
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:20
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:49
msgctxt "@label"
msgid "Color scheme"
msgstr "Farbschema"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:107
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:110
msgctxt "@label:listbox"
msgid "Material Color"
msgstr "Materialfarbe"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:111
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:114
msgctxt "@label:listbox"
msgid "Line Type"
msgstr "Linientyp"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:115
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:118
msgctxt "@label:listbox"
msgid "Speed"
msgstr "Geschwindigkeit"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:119
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:122
msgctxt "@label:listbox"
-msgid "Layer thickness"
+msgid "Layer Thickness"
msgstr "Schichtdicke"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:156
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:126
+msgctxt "@label:listbox"
+msgid "Line Width"
+msgstr "Linienbreite"
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:130
+msgctxt "@label:listbox"
+msgid "Flow"
+msgstr "Fluss"
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:171
msgctxt "@label"
msgid "Compatibility Mode"
msgstr "Kompatibilitätsmodus"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:230
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:245
msgctxt "@label"
msgid "Travels"
msgstr "Bewegungen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:236
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:251
msgctxt "@label"
msgid "Helpers"
msgstr "Helfer"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:242
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:257
msgctxt "@label"
msgid "Shell"
msgstr "Gehäuse"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:248 /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedInfillDensitySelector.qml:65
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:263
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedInfillDensitySelector.qml:65
msgctxt "@label"
msgid "Infill"
msgstr "Füllung"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:298
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:271
+msgctxt "@label"
+msgid "Starts"
+msgstr "Startet"
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:322
msgctxt "@label"
msgid "Only Show Top Layers"
msgstr "Nur obere Schichten anzeigen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:308
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:332
msgctxt "@label"
msgid "Show 5 Detailed Layers On Top"
msgstr "5 detaillierte Schichten oben anzeigen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:322
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:346
msgctxt "@label"
msgid "Top / Bottom"
msgstr "Oben/Unten"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:326
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:350
msgctxt "@label"
msgid "Inner Wall"
msgstr "Innenwand"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:384
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:419
msgctxt "@label"
msgid "min"
msgstr "min."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:433
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:488
msgctxt "@label"
msgid "max"
msgstr "max."
@@ -2367,7 +2512,8 @@ msgctxt "@action:label"
msgid "Website"
msgstr "Website"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:46 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxProgressButton.qml:20
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:46
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxProgressButton.qml:20
msgctxt "@action:button"
msgid "Installed"
msgstr "Installiert"
@@ -2382,17 +2528,20 @@ msgctxt "@label:The string between and is the highlighted link"
msgid "Buy material spools"
msgstr "Materialspulen kaufen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:96 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxInstalledTileActions.qml:34
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:96
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxInstalledTileActions.qml:34
msgctxt "@action:button"
msgid "Update"
msgstr "Aktualisierung"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:97 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxInstalledTileActions.qml:35
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:97
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxInstalledTileActions.qml:35
msgctxt "@action:button"
msgid "Updating"
msgstr "Aktualisierung wird durchgeführt"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:98 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxInstalledTileActions.qml:36
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:98
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxInstalledTileActions.qml:36
msgctxt "@action:button"
msgid "Updated"
msgstr "Aktualisiert"
@@ -2402,7 +2551,8 @@ msgctxt "@label"
msgid "Premium"
msgstr "Premium"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDownloadsShowcase.qml:39 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxHeader.qml:86
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDownloadsShowcase.qml:39
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxHeader.qml:86
msgctxt "@info:tooltip"
msgid "Go to Web Marketplace"
msgstr "Zum Web Marketplace gehen"
@@ -2427,7 +2577,9 @@ msgctxt "@title:tab"
msgid "Plugins"
msgstr "Plugins"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxHeader.qml:44 /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:466 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:89
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxHeader.qml:44
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:457
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:89
msgctxt "@title:tab"
msgid "Materials"
msgstr "Materialien"
@@ -2472,7 +2624,10 @@ msgctxt "@button"
msgid "Dismiss"
msgstr "Verwerfen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/dialogs/CompatibilityDialog.qml:23 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:123 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/FirstStartMachineActionsContent.qml:77
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/dialogs/CompatibilityDialog.qml:23
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:123
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/FirstStartMachineActionsContent.qml:77
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:178
msgctxt "@button"
msgid "Next"
msgstr "Weiter"
@@ -2537,7 +2692,8 @@ msgctxt "@label"
msgid "Last updated"
msgstr "Zuletzt aktualisiert"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:103 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:138
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:103
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:138
msgctxt "@label"
msgid "Brand"
msgstr "Marke"
@@ -2667,7 +2823,9 @@ msgctxt "@action:button"
msgid "Edit"
msgstr "Bearbeiten"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:88 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:55 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:156
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:88
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:55
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:156
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:138
msgctxt "@action:button"
msgid "Remove"
@@ -2683,17 +2841,20 @@ msgctxt "@label"
msgid "If your printer is not listed, read the network printing troubleshooting guide"
msgstr "Wenn Ihr Drucker nicht aufgeführt ist, lesen Sie die Anleitung für Fehlerbehebung für Netzwerkdruck"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:205 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:263
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:205
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:263
msgctxt "@label"
msgid "Type"
msgstr "Typ"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:225 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:279
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:225
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:279
msgctxt "@label"
msgid "Firmware version"
msgstr "Firmware-Version"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:239 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:295
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:239
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:295
msgctxt "@label"
msgid "Address"
msgstr "Adresse"
@@ -2723,7 +2884,8 @@ msgctxt "@title:window"
msgid "Invalid IP address"
msgstr "Ungültige IP-Adresse"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:297 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:146
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:297
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:146
msgctxt "@text"
msgid "Please enter a valid IP address."
msgstr "Bitte eine gültige IP-Adresse eingeben."
@@ -2733,7 +2895,8 @@ msgctxt "@title:window"
msgid "Printer Address"
msgstr "Druckeradresse"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:331 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:102
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:331
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:102
msgctxt "@label"
msgid "Enter the IP address of your printer on the network."
msgstr "Geben Sie die IP-Adresse Ihres Druckers in das Netzwerk ein."
@@ -2785,7 +2948,8 @@ msgctxt "@label"
msgid "Override will use the specified settings with the existing printer configuration. This may result in a failed print."
msgstr "Überschreiben verwendet die definierten Einstellungen mit der vorhandenen Druckerkonfiguration. Dies kann zu einem fehlgeschlagenen Druck führen."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:153 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:191
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:153
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:191
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:184
msgctxt "@label"
msgid "Glass"
@@ -2806,7 +2970,8 @@ msgctxt "@label"
msgid "Delete"
msgstr "Löschen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:100 /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:289
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:100
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:290
msgctxt "@label"
msgid "Resume"
msgstr "Zurückkehren"
@@ -2821,7 +2986,9 @@ msgctxt "@label"
msgid "Resuming..."
msgstr "Wird fortgesetzt..."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:106 /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:284 /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:293
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:106
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:285
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:294
msgctxt "@label"
msgid "Pause"
msgstr "Pausieren"
@@ -2861,7 +3028,8 @@ msgctxt "@label %1 is the name of a print job."
msgid "Are you sure you want to abort %1?"
msgstr "Möchten Sie %1 wirklich abbrechen?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:164 /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:335
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:164
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:336
msgctxt "@window:title"
msgid "Abort print"
msgstr "Drucken abbrechen"
@@ -2871,7 +3039,9 @@ msgctxt "@label link to Connect and Cloud interfaces"
msgid "Manage printer"
msgstr "Drucker verwalten"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:254 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:519 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:250
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:254
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:523
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:250
msgctxt "@info"
msgid "Please update your printer's firmware to manage the queue remotely."
msgstr "Damit Sie die Warteschlange aus der Ferne verwalten können, müssen Sie die Druckfirmware aktualisieren."
@@ -2896,27 +3066,34 @@ msgctxt "@label:status"
msgid "Idle"
msgstr "Leerlauf"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:365
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:364
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:84
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:86
+msgctxt "@label:status"
+msgid "Preparing..."
+msgstr "Vorbereitung..."
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:369
msgctxt "@label:status"
msgid "Printing"
msgstr "Drucken"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:406
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:410
msgctxt "@label"
msgid "Untitled"
msgstr "Unbenannt"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:427
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:431
msgctxt "@label"
msgid "Anonymous"
msgstr "Anonym"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:454
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:458
msgctxt "@label:status"
msgid "Requires configuration changes"
msgstr "Erfordert Konfigurationsänderungen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:492
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:496
msgctxt "@action:button"
msgid "Details"
msgstr "Details"
@@ -2931,21 +3108,18 @@ msgctxt "@label"
msgid "First available"
msgstr "Zuerst verfügbar"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:78 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:90
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:78
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:90
msgctxt "@label:status"
msgid "Aborted"
msgstr "Abgebrochen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:80 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:82
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:80
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:82
msgctxt "@label:status"
msgid "Finished"
msgstr "Beendet"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:84 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:86
-msgctxt "@label:status"
-msgid "Preparing..."
-msgstr "Vorbereitung..."
-
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:88
msgctxt "@label:status"
msgid "Aborting..."
@@ -3026,26 +3200,27 @@ msgctxt "@action:button"
msgid "Sign in"
msgstr "Anmelden"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:40
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:20
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:64
msgctxt "@label"
-msgid "Your key to connected 3D printing"
-msgstr "Ihr Schlüssel zu vernetztem 3D-Druck"
+msgid "Sign in to the Ultimaker platform"
+msgstr "Bei der Ultimaker-Plattform anmelden"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:51
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:42
msgctxt "@text"
msgid ""
-"- Customize your experience with more print profiles and plugins\n"
-"- Stay flexible by syncing your setup and loading it anywhere\n"
-"- Increase efficiency with a remote workflow on Ultimaker printers"
+"- Add material profiles and plug-ins from the Marketplace\n"
+"- Back-up and sync your material profiles and plug-ins\n"
+"- Share ideas and get help from 48,000+ users in the Ultimaker community"
msgstr ""
-"- Personalisieren Sie Ihre Druckerfahrung mit weiteren Druckprofilen und Plugins\n"
-"- Bleiben Sie flexibel, indem Sie Ihre Einstellungen synchronisieren und überall laden können\n"
-"- Steigern Sie Ihre Effizienz mit einem Remote-Workflow für Ultimaker-Drucker"
+"- Materialprofile und Plug-ins aus dem Marketplace hinzufügen\n"
+"- Materialprofile und Plug-ins sichern und synchronisieren\n"
+"- Ideenaustausch mit und Hilfe von mehr als 48.000 Benutzern in der Ultimaker Community"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:78 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:142
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:62
msgctxt "@button"
-msgid "Create account"
-msgstr "Konto erstellen"
+msgid "Create a free Ultimaker account"
+msgstr "Kostenloses Ultimaker-Konto erstellen"
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/SyncState.qml:28
msgctxt "@label"
@@ -3152,303 +3327,308 @@ msgctxt "@button"
msgid "Cancel"
msgstr "Abbrechen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:82
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:83
msgctxt "@action:inmenu"
msgid "Show Online Troubleshooting Guide"
msgstr "Online-Fehlerbehebung anzeigen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:89
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:90
msgctxt "@action:inmenu"
msgid "Toggle Full Screen"
msgstr "Umschalten auf Vollbild-Modus"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:97
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:98
msgctxt "@action:inmenu"
msgid "Exit Full Screen"
msgstr "Vollbildmodus beenden"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:104
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:105
msgctxt "@action:inmenu menubar:edit"
msgid "&Undo"
msgstr "&Rückgängig machen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:114
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:115
msgctxt "@action:inmenu menubar:edit"
msgid "&Redo"
msgstr "&Wiederholen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:124
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:125
msgctxt "@action:inmenu menubar:file"
msgid "&Quit"
msgstr "&Beenden"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:132
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:133
msgctxt "@action:inmenu menubar:view"
msgid "3D View"
msgstr "3D-Ansicht"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:139
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:140
msgctxt "@action:inmenu menubar:view"
msgid "Front View"
msgstr "Vorderansicht"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:146
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:147
msgctxt "@action:inmenu menubar:view"
msgid "Top View"
msgstr "Draufsicht"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:153
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:154
+msgctxt "@action:inmenu menubar:view"
+msgid "Bottom View"
+msgstr "Ansicht von unten"
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:161
msgctxt "@action:inmenu menubar:view"
msgid "Left Side View"
msgstr "Ansicht von links"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:160
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:168
msgctxt "@action:inmenu menubar:view"
msgid "Right Side View"
msgstr "Ansicht von rechts"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:167
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:175
msgctxt "@action:inmenu"
msgid "Configure Cura..."
msgstr "Cura konfigurieren..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:174
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:182
msgctxt "@action:inmenu menubar:printer"
msgid "&Add Printer..."
msgstr "&Drucker hinzufügen..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:180
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:188
msgctxt "@action:inmenu menubar:printer"
msgid "Manage Pr&inters..."
msgstr "Dr&ucker verwalten..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:187
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:195
msgctxt "@action:inmenu"
msgid "Manage Materials..."
msgstr "Materialien werden verwaltet..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:195
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:203
msgctxt "@action:inmenu"
msgid "Add more materials from Marketplace"
msgstr "Weiteres Material aus Marketplace hinzufügen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:202
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:210
msgctxt "@action:inmenu menubar:profile"
msgid "&Update profile with current settings/overrides"
msgstr "&Profil mit aktuellen Einstellungen/Überschreibungen aktualisieren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:210
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:218
msgctxt "@action:inmenu menubar:profile"
msgid "&Discard current changes"
msgstr "&Aktuelle Änderungen verwerfen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:222
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:230
msgctxt "@action:inmenu menubar:profile"
msgid "&Create profile from current settings/overrides..."
msgstr "P&rofil von aktuellen Einstellungen/Überschreibungen erstellen..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:228
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:236
msgctxt "@action:inmenu menubar:profile"
msgid "Manage Profiles..."
msgstr "Profile verwalten..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:236
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:244
msgctxt "@action:inmenu menubar:help"
msgid "Show Online &Documentation"
msgstr "Online-&Dokumentation anzeigen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:244
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:252
msgctxt "@action:inmenu menubar:help"
msgid "Report a &Bug"
msgstr "&Fehler melden"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:252
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:260
msgctxt "@action:inmenu menubar:help"
msgid "What's New"
msgstr "Neuheiten"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:258
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:266
msgctxt "@action:inmenu menubar:help"
msgid "About..."
msgstr "Über..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:265
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:273
msgctxt "@action:inmenu menubar:edit"
-msgid "Delete Selected Model"
-msgid_plural "Delete Selected Models"
-msgstr[0] "Ausgewähltes Modell löschen"
-msgstr[1] "Ausgewählte Modelle löschen"
+msgid "Delete Selected"
+msgstr "Ausgewählte löschen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:275
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:283
msgctxt "@action:inmenu menubar:edit"
-msgid "Center Selected Model"
-msgid_plural "Center Selected Models"
-msgstr[0] "Ausgewähltes Modell zentrieren"
-msgstr[1] "Ausgewählte Modelle zentrieren"
+msgid "Center Selected"
+msgstr "Ausgewählte zentrieren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:284
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:292
msgctxt "@action:inmenu menubar:edit"
-msgid "Multiply Selected Model"
-msgid_plural "Multiply Selected Models"
-msgstr[0] "Ausgewähltes Modell multiplizieren"
-msgstr[1] "Ausgewählte Modelle multiplizieren"
+msgid "Multiply Selected"
+msgstr "Ausgewählte vervielfachen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:293
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:301
msgctxt "@action:inmenu"
msgid "Delete Model"
msgstr "Modell löschen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:301
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:309
msgctxt "@action:inmenu"
msgid "Ce&nter Model on Platform"
msgstr "Modell auf Druckplatte ze&ntrieren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:307
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:315
msgctxt "@action:inmenu menubar:edit"
msgid "&Group Models"
msgstr "Modelle &gruppieren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:327
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:335
msgctxt "@action:inmenu menubar:edit"
msgid "Ungroup Models"
msgstr "Gruppierung für Modelle aufheben"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:337
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:345
msgctxt "@action:inmenu menubar:edit"
msgid "&Merge Models"
msgstr "Modelle &zusammenführen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:347
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:355
msgctxt "@action:inmenu"
msgid "&Multiply Model..."
msgstr "Modell &multiplizieren..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:354
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:362
msgctxt "@action:inmenu menubar:edit"
msgid "Select All Models"
msgstr "Alle Modelle wählen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:364
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:372
msgctxt "@action:inmenu menubar:edit"
msgid "Clear Build Plate"
msgstr "Druckplatte reinigen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:374
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:382
msgctxt "@action:inmenu menubar:file"
msgid "Reload All Models"
msgstr "Alle Modelle neu laden"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:383
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:391
msgctxt "@action:inmenu menubar:edit"
msgid "Arrange All Models To All Build Plates"
msgstr "Alle Modelle an allen Druckplatten anordnen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:390
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:398
msgctxt "@action:inmenu menubar:edit"
msgid "Arrange All Models"
msgstr "Alle Modelle anordnen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:398
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:406
msgctxt "@action:inmenu menubar:edit"
msgid "Arrange Selection"
msgstr "Anordnung auswählen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:405
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:413
msgctxt "@action:inmenu menubar:edit"
msgid "Reset All Model Positions"
msgstr "Alle Modellpositionen zurücksetzen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:412
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:420
msgctxt "@action:inmenu menubar:edit"
msgid "Reset All Model Transformations"
msgstr "Alle Modelltransformationen zurücksetzen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:419
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:429
msgctxt "@action:inmenu menubar:file"
msgid "&Open File(s)..."
msgstr "&Datei(en) öffnen..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:427
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:439
msgctxt "@action:inmenu menubar:file"
msgid "&New Project..."
msgstr "&Neues Projekt..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:434
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:446
msgctxt "@action:inmenu menubar:help"
msgid "Show Configuration Folder"
msgstr "Konfigurationsordner anzeigen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:441 /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:538
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:453
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:550
msgctxt "@action:menu"
msgid "Configure setting visibility..."
msgstr "Sichtbarkeit einstellen wird konfiguriert..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:448
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:460
msgctxt "@action:menu"
msgid "&Marketplace"
msgstr "&Marktplatz"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:266
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:257
msgctxt "@label"
msgid "This package will be installed after restarting."
msgstr "Dieses Paket wird nach einem Neustart installiert."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:459 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:15
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:450
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:17
msgctxt "@title:tab"
msgid "General"
msgstr "Allgemein"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:462
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:453
msgctxt "@title:tab"
msgid "Settings"
msgstr "Einstellungen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:464 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:16
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:455
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:16
msgctxt "@title:tab"
msgid "Printers"
msgstr "Drucker"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:468 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:34
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:459
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:34
msgctxt "@title:tab"
msgid "Profiles"
msgstr "Profile"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:587
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:576
msgctxt "@title:window %1 is the application name"
msgid "Closing %1"
msgstr "%1 wird geschlossen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:588 /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:600
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:577
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:589
msgctxt "@label %1 is the application name"
msgid "Are you sure you want to exit %1?"
msgstr "Möchten Sie %1 wirklich beenden?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:638 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:19
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:627
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:19
msgctxt "@title:window"
msgid "Open file(s)"
msgstr "Datei(en) öffnen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:744
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:737
msgctxt "@window:title"
msgid "Install Package"
msgstr "Paket installieren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:752
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:745
msgctxt "@title:window"
msgid "Open File(s)"
msgstr "Datei(en) öffnen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:755
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:748
msgctxt "@text:window"
msgid "We have found one or more G-Code files within the files you have selected. You can only open one G-Code file at a time. If you want to open a G-Code file, please just select only one."
msgstr "Es wurden eine oder mehrere G-Code-Datei(en) innerhalb der von Ihnen gewählten Dateien gefunden. Sie können nur eine G-Code-Datei auf einmal öffnen. Wenn Sie eine G-Code-Datei öffnen möchten wählen Sie bitte nur eine Datei."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:858
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:857
msgctxt "@title:window"
msgid "Add Printer"
msgstr "Drucker hinzufügen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:866
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:865
msgctxt "@title:window"
msgid "What's New"
msgstr "Neuheiten"
@@ -3577,7 +3757,8 @@ msgctxt "@Label"
msgid "Static type checker for Python"
msgstr "Statischer Prüfer für Python"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:156 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:157
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:156
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:157
msgctxt "@Label"
msgid "Root Certificates for validating SSL trustworthiness"
msgstr "Root-Zertifikate zur Validierung der SSL-Vertrauenswürdigkeit"
@@ -3597,17 +3778,27 @@ msgctxt "@label"
msgid "Python bindings for libnest2d"
msgstr "Python-Bindungen für libnest2d"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:161
+msgctxt "@label"
+msgid "Support library for system keyring access"
+msgstr "Unterstützungsbibliothek für den Zugriff auf den Systemschlüsselbund"
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:162
msgctxt "@label"
+msgid "Python extensions for Microsoft Windows"
+msgstr "Python-Erweiterungen für Microsoft Windows"
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:163
+msgctxt "@label"
msgid "Font"
msgstr "Schriftart"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:163
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:164
msgctxt "@label"
msgid "SVG icons"
msgstr "SVG-Symbole"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:164
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:165
msgctxt "@label"
msgid "Linux cross-distribution application deployment"
msgstr "Distributionsunabhängiges Format für Linux-Anwendungen"
@@ -3617,22 +3808,22 @@ msgctxt "@title:window"
msgid "Open project file"
msgstr "Projektdatei öffnen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:93
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:88
msgctxt "@text:window"
msgid "This is a Cura project file. Would you like to open it as a project or import the models from it?"
msgstr "Dies ist eine Cura-Projektdatei. Möchten Sie diese als Projekt öffnen oder die Modelle hieraus importieren?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:103
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:98
msgctxt "@text:window"
msgid "Remember my choice"
msgstr "Meine Auswahl merken"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:122
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:117
msgctxt "@action:button"
msgid "Open as project"
msgstr "Als Projekt öffnen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:131
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:126
msgctxt "@action:button"
msgid "Import models"
msgstr "Modelle importieren"
@@ -3663,7 +3854,8 @@ msgctxt "@title:column"
msgid "Current changes"
msgstr "Aktuelle Änderungen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:158 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:747
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:158
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:733
msgctxt "@option:discardOrKeep"
msgid "Always ask me this"
msgstr "Stets nachfragen"
@@ -3688,12 +3880,12 @@ msgctxt "@action:button"
msgid "Keep changes"
msgstr "Änderungen speichern"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:64
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:59
msgctxt "@text:window"
msgid "We have found one or more project file(s) within the files you have selected. You can open only one project file at a time. We suggest to only import models from those files. Would you like to proceed?"
msgstr "Es wurden eine oder mehrere Projektdatei(en) innerhalb der von Ihnen gewählten Dateien gefunden. Sie können nur eine Projektdatei auf einmal öffnen. Es wird empfohlen, nur Modelle aus diesen Dateien zu importieren. Möchten Sie fortfahren?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:99
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:94
msgctxt "@action:button"
msgid "Import all as models"
msgstr "Alle als Modelle importieren"
@@ -3740,7 +3932,8 @@ msgctxt "@text Print job name"
msgid "Untitled"
msgstr "Unbenannt"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MainWindow/ApplicationMenu.qml:27 /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:13
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MainWindow/ApplicationMenu.qml:27
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:13
msgctxt "@title:menu menubar:toplevel"
msgid "&File"
msgstr "&Datei"
@@ -3750,12 +3943,14 @@ msgctxt "@title:menu menubar:toplevel"
msgid "&Edit"
msgstr "&Bearbeiten"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MainWindow/ApplicationMenu.qml:49 /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:12
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MainWindow/ApplicationMenu.qml:49
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:12
msgctxt "@title:menu menubar:toplevel"
msgid "&View"
msgstr "&Ansicht"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MainWindow/ApplicationMenu.qml:51 /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingsMenu.qml:13
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MainWindow/ApplicationMenu.qml:51
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingsMenu.qml:13
msgctxt "@title:menu menubar:toplevel"
msgid "&Settings"
msgstr "&Einstellungen"
@@ -3768,7 +3963,7 @@ msgstr "Er&weiterungen"
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MainWindow/ApplicationMenu.qml:94
msgctxt "@title:menu menubar:toplevel"
msgid "P&references"
-msgstr "E&instellungen"
+msgstr "&Konfiguration"
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MainWindow/ApplicationMenu.qml:102
msgctxt "@title:menu menubar:toplevel"
@@ -3845,7 +4040,7 @@ msgctxt "@label"
msgid "Material"
msgstr "Material"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/CustomConfiguration.qml:394
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/CustomConfiguration.qml:407
msgctxt "@label"
msgid "Use glue for better adhesion with this material combination."
msgstr "Für diese Materialkombination Kleber für eine bessere Haftung verwenden."
@@ -3869,17 +4064,17 @@ msgctxt "@label"
msgid "Number of Copies"
msgstr "Anzahl Kopien"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:33
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:41
msgctxt "@title:menu menubar:file"
msgid "&Save Project..."
msgstr "&Projekt speichern ..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:54
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:74
msgctxt "@title:menu menubar:file"
msgid "&Export..."
msgstr "&Exportieren..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:65
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:85
msgctxt "@action:inmenu menubar:file"
msgid "Export Selection..."
msgstr "Auswahl exportieren..."
@@ -3899,6 +4094,11 @@ msgctxt "@label:category menu label"
msgid "Generic"
msgstr "Generisch"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/OpenFilesMenu.qml:15
+msgctxt "@title:menu menubar:file"
+msgid "Open File(s)..."
+msgstr "Datei(en) öffnen..."
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/PrinterMenu.qml:25
msgctxt "@label:category menu label"
msgid "Network enabled printers"
@@ -3914,6 +4114,11 @@ msgctxt "@title:menu menubar:file"
msgid "Open &Recent"
msgstr "&Zuletzt geöffnet"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SaveProjectMenu.qml:15
+msgctxt "@title:menu menubar:file"
+msgid "Save Project..."
+msgstr "Projekt speichern..."
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingsMenu.qml:15
msgctxt "@title:menu menubar:settings"
msgid "&Printer"
@@ -3939,17 +4144,17 @@ msgctxt "@action:inmenu"
msgid "Disable Extruder"
msgstr "Extruder deaktivieren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:13
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:16
msgctxt "@action:inmenu"
msgid "Visible Settings"
msgstr "Sichtbare Einstellungen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:42
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:45
msgctxt "@action:inmenu"
msgid "Collapse All Categories"
msgstr "Alle Kategorien schließen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:51
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:54
msgctxt "@action:inmenu"
msgid "Manage Setting Visibility..."
msgstr "Sichtbarkeit einstellen verwalten..."
@@ -3959,22 +4164,22 @@ msgctxt "@action:inmenu menubar:view"
msgid "&Camera position"
msgstr "&Kameraposition"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:44
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:45
msgctxt "@action:inmenu menubar:view"
msgid "Camera view"
msgstr "Kameraansicht"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:47
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:48
msgctxt "@action:inmenu menubar:view"
msgid "Perspective"
msgstr "Ansicht"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:59
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:60
msgctxt "@action:inmenu menubar:view"
msgid "Orthographic"
msgstr "Orthogonal"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:80
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:81
msgctxt "@action:inmenu menubar:view"
msgid "&Build plate"
msgstr "&Druckplatte"
@@ -4019,12 +4224,12 @@ msgctxt "@label:MonitorStatus"
msgid "Please remove the print"
msgstr "Bitte den Ausdruck entfernen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:325
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:326
msgctxt "@label"
msgid "Abort Print"
msgstr "Drucken abbrechen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:337
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:338
msgctxt "@label"
msgid "Are you sure you want to abort the print?"
msgstr "Soll das Drucken wirklich abgebrochen werden?"
@@ -4066,310 +4271,314 @@ msgctxt "@label"
msgid "Interface"
msgstr "Schnittstelle"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:216
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:209
msgctxt "@label"
msgid "Currency:"
msgstr "Währung:"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:229
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:222
msgctxt "@label"
msgid "Theme:"
msgstr "Thema:"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:285
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:267
msgctxt "@label"
msgid "You will need to restart the application for these changes to have effect."
msgstr "Die Anwendung muss neu gestartet werden, um die Änderungen zu übernehmen."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:302
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:284
msgctxt "@info:tooltip"
msgid "Slice automatically when changing settings."
msgstr "Bei Änderung der Einstellungen automatisch schneiden."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:310
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:292
msgctxt "@option:check"
msgid "Slice automatically"
msgstr "Automatisch schneiden"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:324
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:306
msgctxt "@label"
msgid "Viewport behavior"
msgstr "Viewport-Verhalten"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:332
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:314
msgctxt "@info:tooltip"
msgid "Highlight unsupported areas of the model in red. Without support these areas will not print properly."
msgstr "Nicht gestützte Bereiche des Modells in rot hervorheben. Ohne Support werden diese Bereiche nicht korrekt gedruckt."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:341
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:323
msgctxt "@option:check"
msgid "Display overhang"
msgstr "Überhang anzeigen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:351
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:333
msgctxt "@info:tooltip"
msgid "Highlight missing or extraneous surfaces of the model using warning signs. The toolpaths will often be missing parts of the intended geometry."
msgstr "Heben Sie fehlende oder fehlerhafte Flächen des Modells mithilfe von Warnhinweisen hervor. In den Werkzeugpfaden fehlen oft Teile der beabsichtigten Geometrie."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:360
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:342
msgctxt "@option:check"
msgid "Display model errors"
msgstr "Modellfehler anzeigen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:368
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:350
msgctxt "@info:tooltip"
msgid "Moves the camera so the model is in the center of the view when a model is selected"
msgstr "Bewegt die Kamera, bis sich das Modell im Mittelpunkt der Ansicht befindet, wenn ein Modell ausgewählt wurde"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:373
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:355
msgctxt "@action:button"
msgid "Center camera when item is selected"
msgstr "Zentrieren Sie die Kamera, wenn das Element ausgewählt wurde"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:383
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:365
msgctxt "@info:tooltip"
msgid "Should the default zoom behavior of cura be inverted?"
msgstr "Soll das standardmäßige Zoom-Verhalten von Cura umgekehrt werden?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:388
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:370
msgctxt "@action:button"
msgid "Invert the direction of camera zoom."
msgstr "Kehren Sie die Richtung des Kamera-Zooms um."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:404
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:386
msgctxt "@info:tooltip"
msgid "Should zooming move in the direction of the mouse?"
msgstr "Soll das Zoomen in Richtung der Maus erfolgen?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:404
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:386
msgctxt "@info:tooltip"
msgid "Zooming towards the mouse is not supported in the orthographic perspective."
msgstr "Das Zoomen in Richtung der Maus wird in der orthografischen Perspektive nicht unterstützt."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:409
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:391
msgctxt "@action:button"
msgid "Zoom toward mouse direction"
msgstr "In Mausrichtung zoomen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:435
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:417
msgctxt "@info:tooltip"
msgid "Should models on the platform be moved so that they no longer intersect?"
msgstr "Sollen Modelle auf der Plattform so verschoben werden, dass sie sich nicht länger überschneiden?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:440
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:422
msgctxt "@option:check"
msgid "Ensure models are kept apart"
msgstr "Stellen Sie sicher, dass die Modelle getrennt gehalten werden"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:449
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:431
msgctxt "@info:tooltip"
msgid "Should models on the platform be moved down to touch the build plate?"
msgstr "Sollen Modelle auf der Plattform so nach unten verschoben werden, dass sie die Druckplatte berühren?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:454
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:436
msgctxt "@option:check"
msgid "Automatically drop models to the build plate"
msgstr "Setzt Modelle automatisch auf der Druckplatte ab"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:466
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:448
msgctxt "@info:tooltip"
msgid "Show caution message in g-code reader."
msgstr "Warnmeldung im G-Code-Reader anzeigen."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:475
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:457
msgctxt "@option:check"
msgid "Caution message in g-code reader"
msgstr "Warnmeldung in G-Code-Reader"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:483
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:465
msgctxt "@info:tooltip"
msgid "Should layer be forced into compatibility mode?"
msgstr "Soll die Schicht in den Kompatibilitätsmodus gezwungen werden?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:488
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:470
msgctxt "@option:check"
msgid "Force layer view compatibility mode (restart required)"
msgstr "Schichtenansicht Kompatibilitätsmodus erzwingen (Neustart erforderlich)"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:498
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:480
msgctxt "@info:tooltip"
msgid "Should Cura open at the location it was closed?"
msgstr "Sollte Cura sich an der Stelle öffnen, an der das Programm geschlossen wurde?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:503
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:485
msgctxt "@option:check"
msgid "Restore window position on start"
msgstr "Fensterposition beim Start wiederherstellen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:513
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:495
msgctxt "@info:tooltip"
msgid "What type of camera rendering should be used?"
msgstr "Welches Kamera-Rendering sollte verwendet werden?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:520
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:502
msgctxt "@window:text"
msgid "Camera rendering:"
msgstr "Kamera-Rendering:"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:531
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:509
msgid "Perspective"
msgstr "Ansicht"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:532
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:510
msgid "Orthographic"
msgstr "Orthogonal"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:563
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:548
msgctxt "@label"
msgid "Opening and saving files"
msgstr "Dateien öffnen und speichern"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:570
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:555
msgctxt "@info:tooltip"
msgid "Should opening files from the desktop or external applications open in the same instance of Cura?"
msgstr "Sollten Dateien vom Desktop oder von externen Anwendungen in derselben Instanz von Cura geöffnet werden?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:575
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:560
msgctxt "@option:check"
msgid "Use a single instance of Cura"
msgstr "Eine einzelne Instanz von Cura verwenden"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:585
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:570
msgctxt "@info:tooltip"
msgid "Should models be scaled to the build volume if they are too large?"
msgstr "Sollen Modelle an das Erstellungsvolumen angepasst werden, wenn sie zu groß sind?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:590
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:575
msgctxt "@option:check"
msgid "Scale large models"
msgstr "Große Modelle anpassen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:600
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:585
msgctxt "@info:tooltip"
msgid "An model may appear extremely small if its unit is for example in meters rather than millimeters. Should these models be scaled up?"
msgstr "Ein Modell kann extrem klein erscheinen, wenn seine Maßeinheit z. B. in Metern anstelle von Millimetern angegeben ist. Sollen diese Modelle hoch skaliert werden?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:605
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:590
msgctxt "@option:check"
msgid "Scale extremely small models"
msgstr "Extrem kleine Modelle skalieren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:615
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:600
msgctxt "@info:tooltip"
msgid "Should models be selected after they are loaded?"
msgstr "Sollten Modelle gewählt werden, nachdem sie geladen wurden?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:620
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:605
msgctxt "@option:check"
msgid "Select models when loaded"
msgstr "Modelle wählen, nachdem sie geladen wurden"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:630
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:615
msgctxt "@info:tooltip"
msgid "Should a prefix based on the printer name be added to the print job name automatically?"
msgstr "Soll ein Präfix anhand des Druckernamens automatisch zum Namen des Druckauftrags hinzugefügt werden?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:635
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:620
msgctxt "@option:check"
msgid "Add machine prefix to job name"
msgstr "Geräte-Präfix zu Auftragsnamen hinzufügen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:645
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:630
msgctxt "@info:tooltip"
msgid "Should a summary be shown when saving a project file?"
msgstr "Soll beim Speichern einer Projektdatei eine Zusammenfassung angezeigt werden?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:649
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:634
msgctxt "@option:check"
msgid "Show summary dialog when saving project"
msgstr "Dialog Zusammenfassung beim Speichern eines Projekts anzeigen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:659
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:644
msgctxt "@info:tooltip"
msgid "Default behavior when opening a project file"
msgstr "Standardverhalten beim Öffnen einer Projektdatei"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:667
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:652
msgctxt "@window:text"
msgid "Default behavior when opening a project file: "
msgstr "Standardverhalten beim Öffnen einer Projektdatei: "
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:681
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:666
msgctxt "@option:openProject"
msgid "Always ask me this"
msgstr "Stets nachfragen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:682
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:667
msgctxt "@option:openProject"
msgid "Always open as a project"
msgstr "Immer als Projekt öffnen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:683
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:668
msgctxt "@option:openProject"
msgid "Always import models"
msgstr "Modelle immer importieren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:719
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:705
msgctxt "@info:tooltip"
msgid "When you have made changes to a profile and switched to a different one, a dialog will be shown asking whether you want to keep your modifications or not, or you can choose a default behaviour and never show that dialog again."
msgstr "Wenn Sie Änderungen für ein Profil vorgenommen haben und zu einem anderen Profil gewechselt sind, wird ein Dialog angezeigt, der hinterfragt, ob Sie Ihre Änderungen beibehalten möchten oder nicht; optional können Sie ein Standardverhalten wählen, sodass dieser Dialog nicht erneut angezeigt wird."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:728 /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedQualityProfileSelector.qml:52
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:714
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedQualityProfileSelector.qml:52
msgctxt "@label"
msgid "Profiles"
msgstr "Profile"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:733
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:719
msgctxt "@window:text"
msgid "Default behavior for changed setting values when switching to a different profile: "
msgstr "Standardverhalten für geänderte Einstellungswerte beim Wechsel zu einem anderen Profil: "
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:748
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:734
msgctxt "@option:discardOrKeep"
msgid "Always discard changed settings"
msgstr "Geänderte Einstellungen immer verwerfen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:749
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:735
msgctxt "@option:discardOrKeep"
msgid "Always transfer changed settings to new profile"
msgstr "Geänderte Einstellungen immer auf neues Profil übertragen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:783
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:770
msgctxt "@label"
msgid "Privacy"
msgstr "Privatsphäre"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:790
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:777
msgctxt "@info:tooltip"
msgid "Should Cura check for updates when the program is started?"
msgstr "Soll Cura bei Programmstart nach Updates suchen?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:795
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:782
msgctxt "@option:check"
msgid "Check for updates on start"
msgstr "Bei Start nach Updates suchen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:805
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:792
msgctxt "@info:tooltip"
msgid "Should anonymous data about your print be sent to Ultimaker? Note, no models, IP addresses or other personally identifiable information is sent or stored."
msgstr "Sollen anonyme Daten über Ihren Druck an Ultimaker gesendet werden? Beachten Sie, dass keine Modelle, IP-Adressen oder andere personenbezogene Daten gesendet oder gespeichert werden."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:810
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:797
msgctxt "@option:check"
msgid "Send (anonymous) print information"
msgstr "(Anonyme) Druckinformationen senden"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:819
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:806
msgctxt "@action:button"
msgid "More information"
msgstr "Mehr Informationen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:40 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:108 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:84
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:40
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:108
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:84
msgctxt "@action:button"
msgid "Activate"
msgstr "Aktivieren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:63 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:152
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:63
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:152
msgctxt "@action:button"
msgid "Rename"
msgstr "Umbenennen"
@@ -4384,61 +4593,77 @@ msgctxt "@action:button"
msgid "Duplicate"
msgstr "Duplizieren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:171 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:167
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:171
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:167
msgctxt "@action:button"
msgid "Import"
msgstr "Import"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:185 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:179
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:185
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:179
msgctxt "@action:button"
msgid "Export"
msgstr "Export"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:234
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:199
+msgctxt "@action:button Sending materials to printers"
+msgid "Sync with Printers"
+msgstr "Mit Druckern synchronisieren"
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:248
msgctxt "@action:label"
msgid "Printer"
msgstr "Drucker"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:298 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:274
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:312
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:277
msgctxt "@title:window"
msgid "Confirm Remove"
msgstr "Entfernen bestätigen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:301 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:275
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:315
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:278
msgctxt "@label (%1 is object name)"
msgid "Are you sure you wish to remove %1? This cannot be undone!"
msgstr "Möchten Sie %1 wirklich entfernen? Dies kann nicht rückgängig gemacht werden!"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:315 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:323
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:329
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:337
msgctxt "@title:window"
msgid "Import Material"
msgstr "Material importieren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:324
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:338
msgctxt "@info:status Don't translate the XML tags or !"
msgid "Could not import material %1: %2"
msgstr "Material konnte nicht importiert werden %1: %2"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:328
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:342
msgctxt "@info:status Don't translate the XML tag !"
msgid "Successfully imported material %1"
msgstr "Material wurde erfolgreich importiert %1"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:346 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:354
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:360
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:368
msgctxt "@title:window"
msgid "Export Material"
msgstr "Material exportieren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:358
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:372
msgctxt "@info:status Don't translate the XML tags and !"
msgid "Failed to export material to %1: %2"
msgstr "Exportieren des Materials nach %1: %2 schlug fehl"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:364
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:378
msgctxt "@info:status Don't translate the XML tag !"
msgid "Successfully exported material to %1"
msgstr "Material erfolgreich nach %1 exportiert"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:388
+msgctxt "@title:window"
+msgid "Export All Materials"
+msgstr "Alle Materialien exportieren"
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:72
msgctxt "@title"
msgid "Information"
@@ -4524,7 +4749,8 @@ msgctxt "@label"
msgid "Adhesion Information"
msgstr "Haftungsinformationen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:374 /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/PrintSetupSelector.qml:19
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:374
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/PrintSetupSelector.qml:19
msgctxt "@label"
msgid "Print settings"
msgstr "Druckeinstellungen"
@@ -4549,52 +4775,53 @@ msgctxt "@info"
msgid "Please provide a name for this profile."
msgstr "Geben Sie bitte einen Namen für dieses Profil an."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:260
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:263
msgctxt "@title:window"
msgid "Duplicate Profile"
msgstr "Profil duplizieren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:291
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:294
msgctxt "@title:window"
msgid "Rename Profile"
msgstr "Profil umbenennen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:304
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:307
msgctxt "@title:window"
msgid "Import Profile"
msgstr "Profil importieren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:333
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:336
msgctxt "@title:window"
msgid "Export Profile"
msgstr "Profil exportieren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:396
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:399
msgctxt "@label %1 is printer name"
msgid "Printer: %1"
msgstr "Drucker: %1"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:554
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:557
msgctxt "@action:button"
msgid "Update profile with current settings/overrides"
msgstr "Profil mit aktuellen Einstellungen/Überschreibungen aktualisieren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:561 /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Custom/QualitiesWithIntentMenu.qml:244
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:564
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Custom/QualitiesWithIntentMenu.qml:244
msgctxt "@action:button"
msgid "Discard current changes"
msgstr "Aktuelle Änderungen verwerfen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:580
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:583
msgctxt "@action:label"
msgid "This profile uses the defaults specified by the printer, so it has no settings/overrides in the list below."
msgstr "Dieses Profil verwendet die vom Drucker festgelegten Standardeinstellungen, deshalb sind in der folgenden Liste keine Einstellungen/Überschreibungen enthalten."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:588
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:591
msgctxt "@action:label"
msgid "Your current settings match the selected profile."
msgstr "Ihre aktuellen Einstellungen stimmen mit dem gewählten Profil überein."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:606
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:609
msgctxt "@title:tab"
msgid "Global Settings"
msgstr "Globale Einstellungen"
@@ -4624,12 +4851,12 @@ msgctxt "@title:column"
msgid "Unit"
msgstr "Einheit"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:14
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:16
msgctxt "@title:tab"
msgid "Setting Visibility"
msgstr "Sichtbarkeit einstellen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:46
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:48
msgctxt "@label:textbox"
msgid "Check all"
msgstr "Alle prüfen"
@@ -4654,12 +4881,14 @@ msgctxt "@tooltip of temperature input"
msgid "The temperature to pre-heat the hotend to."
msgstr "Die Temperatur, auf die das Hotend vorgeheizt wird."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:341 /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:332
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:341
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:332
msgctxt "@button Cancel pre-heating"
msgid "Cancel"
msgstr "Abbrechen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:344 /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:335
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:344
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:335
msgctxt "@button"
msgid "Pre-heat"
msgstr "Vorheizen"
@@ -4965,27 +5194,27 @@ msgctxt "@label:textbox"
msgid "Search settings"
msgstr "Einstellungen durchsuchen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:456
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:468
msgctxt "@action:menu"
msgid "Copy value to all extruders"
msgstr "Werte für alle Extruder kopieren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:465
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:477
msgctxt "@action:menu"
msgid "Copy all changed values to all extruders"
msgstr "Alle geänderten Werte für alle Extruder kopieren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:502
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:514
msgctxt "@action:menu"
msgid "Hide this setting"
msgstr "Diese Einstellung ausblenden"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:515
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:527
msgctxt "@action:menu"
msgid "Don't show this setting"
msgstr "Diese Einstellung ausblenden"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:519
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:531
msgctxt "@action:menu"
msgid "Keep this setting visible"
msgstr "Diese Einstellung weiterhin anzeigen"
@@ -5045,11 +5274,6 @@ msgctxt "@button"
msgid "Add printer manually"
msgstr "Drucker manuell hinzufügen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddCloudPrintersView.qml:218
-msgctxt "@button"
-msgid "Finish"
-msgstr "Beenden"
-
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddLocalPrinterScrollView.qml:230
msgctxt "@label"
msgid "Manufacturer"
@@ -5130,7 +5354,8 @@ msgctxt "@label"
msgid "Could not connect to device."
msgstr "Verbindung mit Drucker nicht möglich."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:207 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:212
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:207
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:212
msgctxt "@label"
msgid "Can't connect to your Ultimaker printer?"
msgstr "Sie können keine Verbindung zu Ihrem Ultimaker-Drucker herstellen?"
@@ -5155,32 +5380,32 @@ msgctxt "@button"
msgid "Connect"
msgstr "Verbinden"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:43
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/ChangelogContent.qml:24
msgctxt "@label"
-msgid "Ultimaker Account"
-msgstr "Ultimaker‑Konto"
+msgid "Release Notes"
+msgstr "Versionshinweise"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:84
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:124
msgctxt "@text"
-msgid "Your key to connected 3D printing"
-msgstr "Ihr Schlüssel zu vernetztem 3D-Druck"
+msgid "Add material settings and plugins from the Marketplace"
+msgstr "Materialeinstellungen und Plug-ins aus dem Marketplace hinzufügen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:101
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:154
msgctxt "@text"
-msgid "- Customize your experience with more print profiles and plugins"
-msgstr "- Personalisieren Sie Ihre Druckerfahrung mit weiteren Druckprofile und Plugins"
+msgid "Backup and sync your material settings and plugins"
+msgstr "Materialeinstellungen und Plug-ins sichern und synchronisieren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:104
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:184
msgctxt "@text"
-msgid "- Stay flexible by syncing your setup and loading it anywhere"
-msgstr "- Bleiben Sie flexibel, indem Sie Ihre Einstellungen synchronisieren und überall laden können"
+msgid "Share ideas and get help from 48,000+ users in the Ultimaker Community"
+msgstr "Ideenaustausch mit und Hilfe von mehr als 48.000 Benutzern in der Ultimaker Community"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:107
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:217
msgctxt "@text"
-msgid "- Increase efficiency with a remote workflow on Ultimaker printers"
-msgstr "- Steigern Sie Ihre Effizienz mit einem Remote-Workflow für Ultimaker-Drucker"
+msgid "Create a free Ultimaker Account"
+msgstr "Kostenloses Ultimaker-Konto erstellen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:157
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:230
msgctxt "@button"
msgid "Skip"
msgstr "Überspringen"
@@ -5240,29 +5465,32 @@ msgctxt "@button"
msgid "Decline and close"
msgstr "Ablehnen und schließen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:29
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:56
msgctxt "@label"
msgid "Welcome to Ultimaker Cura"
msgstr "Willkommen bei Ultimaker Cura"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:47
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:68
msgctxt "@text"
-msgid ""
-"Please follow these steps to set up\n"
-"Ultimaker Cura. This will only take a few moments."
+msgid "Please follow these steps to set up Ultimaker Cura. This will only take a few moments."
msgstr ""
"Befolgen Sie bitte diese Schritte für das Einrichten von\n"
"Ultimaker Cura. Dies dauert nur wenige Sekunden."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:58
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:86
msgctxt "@button"
msgid "Get started"
msgstr "Erste Schritte"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:24
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:28
msgctxt "@label"
-msgid "What's new in Ultimaker Cura"
-msgstr "Neuheiten bei Ultimaker Cura"
+msgid "What's New"
+msgstr "Neuheiten"
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Widgets/ComboBox.qml:24
+msgctxt "@label"
+msgid "No items to select from"
+msgstr "Keine auswählbaren Einträge"
#: ModelChecker/plugin.json
msgctxt "description"
@@ -5344,6 +5572,16 @@ msgctxt "name"
msgid "Cura Profile Writer"
msgstr "Cura-Profil-Writer"
+#: DigitalLibrary/plugin.json
+msgctxt "description"
+msgid "Connects to the Digital Library, allowing Cura to open files from and save files to the Digital Library."
+msgstr "Stellt eine Verbindung zur Digitalen Bibliothek her und ermöglicht es Cura, Dateien aus der Digitalen Bibliothek zu öffnen und darin zu speichern."
+
+#: DigitalLibrary/plugin.json
+msgctxt "name"
+msgid "Ultimaker Digital Library"
+msgstr "Digitale Bibliothek von Ultimaker"
+
#: FirmwareUpdateChecker/plugin.json
msgctxt "description"
msgid "Checks for firmware updates."
@@ -5814,6 +6052,26 @@ msgctxt "name"
msgid "Version Upgrade 4.7 to 4.8"
msgstr "Upgrade von Version 4.7 auf 4.8"
+#: VersionUpgrade/VersionUpgrade48to49/plugin.json
+msgctxt "description"
+msgid "Upgrades configurations from Cura 4.8 to Cura 4.9."
+msgstr "Upgrade der Konfigurationen von Cura 4.8 auf Cura 4.9."
+
+#: VersionUpgrade/VersionUpgrade48to49/plugin.json
+msgctxt "name"
+msgid "Version Upgrade 4.8 to 4.9"
+msgstr "Upgrade von Version 4.8 auf 4.9"
+
+#: VersionUpgrade/VersionUpgrade49to410/plugin.json
+msgctxt "description"
+msgid "Upgrades configurations from Cura 4.9 to Cura 4.10."
+msgstr "Upgrade der Konfigurationen von Cura 4.9 auf Cura 4.10."
+
+#: VersionUpgrade/VersionUpgrade49to410/plugin.json
+msgctxt "name"
+msgid "Version Upgrade 4.9 to 4.10"
+msgstr "Upgrade von Version 4.9 auf 4.10"
+
#: X3DReader/plugin.json
msgctxt "description"
msgid "Provides support for reading X3D files."
@@ -5844,6 +6102,94 @@ msgctxt "name"
msgid "X-Ray View"
msgstr "Röntgen-Ansicht"
+#~ msgctxt "@info:status"
+#~ msgid "Global stack is missing."
+#~ msgstr "Globaler Stack fehlt."
+
+#~ msgctxt "@info:status"
+#~ msgid "Your model is not manifold. The highlighted areas indicate either missing or extraneous surfaces."
+#~ msgstr "Ihrem Modell fehlen Schichten. Die fehlenden oder fehlerhaften Bereiche sind hervorgehoben."
+
+#~ msgctxt "@info:title"
+#~ msgid "Model errors"
+#~ msgstr "Modellfehler"
+
+#~ msgctxt "@label:listbox"
+#~ msgid "Layer thickness"
+#~ msgstr "Schichtdicke"
+
+#~ msgctxt "@label"
+#~ msgid "Your key to connected 3D printing"
+#~ msgstr "Ihr Schlüssel zu vernetztem 3D-Druck"
+
+#~ msgctxt "@text"
+#~ msgid ""
+#~ "- Customize your experience with more print profiles and plugins\n"
+#~ "- Stay flexible by syncing your setup and loading it anywhere\n"
+#~ "- Increase efficiency with a remote workflow on Ultimaker printers"
+#~ msgstr ""
+#~ "- Personalisieren Sie Ihre Druckerfahrung mit weiteren Druckprofilen und Plugins\n"
+#~ "- Bleiben Sie flexibel, indem Sie Ihre Einstellungen synchronisieren und überall laden können\n"
+#~ "- Steigern Sie Ihre Effizienz mit einem Remote-Workflow für Ultimaker-Drucker"
+
+#~ msgctxt "@button"
+#~ msgid "Create account"
+#~ msgstr "Konto erstellen"
+
+#~ msgctxt "@action:inmenu menubar:edit"
+#~ msgid "Delete Selected Model"
+#~ msgid_plural "Delete Selected Models"
+#~ msgstr[0] "Ausgewähltes Modell löschen"
+#~ msgstr[1] "Ausgewählte Modelle löschen"
+
+#~ msgctxt "@action:inmenu menubar:edit"
+#~ msgid "Center Selected Model"
+#~ msgid_plural "Center Selected Models"
+#~ msgstr[0] "Ausgewähltes Modell zentrieren"
+#~ msgstr[1] "Ausgewählte Modelle zentrieren"
+
+#~ msgctxt "@action:inmenu menubar:edit"
+#~ msgid "Multiply Selected Model"
+#~ msgid_plural "Multiply Selected Models"
+#~ msgstr[0] "Ausgewähltes Modell multiplizieren"
+#~ msgstr[1] "Ausgewählte Modelle multiplizieren"
+
+#~ msgctxt "@button"
+#~ msgid "Finish"
+#~ msgstr "Beenden"
+
+#~ msgctxt "@label"
+#~ msgid "Ultimaker Account"
+#~ msgstr "Ultimaker‑Konto"
+
+#~ msgctxt "@text"
+#~ msgid "Your key to connected 3D printing"
+#~ msgstr "Ihr Schlüssel zu vernetztem 3D-Druck"
+
+#~ msgctxt "@text"
+#~ msgid "- Customize your experience with more print profiles and plugins"
+#~ msgstr "- Personalisieren Sie Ihre Druckerfahrung mit weiteren Druckprofile und Plugins"
+
+#~ msgctxt "@text"
+#~ msgid "- Stay flexible by syncing your setup and loading it anywhere"
+#~ msgstr "- Bleiben Sie flexibel, indem Sie Ihre Einstellungen synchronisieren und überall laden können"
+
+#~ msgctxt "@text"
+#~ msgid "- Increase efficiency with a remote workflow on Ultimaker printers"
+#~ msgstr "- Steigern Sie Ihre Effizienz mit einem Remote-Workflow für Ultimaker-Drucker"
+
+#~ msgctxt "@text"
+#~ msgid ""
+#~ "Please follow these steps to set up\n"
+#~ "Ultimaker Cura. This will only take a few moments."
+#~ msgstr ""
+#~ "Befolgen Sie bitte diese Schritte für das Einrichten von\n"
+#~ "Ultimaker Cura. Dies dauert nur wenige Sekunden."
+
+#~ msgctxt "@label"
+#~ msgid "What's new in Ultimaker Cura"
+#~ msgstr "Neuheiten bei Ultimaker Cura"
+
#~ msgctxt "@label ({} is object name)"
#~ msgid "Are you sure you wish to remove {}? This cannot be undone!"
#~ msgstr "Möchten Sie {} wirklich entfernen? Der Vorgang kann nicht rückgängig gemacht werden!"
@@ -6593,8 +6939,7 @@ msgstr "Röntgen-Ansicht"
#~ "\n"
#~ "Select your printer from the list below:"
#~ msgstr ""
-#~ "Um über das Netzwerk direkt auf Ihrem Drucker zu drucken, stellen Sie bitte sicher, dass der Drucker mit dem Netzwerkkabel verbunden ist oder verbinden Sie Ihren Drucker mit Ihrem WLAN-Netzwerk. Wenn Sie Cura nicht mit Ihrem Drucker verbinden, können Sie dennoch ein USB-Laufwerk für die Übertragung "
-#~ "von G-Code-Dateien auf Ihren Drucker verwenden.\n"
+#~ "Um über das Netzwerk direkt auf Ihrem Drucker zu drucken, stellen Sie bitte sicher, dass der Drucker mit dem Netzwerkkabel verbunden ist oder verbinden Sie Ihren Drucker mit Ihrem WLAN-Netzwerk. Wenn Sie Cura nicht mit Ihrem Drucker verbinden, können Sie dennoch ein USB-Laufwerk für die Übertragung von G-Code-Dateien auf Ihren Drucker verwenden.\n"
#~ "\n"
#~ "Wählen Sie Ihren Drucker aus der folgenden Liste:"
diff --git a/resources/i18n/de_DE/fdmextruder.def.json.po b/resources/i18n/de_DE/fdmextruder.def.json.po
index 76cabf3310..a0cc8d19be 100644
--- a/resources/i18n/de_DE/fdmextruder.def.json.po
+++ b/resources/i18n/de_DE/fdmextruder.def.json.po
@@ -1,19 +1,20 @@
# Cura
-# Copyright (C) 2020 Ultimaker B.V.
+# Copyright (C) 2021 Ultimaker B.V.
# This file is distributed under the same license as the Cura package.
#
msgid ""
msgstr ""
-"Project-Id-Version: Cura 4.8\n"
+"Project-Id-Version: Cura 4.10\n"
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
-"POT-Creation-Date: 2020-10-19 13:15+0000\n"
-"PO-Revision-Date: 2019-03-13 14:00+0200\n"
+"POT-Creation-Date: 2021-06-10 17:35+0000\n"
+"PO-Revision-Date: 2021-04-16 15:15+0200\n"
"Last-Translator: Bothof \n"
"Language-Team: German\n"
"Language: de_DE\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 2.4.1\n"
#: fdmextruder.def.json
msgctxt "machine_settings label"
diff --git a/resources/i18n/de_DE/fdmprinter.def.json.po b/resources/i18n/de_DE/fdmprinter.def.json.po
index 264f66656c..3eb590b680 100644
--- a/resources/i18n/de_DE/fdmprinter.def.json.po
+++ b/resources/i18n/de_DE/fdmprinter.def.json.po
@@ -1,20 +1,20 @@
# Cura
-# Copyright (C) 2020 Ultimaker B.V.
+# Copyright (C) 2021 Ultimaker B.V.
# This file is distributed under the same license as the Cura package.
#
msgid ""
msgstr ""
-"Project-Id-Version: Cura 4.8\n"
+"Project-Id-Version: Cura 4.10\n"
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
-"POT-Creation-Date: 2020-10-19 13:15+0000\n"
-"PO-Revision-Date: 2020-08-21 13:40+0200\n"
+"POT-Creation-Date: 2021-06-10 17:35+0000\n"
+"PO-Revision-Date: 2021-04-16 15:16+0200\n"
"Last-Translator: Lionbridge \n"
"Language-Team: German , German \n"
"Language: de_DE\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: Poedit 2.0.6\n"
+"X-Generator: Poedit 2.4.1\n"
#: fdmprinter.def.json
msgctxt "machine_settings label"
@@ -419,6 +419,26 @@ msgctxt "machine_extruders_share_heater description"
msgid "Whether the extruders share a single heater rather than each extruder having its own heater."
msgstr "Gibt an, ob die Extruder sich ein Heizelement teilen oder jeweils über ein eigenes verfügen."
+#: fdmprinter.def.json
+msgctxt "machine_extruders_share_nozzle label"
+msgid "Extruders Share Nozzle"
+msgstr "Extruder teilen sich eine Düse"
+
+#: fdmprinter.def.json
+msgctxt "machine_extruders_share_nozzle description"
+msgid "Whether the extruders share a single nozzle rather than each extruder having its own nozzle. When set to true, it is expected that the printer-start gcode script properly sets up all extruders in an initial retraction state that is known and mutually compatible (either zero or one filament not retracted); in that case the initial retraction status is described, per extruder, by the 'machine_extruders_shared_nozzle_initial_retraction' parameter."
+msgstr "Gibt an, ob die Extruder gemeinsam eine Düse nutzen oder jeweils über eine eigene verfügen. In der Einstellung „true“ ist zu erwarten, dass das GCode-Skript „printer-start“ alle Extruder ordnungsgemäß in einem bekannten und untereinander kompatiblen Anfangszustand anordnet (Rückzugstellung; entweder Null oder mit einem nicht zurückgezogenen Filament); in diesem Fall wird die anfängliche Rückzugstellung für jeden Extruder durch den Parameter „machine_extruders_shared_nozzle_initial_retraction“ beschrieben."
+
+#: fdmprinter.def.json
+msgctxt "machine_extruders_shared_nozzle_initial_retraction label"
+msgid "Shared Nozzle Initial Retraction"
+msgstr "Rückzugstellung der gemeinsam genutzten Düse"
+
+#: fdmprinter.def.json
+msgctxt "machine_extruders_shared_nozzle_initial_retraction description"
+msgid "How much the filament of each extruder is assumed to have been retracted from the shared nozzle tip at the completion of the printer-start gcode script; the value should be equal to or greater than the length of the common part of the nozzle's ducts."
+msgstr "Bestimmt, wie weit das Filament jedes Extruders bei Abschluss des GCode-Skripts „printer-start“ von der gemeinsam genutzten Düsenspitze zurückgezogen sein soll; der Wert sollte gleich oder größer sein als die Länge des gemeinsamen Teils der Düsenkanäle."
+
#: fdmprinter.def.json
msgctxt "machine_disallowed_areas label"
msgid "Disallowed Areas"
@@ -486,8 +506,8 @@ msgstr "Versatz mit Extruder"
#: fdmprinter.def.json
msgctxt "machine_use_extruder_offset_to_offset_coords description"
-msgid "Apply the extruder offset to the coordinate system."
-msgstr "Verwenden Sie den Extruder-Versatz für das Koordinatensystem."
+msgid "Apply the extruder offset to the coordinate system. Affects all extruders."
+msgstr "Verwenden Sie den Extruder-Versatz für das Koordinatensystem. Betrifft alle Extruder."
#: fdmprinter.def.json
msgctxt "extruder_prime_pos_z label"
@@ -881,8 +901,8 @@ msgstr "Multiplikator der Linienbreite der ersten Schicht. Eine Erhöhung dieses
#: fdmprinter.def.json
msgctxt "shell label"
-msgid "Shell"
-msgstr "Gehäuse"
+msgid "Walls"
+msgstr "Wände"
#: fdmprinter.def.json
msgctxt "shell description"
@@ -949,166 +969,6 @@ msgctxt "wall_0_wipe_dist description"
msgid "Distance of a travel move inserted after the outer wall, to hide the Z seam better."
msgstr "Entfernung einer Bewegung nach der Außenwand, um die Z-Naht besser zu verbergen."
-#: fdmprinter.def.json
-msgctxt "roofing_extruder_nr label"
-msgid "Top Surface Skin Extruder"
-msgstr "Oberfläche Außenhaut Extruder"
-
-#: fdmprinter.def.json
-msgctxt "roofing_extruder_nr description"
-msgid "The extruder train used for printing the top most skin. This is used in multi-extrusion."
-msgstr "Die für das Drucken der obersten Außenhaut verwendete Extruder-Einheit. Diese wird für die Mehrfach-Extrusion benutzt."
-
-#: fdmprinter.def.json
-msgctxt "roofing_layer_count label"
-msgid "Top Surface Skin Layers"
-msgstr "Oberfläche Außenhaut Schichten"
-
-#: fdmprinter.def.json
-msgctxt "roofing_layer_count description"
-msgid "The number of top most skin layers. Usually only one top most layer is sufficient to generate higher quality top surfaces."
-msgstr "Die Anzahl der obersten Außenhautschichten. Üblicherweise reicht eine einzige oberste Schicht aus, um höherwertige Oberflächen zu generieren."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_extruder_nr label"
-msgid "Top/Bottom Extruder"
-msgstr "Extruder Oben/Unten"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_extruder_nr description"
-msgid "The extruder train used for printing the top and bottom skin. This is used in multi-extrusion."
-msgstr "Die für das Drucken der oberen und unteren Außenhaut verwendete Extruder-Einheit. Diese wird für die Mehrfach-Extrusion benutzt."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_thickness label"
-msgid "Top/Bottom Thickness"
-msgstr "Obere/untere Dicke"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_thickness description"
-msgid "The thickness of the top/bottom layers in the print. This value divided by the layer height defines the number of top/bottom layers."
-msgstr "Die Dicke der oberen/unteren Schichten des Drucks. Dieser Wert geteilt durch die Schichtdicke bestimmt die Anzahl der oberen/unteren Schichten."
-
-#: fdmprinter.def.json
-msgctxt "top_thickness label"
-msgid "Top Thickness"
-msgstr "Obere Dicke"
-
-#: fdmprinter.def.json
-msgctxt "top_thickness description"
-msgid "The thickness of the top layers in the print. This value divided by the layer height defines the number of top layers."
-msgstr "Die Dicke der oberen Schichten des Drucks. Dieser Wert geteilt durch die Schichtdicke bestimmt die Anzahl der oberen Schichten."
-
-#: fdmprinter.def.json
-msgctxt "top_layers label"
-msgid "Top Layers"
-msgstr "Obere Schichten"
-
-#: fdmprinter.def.json
-msgctxt "top_layers description"
-msgid "The number of top layers. When calculated by the top thickness, this value is rounded to a whole number."
-msgstr "Die Anzahl der oberen Schichten. Wenn diese anhand der oberen Dicke berechnet wird, wird der Wert auf eine ganze Zahl auf- oder abgerundet."
-
-#: fdmprinter.def.json
-msgctxt "bottom_thickness label"
-msgid "Bottom Thickness"
-msgstr "Untere Dicke"
-
-#: fdmprinter.def.json
-msgctxt "bottom_thickness description"
-msgid "The thickness of the bottom layers in the print. This value divided by the layer height defines the number of bottom layers."
-msgstr "Die Dicke der unteren Schichten des Drucks. Dieser Wert geteilt durch die Schichtdicke bestimmt die Anzahl der unteren Schichten."
-
-#: fdmprinter.def.json
-msgctxt "bottom_layers label"
-msgid "Bottom Layers"
-msgstr "Untere Schichten"
-
-#: fdmprinter.def.json
-msgctxt "bottom_layers description"
-msgid "The number of bottom layers. When calculated by the bottom thickness, this value is rounded to a whole number."
-msgstr "Die Anzahl der unteren Schichten. Wenn diese anhand der unteren Dicke berechnet wird, wird der Wert auf eine ganze Zahl auf- oder abgerundet."
-
-#: fdmprinter.def.json
-msgctxt "initial_bottom_layers label"
-msgid "Initial Bottom Layers"
-msgstr "Erste untere Schichten"
-
-#: fdmprinter.def.json
-msgctxt "initial_bottom_layers description"
-msgid "The number of initial bottom layers, from the build-plate upwards. When calculated by the bottom thickness, this value is rounded to a whole number."
-msgstr "Die Anzahl der ersten Schichten, die auf die Druckplatte aufgetragen werden. Wenn diese anhand der unteren Dicke berechnet werden, wird der Wert auf eine ganze Zahl auf- oder abgerundet."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern label"
-msgid "Top/Bottom Pattern"
-msgstr "Unteres/oberes Muster"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern description"
-msgid "The pattern of the top/bottom layers."
-msgstr "Das Muster der oberen/unteren Schichten."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern option lines"
-msgid "Lines"
-msgstr "Linien"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern option concentric"
-msgid "Concentric"
-msgstr "Konzentrisch"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern option zigzag"
-msgid "Zig Zag"
-msgstr "Zickzack"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 label"
-msgid "Bottom Pattern Initial Layer"
-msgstr "Unteres Muster für erste Schicht"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 description"
-msgid "The pattern on the bottom of the print on the first layer."
-msgstr "Das Muster am Boden des Drucks der ersten Schicht."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 option lines"
-msgid "Lines"
-msgstr "Linien"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 option concentric"
-msgid "Concentric"
-msgstr "Konzentrisch"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 option zigzag"
-msgid "Zig Zag"
-msgstr "Zickzack"
-
-#: fdmprinter.def.json
-msgctxt "connect_skin_polygons label"
-msgid "Connect Top/Bottom Polygons"
-msgstr "Polygone oben/unten verbinden"
-
-#: fdmprinter.def.json
-msgctxt "connect_skin_polygons description"
-msgid "Connect top/bottom skin paths where they run next to each other. For the concentric pattern enabling this setting greatly reduces the travel time, but because the connections can happen midway over infill this feature can reduce the top surface quality."
-msgstr "Außenhaut-Pfade oben/unten verbinden, wenn sie nebeneinander laufen. Bei konzentrischen Mustern reduziert die Aktivierung dieser Einstellung die Durchlaufzeit erheblich. Da die Verbindungen jedoch auf halbem Weg über der Füllung erfolgen können, kann diese Funktion die Oberflächenqualität reduzieren."
-
-#: fdmprinter.def.json
-msgctxt "skin_angles label"
-msgid "Top/Bottom Line Directions"
-msgstr "Richtungen der oberen/unteren Linie"
-
-#: fdmprinter.def.json
-msgctxt "skin_angles description"
-msgid "A list of integer line directions to use when the top/bottom layers use the lines or zig zag pattern. Elements from the list are used sequentially as the layers progress and when the end of the list is reached, it starts at the beginning again. The list items are separated by commas and the whole list is contained in square brackets. Default is an empty list which means use the traditional default angles (45 and 135 degrees)."
-msgstr "Eine Liste von Ganzzahl-Linienrichtungen für den Fall, wenn die oberen/unteren Schichten die Linien- oder Zickzack-Muster verwenden. Elemente aus der Liste werden während des Aufbaus der Schichten sequentiell verwendet und wenn das Listenende erreicht wird, beginnt die Liste von vorne. Die Listenobjekte werden durch Kommas getrennt und die gesamte Liste ist in eckige Klammern gesetzt. Standardmäßig ist eine leere Liste vorhanden, was bedeutet, dass herkömmliche Standardwinkel (45- und 135-Grad) verwendet werden."
-
#: fdmprinter.def.json
msgctxt "wall_0_inset label"
msgid "Outer Wall Inset"
@@ -1317,7 +1177,7 @@ msgstr "Hinten links"
#: fdmprinter.def.json
msgctxt "z_seam_position option back"
msgid "Back"
-msgstr "Zurück"
+msgstr "Hinten"
#: fdmprinter.def.json
msgctxt "z_seam_position option backright"
@@ -1414,6 +1274,176 @@ msgctxt "z_seam_relative description"
msgid "When enabled, the z seam coordinates are relative to each part's centre. When disabled, the coordinates define an absolute position on the build plate."
msgstr "Bei Aktivierung sind die Z-Naht-Koordinaten relativ zur Mitte der jeweiligen Teile. Bei Deaktivierung definieren die Koordinaten eine absolute Position auf dem Druckbett."
+#: fdmprinter.def.json
+msgctxt "top_bottom label"
+msgid "Top/Bottom"
+msgstr "Oben/Unten"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom description"
+msgid "Top/Bottom"
+msgstr "Oben/Unten"
+
+#: fdmprinter.def.json
+msgctxt "roofing_extruder_nr label"
+msgid "Top Surface Skin Extruder"
+msgstr "Oberfläche Außenhaut Extruder"
+
+#: fdmprinter.def.json
+msgctxt "roofing_extruder_nr description"
+msgid "The extruder train used for printing the top most skin. This is used in multi-extrusion."
+msgstr "Die für das Drucken der obersten Außenhaut verwendete Extruder-Einheit. Diese wird für die Mehrfach-Extrusion benutzt."
+
+#: fdmprinter.def.json
+msgctxt "roofing_layer_count label"
+msgid "Top Surface Skin Layers"
+msgstr "Oberfläche Außenhaut Schichten"
+
+#: fdmprinter.def.json
+msgctxt "roofing_layer_count description"
+msgid "The number of top most skin layers. Usually only one top most layer is sufficient to generate higher quality top surfaces."
+msgstr "Die Anzahl der obersten Außenhautschichten. Üblicherweise reicht eine einzige oberste Schicht aus, um höherwertige Oberflächen zu generieren."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_extruder_nr label"
+msgid "Top/Bottom Extruder"
+msgstr "Extruder Oben/Unten"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_extruder_nr description"
+msgid "The extruder train used for printing the top and bottom skin. This is used in multi-extrusion."
+msgstr "Die für das Drucken der oberen und unteren Außenhaut verwendete Extruder-Einheit. Diese wird für die Mehrfach-Extrusion benutzt."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_thickness label"
+msgid "Top/Bottom Thickness"
+msgstr "Obere/untere Dicke"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_thickness description"
+msgid "The thickness of the top/bottom layers in the print. This value divided by the layer height defines the number of top/bottom layers."
+msgstr "Die Dicke der oberen/unteren Schichten des Drucks. Dieser Wert geteilt durch die Schichtdicke bestimmt die Anzahl der oberen/unteren Schichten."
+
+#: fdmprinter.def.json
+msgctxt "top_thickness label"
+msgid "Top Thickness"
+msgstr "Obere Dicke"
+
+#: fdmprinter.def.json
+msgctxt "top_thickness description"
+msgid "The thickness of the top layers in the print. This value divided by the layer height defines the number of top layers."
+msgstr "Die Dicke der oberen Schichten des Drucks. Dieser Wert geteilt durch die Schichtdicke bestimmt die Anzahl der oberen Schichten."
+
+#: fdmprinter.def.json
+msgctxt "top_layers label"
+msgid "Top Layers"
+msgstr "Obere Schichten"
+
+#: fdmprinter.def.json
+msgctxt "top_layers description"
+msgid "The number of top layers. When calculated by the top thickness, this value is rounded to a whole number."
+msgstr "Die Anzahl der oberen Schichten. Wenn diese anhand der oberen Dicke berechnet wird, wird der Wert auf eine ganze Zahl auf- oder abgerundet."
+
+#: fdmprinter.def.json
+msgctxt "bottom_thickness label"
+msgid "Bottom Thickness"
+msgstr "Untere Dicke"
+
+#: fdmprinter.def.json
+msgctxt "bottom_thickness description"
+msgid "The thickness of the bottom layers in the print. This value divided by the layer height defines the number of bottom layers."
+msgstr "Die Dicke der unteren Schichten des Drucks. Dieser Wert geteilt durch die Schichtdicke bestimmt die Anzahl der unteren Schichten."
+
+#: fdmprinter.def.json
+msgctxt "bottom_layers label"
+msgid "Bottom Layers"
+msgstr "Untere Schichten"
+
+#: fdmprinter.def.json
+msgctxt "bottom_layers description"
+msgid "The number of bottom layers. When calculated by the bottom thickness, this value is rounded to a whole number."
+msgstr "Die Anzahl der unteren Schichten. Wenn diese anhand der unteren Dicke berechnet wird, wird der Wert auf eine ganze Zahl auf- oder abgerundet."
+
+#: fdmprinter.def.json
+msgctxt "initial_bottom_layers label"
+msgid "Initial Bottom Layers"
+msgstr "Erste untere Schichten"
+
+#: fdmprinter.def.json
+msgctxt "initial_bottom_layers description"
+msgid "The number of initial bottom layers, from the build-plate upwards. When calculated by the bottom thickness, this value is rounded to a whole number."
+msgstr "Die Anzahl der ersten Schichten, die auf die Druckplatte aufgetragen werden. Wenn diese anhand der unteren Dicke berechnet werden, wird der Wert auf eine ganze Zahl auf- oder abgerundet."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern label"
+msgid "Top/Bottom Pattern"
+msgstr "Unteres/oberes Muster"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern description"
+msgid "The pattern of the top/bottom layers."
+msgstr "Das Muster der oberen/unteren Schichten."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern option lines"
+msgid "Lines"
+msgstr "Linien"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern option concentric"
+msgid "Concentric"
+msgstr "Konzentrisch"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern option zigzag"
+msgid "Zig Zag"
+msgstr "Zickzack"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 label"
+msgid "Bottom Pattern Initial Layer"
+msgstr "Unteres Muster für erste Schicht"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 description"
+msgid "The pattern on the bottom of the print on the first layer."
+msgstr "Das Muster am Boden des Drucks der ersten Schicht."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 option lines"
+msgid "Lines"
+msgstr "Linien"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 option concentric"
+msgid "Concentric"
+msgstr "Konzentrisch"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 option zigzag"
+msgid "Zig Zag"
+msgstr "Zickzack"
+
+#: fdmprinter.def.json
+msgctxt "connect_skin_polygons label"
+msgid "Connect Top/Bottom Polygons"
+msgstr "Polygone oben/unten verbinden"
+
+#: fdmprinter.def.json
+msgctxt "connect_skin_polygons description"
+msgid "Connect top/bottom skin paths where they run next to each other. For the concentric pattern enabling this setting greatly reduces the travel time, but because the connections can happen midway over infill this feature can reduce the top surface quality."
+msgstr "Außenhaut-Pfade oben/unten verbinden, wenn sie nebeneinander laufen. Bei konzentrischen Mustern reduziert die Aktivierung dieser Einstellung die Durchlaufzeit erheblich. Da die Verbindungen jedoch auf halbem Weg über der Füllung erfolgen können, kann diese Funktion die Oberflächenqualität reduzieren."
+
+#: fdmprinter.def.json
+msgctxt "skin_angles label"
+msgid "Top/Bottom Line Directions"
+msgstr "Richtungen der oberen/unteren Linie"
+
+#: fdmprinter.def.json
+msgctxt "skin_angles description"
+msgid "A list of integer line directions to use when the top/bottom layers use the lines or zig zag pattern. Elements from the list are used sequentially as the layers progress and when the end of the list is reached, it starts at the beginning again. The list items are separated by commas and the whole list is contained in square brackets. Default is an empty list which means use the traditional default angles (45 and 135 degrees)."
+msgstr "Eine Liste von Ganzzahl-Linienrichtungen für den Fall, wenn die oberen/unteren Schichten die Linien- oder Zickzack-Muster verwenden. Elemente aus der Liste werden während des Aufbaus der Schichten sequentiell verwendet und wenn das Listenende erreicht wird, beginnt die Liste von vorne. Die Listenobjekte werden durch Kommas getrennt und die gesamte Liste ist in eckige Klammern gesetzt. Standardmäßig ist eine leere Liste vorhanden, was bedeutet, dass herkömmliche Standardwinkel (45- und 135-Grad) verwendet werden."
+
#: fdmprinter.def.json
msgctxt "skin_no_small_gaps_heuristic label"
msgid "No Skin in Z Gaps"
@@ -1554,6 +1584,86 @@ msgctxt "skin_overlap_mm description"
msgid "Adjust the amount of overlap between the walls and (the endpoints of) the skin-centerlines. A slight overlap allows the walls to connect firmly to the skin. Note that, given an equal skin and wall line-width, any value over half the width of the wall may already cause any skin to go past the wall, because at that point the position of the nozzle of the skin-extruder may already reach past the middle of the wall."
msgstr "Justieren Sie die Überlappung zwischen den Wänden und den Außenhaut-Mittellinien bzw. den Endpunkten der Außenhaut-Mittellinien. Eine geringe Überlappung ermöglicht die feste Verbindung der Wände mit der Außenhaut. Beachten Sie, dass bei einer einheitlichen Linienbreite von Außenhaut und Wand jeder Wert über die Hälfte der Wandbreite bereits dazu führen kann, dass die Außenhaut über die Wand hinausgeht, da in diesem Moment die Position der Düse des Außenhaut-Extruders möglicherweise bereits über die Wandmitte hinausgeht."
+#: fdmprinter.def.json
+msgctxt "skin_preshrink label"
+msgid "Skin Removal Width"
+msgstr "Breite für das Entfernen der Außenhaut"
+
+#: fdmprinter.def.json
+msgctxt "skin_preshrink description"
+msgid "The largest width of skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top/bottom skin at slanted surfaces in the model."
+msgstr "Dies bezeichnet die größte Breite der zu entfernenden Außenhautbereiche. Jeder Außenhautbereich, der kleiner als dieser Wert ist, verschwindet. Dies kann bei der Beschränkung der benötigten Zeit und Materialmenge für das Drucken der Außenhaut oben/unten an abgeschrägten Flächen des Modells unterstützen."
+
+#: fdmprinter.def.json
+msgctxt "top_skin_preshrink label"
+msgid "Top Skin Removal Width"
+msgstr "Breite für das Entfernen der Außenhaut oben"
+
+#: fdmprinter.def.json
+msgctxt "top_skin_preshrink description"
+msgid "The largest width of top skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top skin at slanted surfaces in the model."
+msgstr "Dies bezeichnet die größte Breite der zu entfernenden oberen Außenhautbereiche. Jeder Außenhautbereich, der kleiner als dieser Wert ist, verschwindet. Dies kann bei der Beschränkung der benötigten Zeit und Materialmenge für das Drucken der oberen Außenhaut an abgeschrägten Flächen des Modells unterstützen."
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_preshrink label"
+msgid "Bottom Skin Removal Width"
+msgstr "Breite für das Entfernen der Außenhaut unten"
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_preshrink description"
+msgid "The largest width of bottom skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing bottom skin at slanted surfaces in the model."
+msgstr "Dies bezeichnet die größte Breite der zu entfernenden unteren Außenhautbereiche. Jeder Außenhautbereich, der kleiner als dieser Wert ist, verschwindet. Dies kann bei der Beschränkung der benötigten Zeit und Materialmenge für das Drucken der unteren Außenhaut an abgeschrägten Flächen des Modells unterstützen."
+
+#: fdmprinter.def.json
+msgctxt "expand_skins_expand_distance label"
+msgid "Skin Expand Distance"
+msgstr "Expansionsdistanz Außenhaut"
+
+#: fdmprinter.def.json
+msgctxt "expand_skins_expand_distance description"
+msgid "The distance the skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on neighboring layers adhere better to the skin. Lower values save amount of material used."
+msgstr "Die Distanz, um die die Außenhäute in die Füllung expandiert werden. Höhere Werte lassen die Außenhaut besser am Füllmuster und die Wände an den angrenzenden Schichten besser an der Außenhaut haften. Niedrigere Werte reduzieren den Materialverbrauch."
+
+#: fdmprinter.def.json
+msgctxt "top_skin_expand_distance label"
+msgid "Top Skin Expand Distance"
+msgstr "Expansionsdistanz Außenhaut oben"
+
+#: fdmprinter.def.json
+msgctxt "top_skin_expand_distance description"
+msgid "The distance the top skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on the layer above adhere better to the skin. Lower values save amount of material used."
+msgstr "Die Distanz, um die die oberen Außenhäute in die Füllung expandiert werden. Höhere Werte lassen die Außenhaut besser am Füllmuster und die Wände an den Schichten darüber besser an der Außenhaut haften. Niedrigere Werte reduzieren den Materialverbrauch."
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_expand_distance label"
+msgid "Bottom Skin Expand Distance"
+msgstr "Expansionsdistanz Außenhaut unten"
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_expand_distance description"
+msgid "The distance the bottom skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the skin adhere better to the walls on the layer below. Lower values save amount of material used."
+msgstr "Die Distanz, um die die unteren Außenhäute in die Füllung expandiert werden. Höhere Werte lassen die Außenhaut besser am Füllmuster und an den Wänden auf der darunter liegenden Schicht haften. Niedrigere Werte reduzieren den Materialverbrauch."
+
+#: fdmprinter.def.json
+msgctxt "max_skin_angle_for_expansion label"
+msgid "Maximum Skin Angle for Expansion"
+msgstr "Maximaler Winkel Außenhaut für Expansion"
+
+#: fdmprinter.def.json
+msgctxt "max_skin_angle_for_expansion description"
+msgid "Top and/or bottom surfaces of your object with an angle larger than this setting, won't have their top/bottom skin expanded. This avoids expanding the narrow skin areas that are created when the model surface has a near vertical slope. An angle of 0° is horizontal and will cause no skin to be expanded, while an angle of 90° is vertical and will cause all skin to be expanded."
+msgstr "Die Außenhaut von Ober- und/oder Unterseiten Ihres Objekts, deren Winkel größer als dieser Wert sind, werden nicht expandiert. Dadurch wird vermieden, dass die schmalen Außenhautbereiche, die entstehen, wenn die Modelloberfläche eine nahezu vertikale Neigung aufweist, expandiert werden. Ein Winkel von 0° ist horizontal und führt dazu, dass ein solcher Außenhautbereich nicht expandiert wird; ein Winkel von 90° ist vertikal und führt dazu, dass die gesamte Außenhaut expandiert wird."
+
+#: fdmprinter.def.json
+msgctxt "min_skin_width_for_expansion label"
+msgid "Minimum Skin Width for Expansion"
+msgstr "Mindestbreite Außenhaut für Expansion"
+
+#: fdmprinter.def.json
+msgctxt "min_skin_width_for_expansion description"
+msgid "Skin areas narrower than this are not expanded. This avoids expanding the narrow skin areas that are created when the model surface has a slope close to the vertical."
+msgstr "Außenhautbereiche, die schmaler als die Mindestbreite sind, werden nicht expandiert. Damit wird vermieden, dass enge Außenhautbereiche expandiert werden, die entstehen, wenn die Modellfläche eine nahezu vertikale Neigung aufweist."
+
#: fdmprinter.def.json
msgctxt "infill label"
msgid "Infill"
@@ -1863,86 +1973,6 @@ msgctxt "infill_support_angle description"
msgid "The minimum angle of internal overhangs for which infill is added. At a value of 0° objects are totally filled with infill, 90° will not provide any infill."
msgstr "Der Mindestwinkel für Überhänge, für welche eine Stützstruktur zugefügt wird. Bei einem Wert von 0° werden Objekte komplett gefüllt, bei 90° wird keine Füllung ausgeführt."
-#: fdmprinter.def.json
-msgctxt "skin_preshrink label"
-msgid "Skin Removal Width"
-msgstr "Breite für das Entfernen der Außenhaut"
-
-#: fdmprinter.def.json
-msgctxt "skin_preshrink description"
-msgid "The largest width of skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top/bottom skin at slanted surfaces in the model."
-msgstr "Dies bezeichnet die größte Breite der zu entfernenden Außenhautbereiche. Jeder Außenhautbereich, der kleiner als dieser Wert ist, verschwindet. Dies kann bei der Beschränkung der benötigten Zeit und Materialmenge für das Drucken der Außenhaut oben/unten an abgeschrägten Flächen des Modells unterstützen."
-
-#: fdmprinter.def.json
-msgctxt "top_skin_preshrink label"
-msgid "Top Skin Removal Width"
-msgstr "Breite für das Entfernen der Außenhaut oben"
-
-#: fdmprinter.def.json
-msgctxt "top_skin_preshrink description"
-msgid "The largest width of top skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top skin at slanted surfaces in the model."
-msgstr "Dies bezeichnet die größte Breite der zu entfernenden oberen Außenhautbereiche. Jeder Außenhautbereich, der kleiner als dieser Wert ist, verschwindet. Dies kann bei der Beschränkung der benötigten Zeit und Materialmenge für das Drucken der oberen Außenhaut an abgeschrägten Flächen des Modells unterstützen."
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_preshrink label"
-msgid "Bottom Skin Removal Width"
-msgstr "Breite für das Entfernen der Außenhaut unten"
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_preshrink description"
-msgid "The largest width of bottom skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing bottom skin at slanted surfaces in the model."
-msgstr "Dies bezeichnet die größte Breite der zu entfernenden unteren Außenhautbereiche. Jeder Außenhautbereich, der kleiner als dieser Wert ist, verschwindet. Dies kann bei der Beschränkung der benötigten Zeit und Materialmenge für das Drucken der unteren Außenhaut an abgeschrägten Flächen des Modells unterstützen."
-
-#: fdmprinter.def.json
-msgctxt "expand_skins_expand_distance label"
-msgid "Skin Expand Distance"
-msgstr "Expansionsdistanz Außenhaut"
-
-#: fdmprinter.def.json
-msgctxt "expand_skins_expand_distance description"
-msgid "The distance the skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on neighboring layers adhere better to the skin. Lower values save amount of material used."
-msgstr "Die Distanz, um die die Außenhäute in die Füllung expandiert werden. Höhere Werte lassen die Außenhaut besser am Füllmuster und die Wände an den angrenzenden Schichten besser an der Außenhaut haften. Niedrigere Werte reduzieren den Materialverbrauch."
-
-#: fdmprinter.def.json
-msgctxt "top_skin_expand_distance label"
-msgid "Top Skin Expand Distance"
-msgstr "Expansionsdistanz Außenhaut oben"
-
-#: fdmprinter.def.json
-msgctxt "top_skin_expand_distance description"
-msgid "The distance the top skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on the layer above adhere better to the skin. Lower values save amount of material used."
-msgstr "Die Distanz, um die die oberen Außenhäute in die Füllung expandiert werden. Höhere Werte lassen die Außenhaut besser am Füllmuster und die Wände an den Schichten darüber besser an der Außenhaut haften. Niedrigere Werte reduzieren den Materialverbrauch."
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_expand_distance label"
-msgid "Bottom Skin Expand Distance"
-msgstr "Expansionsdistanz Außenhaut unten"
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_expand_distance description"
-msgid "The distance the bottom skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the skin adhere better to the walls on the layer below. Lower values save amount of material used."
-msgstr "Die Distanz, um die die unteren Außenhäute in die Füllung expandiert werden. Höhere Werte lassen die Außenhaut besser am Füllmuster und an den Wänden auf der darunter liegenden Schicht haften. Niedrigere Werte reduzieren den Materialverbrauch."
-
-#: fdmprinter.def.json
-msgctxt "max_skin_angle_for_expansion label"
-msgid "Maximum Skin Angle for Expansion"
-msgstr "Maximaler Winkel Außenhaut für Expansion"
-
-#: fdmprinter.def.json
-msgctxt "max_skin_angle_for_expansion description"
-msgid "Top and/or bottom surfaces of your object with an angle larger than this setting, won't have their top/bottom skin expanded. This avoids expanding the narrow skin areas that are created when the model surface has a near vertical slope. An angle of 0° is horizontal, while an angle of 90° is vertical."
-msgstr "Obere und/oder untere Flächen Ihres Objekts mit einem Winkel, der diese Einstellung übersteigt, werden ohne Expansion der oberen/unteren Außenhaut ausgeführt. Damit wird vermieden, dass enge Außenhautbereiche expandiert werden, die entstehen, wenn die Modellfläche eine nahezu vertikale Neigung aufweist. Ein Winkel von 0 Grad ist horizontal, während ein Winkel von 90 Grad vertikal ist."
-
-#: fdmprinter.def.json
-msgctxt "min_skin_width_for_expansion label"
-msgid "Minimum Skin Width for Expansion"
-msgstr "Mindestbreite Außenhaut für Expansion"
-
-#: fdmprinter.def.json
-msgctxt "min_skin_width_for_expansion description"
-msgid "Skin areas narrower than this are not expanded. This avoids expanding the narrow skin areas that are created when the model surface has a slope close to the vertical."
-msgstr "Außenhautbereiche, die schmaler als die Mindestbreite sind, werden nicht expandiert. Damit wird vermieden, dass enge Außenhautbereiche expandiert werden, die entstehen, wenn die Modellfläche eine nahezu vertikale Neigung aufweist."
-
#: fdmprinter.def.json
msgctxt "skin_edge_support_thickness label"
msgid "Skin Edge Support Thickness"
@@ -2560,8 +2590,8 @@ msgstr "Geschwindigkeit der ersten Schicht"
#: fdmprinter.def.json
msgctxt "speed_layer_0 description"
-msgid "The speed for the initial layer. A lower value is advised to improve adhesion to the build plate."
-msgstr "Die Geschwindigkeit für die erste Schicht. Ein niedrigerer Wert wird empfohlen, um die Haftung an der Druckplatte zu verbessern."
+msgid "The speed for the initial layer. A lower value is advised to improve adhesion to the build plate. Does not affect the build plate adhesion structures themselves, like brim and raft."
+msgstr "Die Geschwindigkeit für die erste Schicht. Ein niedrigerer Wert wird empfohlen, um die Haftung auf der Bauplatte zu verbessern. Hat keinen Einfluss auf die Haftstrukturen des Druckbetts selbst, wie Krempe und Raft."
#: fdmprinter.def.json
msgctxt "speed_print_layer_0 label"
@@ -3170,8 +3200,9 @@ msgstr "Max. Kammentfernung ohne Einziehen"
#: fdmprinter.def.json
msgctxt "retraction_combing_max_distance description"
-msgid "When non-zero, combing travel moves that are longer than this distance will use retraction."
-msgstr "Bei Nicht-Null verwenden die Combing-Fahrbewegungen, die länger als die Distanz sind, die Einziehfunktion."
+msgid "When greater than zero, combing travel moves that are longer than this distance will use retraction. If set to zero, there is no maximum and combing moves will not use retraction."
+msgstr "Bei Werten größer als Null verwenden die Combing-Fahrbewegungen, die weiter als über diese Distanz erfolgen, die Einzugsfunktion. Beim Wert Null gibt es"
+" keine Maximalstellung, und die Combing-Fahrbewegungen verwenden die Einzugsfunktion nicht."
#: fdmprinter.def.json
msgctxt "travel_retract_before_outer_wall label"
@@ -5074,10 +5105,8 @@ msgstr "Rang der Netzverarbeitung"
#: fdmprinter.def.json
msgctxt "infill_mesh_order description"
-msgid "Determines the priority of this mesh when considering multiple overlapping infill meshes. Areas where multiple infill meshes overlap will take on the settings of the mesh with the lowest rank. An infill mesh with a higher order will modify the infill of infill meshes with lower order and normal meshes."
-msgstr "Legt fest, welche Priorität dieses Netz (Mesh) bei mehreren überlappenden Mesh-Füllungen hat. Bereiche, in denen mehrere Mesh-Füllungen überlappen, übernehmen"
-" die Einstellungen des Netzes mit dem niedrigsten Rang. Wird eine Mesh-Füllung höher gerankt, führt dies zu einer Modifizierung der Füllungen oder Mesh-Füllungen,"
-" deren Priorität niedriger oder normal ist."
+msgid "Determines the priority of this mesh when considering multiple overlapping infill meshes. Areas where multiple infill meshes overlap will take on the settings of the mesh with the highest rank. An infill mesh with a higher rank will modify the infill of infill meshes with lower rank and normal meshes."
+msgstr "Legt fest, welchen Rang dieses Netz (Mesh) bei mehreren überlappenden Mesh-Füllungen hat. Bereiche, in denen mehrere Mesh-Füllungen überlappen, übernehmen die Einstellungen des Netzes mit dem höchsten Rang. Ist der Rang einer Mesh-Füllung höher, führt dies zu einer Modifizierung der Füllungen oder Mesh-Füllungen, deren Rang niedriger oder normal ist."
#: fdmprinter.def.json
msgctxt "cutting_mesh label"
@@ -5424,6 +5453,16 @@ msgctxt "conical_overhang_angle description"
msgid "The maximum angle of overhangs after the they have been made printable. At a value of 0° all overhangs are replaced by a piece of model connected to the build plate, 90° will not change the model in any way."
msgstr "Der maximale Winkel von Überhängen, nachdem sie druckbar gemacht wurden. Bei einem Wert von 0° werden alle Überhänge durch ein Teil des Modells ersetzt, das mit der Druckplatte verbunden ist, 90° führt zu keiner Änderung des Modells."
+#: fdmprinter.def.json
+msgctxt "conical_overhang_hole_size label"
+msgid "Maximum Overhang Hole Area"
+msgstr "Maximaler Lochflächen-Überstand"
+
+#: fdmprinter.def.json
+msgctxt "conical_overhang_hole_size description"
+msgid "The maximum area of a hole in the base of the model before it's removed by Make Overhang Printable. Holes smaller than this will be retained. A value of 0 mm² will fill all holes in the models base."
+msgstr "Die maximale Fläche eines Lochs im Sockel des Modells, das mittels „Überhang drucken“ entfernt werden soll. Löcher mit kleinerer Fläche werden beibehalten. Beim Wert 0 mm² werden alle Löcher in der Modellbasis gefüllt."
+
#: fdmprinter.def.json
msgctxt "coasting_enable label"
msgid "Enable Coasting"
@@ -6363,6 +6402,30 @@ msgctxt "mesh_rotation_matrix description"
msgid "Transformation matrix to be applied to the model when loading it from file."
msgstr "Transformationsmatrix, die beim Laden aus der Datei auf das Modell angewandt wird."
+#~ msgctxt "retraction_combing_max_distance description"
+#~ msgid "When non-zero, combing travel moves that are longer than this distance will use retraction."
+#~ msgstr "Bei Nicht-Null verwenden die Combing-Fahrbewegungen, die länger als die Distanz sind, die Einziehfunktion."
+
+#~ msgctxt "machine_use_extruder_offset_to_offset_coords description"
+#~ msgid "Apply the extruder offset to the coordinate system."
+#~ msgstr "Verwenden Sie den Extruder-Versatz für das Koordinatensystem."
+
+#~ msgctxt "shell label"
+#~ msgid "Shell"
+#~ msgstr "Gehäuse"
+
+#~ msgctxt "max_skin_angle_for_expansion description"
+#~ msgid "Top and/or bottom surfaces of your object with an angle larger than this setting, won't have their top/bottom skin expanded. This avoids expanding the narrow skin areas that are created when the model surface has a near vertical slope. An angle of 0° is horizontal, while an angle of 90° is vertical."
+#~ msgstr "Obere und/oder untere Flächen Ihres Objekts mit einem Winkel, der diese Einstellung übersteigt, werden ohne Expansion der oberen/unteren Außenhaut ausgeführt. Damit wird vermieden, dass enge Außenhautbereiche expandiert werden, die entstehen, wenn die Modellfläche eine nahezu vertikale Neigung aufweist. Ein Winkel von 0 Grad ist horizontal, während ein Winkel von 90 Grad vertikal ist."
+
+#~ msgctxt "speed_layer_0 description"
+#~ msgid "The speed for the initial layer. A lower value is advised to improve adhesion to the build plate."
+#~ msgstr "Die Geschwindigkeit für die erste Schicht. Ein niedrigerer Wert wird empfohlen, um die Haftung an der Druckplatte zu verbessern."
+
+#~ msgctxt "infill_mesh_order description"
+#~ msgid "Determines the priority of this mesh when considering multiple overlapping infill meshes. Areas where multiple infill meshes overlap will take on the settings of the mesh with the lowest rank. An infill mesh with a higher order will modify the infill of infill meshes with lower order and normal meshes."
+#~ msgstr "Legt fest, welche Priorität dieses Netz (Mesh) bei mehreren überlappenden Mesh-Füllungen hat. Bereiche, in denen mehrere Mesh-Füllungen überlappen, übernehmen die Einstellungen des Netzes mit dem niedrigsten Rang. Wird eine Mesh-Füllung höher gerankt, führt dies zu einer Modifizierung der Füllungen oder Mesh-Füllungen, deren Priorität niedriger oder normal ist."
+
#~ msgctxt "material_bed_temperature description"
#~ msgid "The temperature used for the heated build plate. If this is 0, the bed temperature will not be adjusted."
#~ msgstr "Die Temperatur, die für die erhitzte Druckplatte verwendet wird. Wenn dieser Wert 0 beträgt, wird die Betttemperatur nicht angepasst."
diff --git a/resources/i18n/es_ES/cura.po b/resources/i18n/es_ES/cura.po
index 14396c0549..08bb506928 100644
--- a/resources/i18n/es_ES/cura.po
+++ b/resources/i18n/es_ES/cura.po
@@ -1,24 +1,28 @@
# Cura
-# Copyright (C) 2020 Ultimaker B.V.
+# Copyright (C) 2021 Ultimaker B.V.
# This file is distributed under the same license as the Cura package.
#
msgid ""
msgstr ""
-"Project-Id-Version: Cura 4.8\n"
+"Project-Id-Version: Cura 4.10\n"
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
-"POT-Creation-Date: 2020-10-19 13:15+0200\n"
-"PO-Revision-Date: 2020-11-09 14:01+0100\n"
+"POT-Creation-Date: 2021-06-10 17:35+0200\n"
+"PO-Revision-Date: 2021-04-16 15:15+0200\n"
"Last-Translator: Lionbridge \n"
+"Language-Team: \n"
"Language: es_ES\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 2.4.1\n"
-"Language-Team: \n"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/DiscoveredPrintersModel.py:83 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:110 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/QualityManagementModel.py:361 /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1581
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:130 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:171
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/DiscoveredPrintersModel.py:83
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:110
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/QualityManagementModel.py:361
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1612
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:130
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:171
msgctxt "@label"
msgid "Unknown"
msgstr "Desconocido"
@@ -44,47 +48,56 @@ msgctxt "@label {0} is the name of a printer that's about to be deleted."
msgid "Are you sure you wish to remove {0}? This cannot be undone!"
msgstr "¿Seguro que desea eliminar {0}? ¡Esta acción no se puede deshacer!"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:42 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:11 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/QualityManagementModel.py:338
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:42
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:11
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/QualityManagementModel.py:338
msgctxt "@label"
msgid "Default"
msgstr "Default"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:45 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:14
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:45
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:14
msgctxt "@label"
msgid "Visual"
msgstr "Visual"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:46 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:15
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:46
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:15
msgctxt "@text"
msgid "The visual profile is designed to print visual prototypes and models with the intent of high visual and surface quality."
msgstr "El perfil visual está diseñado para imprimir prototipos y modelos visuales con la intención de obtener una alta calidad visual y de superficies."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:49 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:18
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:49
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:18
msgctxt "@label"
msgid "Engineering"
msgstr "Engineering"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:50 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:19
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:50
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:19
msgctxt "@text"
msgid "The engineering profile is designed to print functional prototypes and end-use parts with the intent of better accuracy and for closer tolerances."
msgstr "El perfil de ingeniería ha sido diseñado para imprimir prototipos funcionales y piezas de uso final con la intención de obtener una mayor precisión y tolerancias más precisas."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:53 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:22
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:53
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:22
msgctxt "@label"
msgid "Draft"
msgstr "Boceto"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:54 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:23
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:54
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:23
msgctxt "@text"
msgid "The draft profile is designed to print initial prototypes and concept validation with the intent of significant print time reduction."
msgstr "El perfil del boceto ha sido diseñado para imprimir los prototipos iniciales y la validación del concepto con la intención de reducir el tiempo de impresión de manera considerable."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:226
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:234
msgctxt "@label"
msgid "Custom Material"
msgstr "Material personalizado"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:227 /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationMenu.qml:205
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:235
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationMenu.qml:205
msgctxt "@label"
msgid "Custom"
msgstr "Personalizado"
@@ -105,51 +118,63 @@ msgctxt "@item:inlistbox"
msgid "All Files (*)"
msgstr "Todos los archivos (*)"
-#: /home/trin/Gedeeld/Projects/Cura/cura/API/Account.py:178
+#: /home/trin/Gedeeld/Projects/Cura/cura/API/Account.py:181
msgctxt "@info:title"
msgid "Login failed"
msgstr "Fallo de inicio de sesión"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:67 /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:24
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:67
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:24
msgctxt "@info:status"
msgid "Finding new location for objects"
msgstr "Buscando nueva ubicación para los objetos"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:71 /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:28
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:71
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:28
msgctxt "@info:title"
msgid "Finding Location"
msgstr "Buscando ubicación"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:150 /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:41 /home/trin/Gedeeld/Projects/Cura/cura/MultiplyObjectsJob.py:76
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:150
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:41
+#: /home/trin/Gedeeld/Projects/Cura/cura/MultiplyObjectsJob.py:76
msgctxt "@info:status"
msgid "Unable to find a location within the build volume for all objects"
msgstr "No se puede encontrar una ubicación dentro del volumen de impresión para todos los objetos"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:151 /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:42
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:151
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:42
msgctxt "@info:title"
msgid "Can't Find Location"
msgstr "No se puede encontrar la ubicación"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:104
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:116
msgctxt "@info:backup_failed"
msgid "Could not create archive from user data directory: {}"
msgstr "No se ha podido crear el archivo desde el directorio de datos de usuario: {}"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:110 /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:107 /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:113
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:122
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:107
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:113
msgctxt "@info:title"
msgid "Backup"
msgstr "Copia de seguridad"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:123
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:135
msgctxt "@info:backup_failed"
msgid "Tried to restore a Cura backup without having proper data or meta data."
msgstr "Se ha intentado restaurar una copia de seguridad de Cura sin tener los datos o metadatos adecuados."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:134
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:146
msgctxt "@info:backup_failed"
msgid "Tried to restore a Cura backup that is higher than the current version."
msgstr "Se ha intentado restaurar una copia de seguridad de Cura superior a la versión actual."
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:157
+msgctxt "@info:backup_failed"
+msgid "The following error occurred while trying to restore a Cura backup:"
+msgstr "Se ha producido el siguiente error al intentar restaurar una copia de seguridad de Cura:"
+
#: /home/trin/Gedeeld/Projects/Cura/cura/BuildVolume.py:98
msgctxt "@info:status"
msgid "The build volume height has been reduced due to the value of the \"Print Sequence\" setting to prevent the gantry from colliding with printed models."
@@ -299,71 +324,77 @@ msgctxt "@action:button"
msgid "Send report"
msgstr "Enviar informe"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:521
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:527
msgctxt "@info:progress"
msgid "Loading machines..."
msgstr "Cargando máquinas..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:528
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:534
msgctxt "@info:progress"
msgid "Setting up preferences..."
msgstr "Configurando preferencias...."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:657
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:672
msgctxt "@info:progress"
msgid "Initializing Active Machine..."
msgstr "Iniciando la máquina activa..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:788
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:803
msgctxt "@info:progress"
msgid "Initializing machine manager..."
msgstr "Iniciando el administrador de la máquina..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:802
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:817
msgctxt "@info:progress"
msgid "Initializing build volume..."
msgstr "Iniciando el volumen de impresión..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:870
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:888
msgctxt "@info:progress"
msgid "Setting up scene..."
msgstr "Configurando escena..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:906
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:924
msgctxt "@info:progress"
msgid "Loading interface..."
msgstr "Cargando interfaz..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:911
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:929
msgctxt "@info:progress"
msgid "Initializing engine..."
msgstr "Iniciando el motor..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1221
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1246
#, python-format
msgctxt "@info 'width', 'depth' and 'height' are variable names that must NOT be translated; just translate the format of ##x##x## mm."
msgid "%(width).1f x %(depth).1f x %(height).1f mm"
msgstr "%(width).1f x %(depth).1f x %(height).1f mm"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1777
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1799
#, python-brace-format
msgctxt "@info:status"
msgid "Only one G-code file can be loaded at a time. Skipped importing {0}"
msgstr "Solo se puede cargar un archivo GCode a la vez. Se omitió la importación de {0}"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1778 /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:188 /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:242 /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:153
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1800
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:190
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:244
+#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:153
#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:165
msgctxt "@info:title"
msgid "Warning"
msgstr "Advertencia"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1787
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1809
#, python-brace-format
msgctxt "@info:status"
msgid "Can't open any other file if G-code is loading. Skipped importing {0}"
msgstr "No se puede abrir ningún archivo si se está cargando un archivo GCode. Se omitió la importación de {0}"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1788 /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:146 /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:153 /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:139
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1810
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:146
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:153
+#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:139
msgctxt "@info:title"
msgid "Error"
msgstr "Error"
@@ -383,7 +414,7 @@ msgctxt "@info:title"
msgid "Placing Object"
msgstr "Colocando objeto"
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationHelpers.py:90
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationHelpers.py:92
msgctxt "@message"
msgid "Could not read response."
msgstr "No se ha podido leer la respuesta."
@@ -403,28 +434,31 @@ msgctxt "@message"
msgid "Something unexpected happened when trying to log in, please try again."
msgstr "Se ha producido un problema al intentar iniciar sesión, vuelva a intentarlo."
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:187
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:189
msgctxt "@info"
msgid "Unable to start a new sign in process. Check if another sign in attempt is still active."
msgstr "No se puede iniciar un nuevo proceso de inicio de sesión. Compruebe si todavía está activo otro intento de inicio de sesión."
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:242
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:244
msgctxt "@info"
msgid "Unable to reach the Ultimaker account server."
msgstr "No se puede acceder al servidor de cuentas de Ultimaker."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:205 /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:132
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:205
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:132
msgctxt "@title:window"
msgid "File Already Exists"
msgstr "El archivo ya existe"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:206 /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:133
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:206
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:133
#, python-brace-format
msgctxt "@label Don't translate the XML tag !"
msgid "The file {0} already exists. Are you sure you want to overwrite it?"
msgstr "El archivo {0} ya existe. ¿Está seguro de que desea sobrescribirlo?"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:452 /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:455
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:457
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:460
msgctxt "@info:status"
msgid "Invalid file URL:"
msgstr "URL del archivo no válida:"
@@ -476,7 +510,8 @@ msgctxt "@info:status Don't translate the XML tags !"
msgid "Failed to import profile from {0}:"
msgstr "Error al importar el perfil de {0}:"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:235 /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:245
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:235
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:245
#, python-brace-format
msgctxt "@info:status Don't translate the XML tags !"
msgid "This profile {0} contains incorrect data, could not import it."
@@ -506,33 +541,33 @@ msgctxt "@info:status"
msgid "Profile {0} has an unknown file type or is corrupted."
msgstr "El perfil {0} tiene un tipo de archivo desconocido o está corrupto."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:423
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:426
msgctxt "@label"
msgid "Custom profile"
msgstr "Perfil personalizado"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:439
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:442
msgctxt "@info:status"
msgid "Profile is missing a quality type."
msgstr "Al perfil le falta un tipo de calidad."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:443
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:446
msgctxt "@info:status"
-msgid "Global stack is missing."
-msgstr "Falta la pila global."
+msgid "There is no active printer yet."
+msgstr "Todavía no hay ninguna impresora activa."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:449
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:452
msgctxt "@info:status"
msgid "Unable to add the profile."
msgstr "No se puede añadir el perfil."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:463
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:466
#, python-brace-format
msgctxt "@info:status"
msgid "Quality type '{0}' is not compatible with the current active machine definition '{1}'."
msgstr "El tipo de calidad '{0}' no es compatible con la definición actual de máquina activa '{1}'."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:468
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:471
#, python-brace-format
msgctxt "@info:status"
msgid "Warning: The profile is not visible because its quality type '{0}' is not available for the current configuration. Switch to a material/nozzle combination that can use this quality type."
@@ -548,39 +583,50 @@ msgctxt "@info:No intent profile selected"
msgid "Default"
msgstr "Default"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:712 /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:216
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:713
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:216
msgctxt "@label"
msgid "Nozzle"
msgstr "Tobera"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:860
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:856
msgctxt "@info:message Followed by a list of settings."
msgid "Settings have been changed to match the current availability of extruders:"
msgstr "La configuración se ha cambiado para que coincida con los extrusores disponibles en este momento:"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:862
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:858
msgctxt "@info:title"
msgid "Settings updated"
msgstr "Ajustes actualizados"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1447
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1478
msgctxt "@info:title"
msgid "Extruder(s) Disabled"
msgstr "Extrusores deshabilitados"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:17 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:67 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:48
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:17
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:67
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:48
msgctxt "@action:button"
msgid "Add"
msgstr "Agregar"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:26 /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:263
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:26
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:272
msgctxt "@action:button"
msgid "Finish"
msgstr "Finalizar"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:33 /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:441 /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:234 /home/trin/Gedeeld/Projects/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:150
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxProgressButton.qml:19 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/dialogs/ToolboxConfirmUninstallResetDialog.qml:81 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:352
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:58 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/PrintWindow.qml:42 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:87
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:33
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:445
+#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:234
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:150
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxProgressButton.qml:19
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/dialogs/ToolboxConfirmUninstallResetDialog.qml:81
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:352
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:58
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/PrintWindow.qml:42
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:82
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:292
msgctxt "@action:button"
msgid "Cancel"
@@ -592,73 +638,84 @@ msgctxt "@label"
msgid "Group #{group_nr}"
msgstr "N.º de grupo {group_nr}"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:83
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:82
msgctxt "@tooltip"
msgid "Outer Wall"
msgstr "Pared exterior"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:84
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:83
msgctxt "@tooltip"
msgid "Inner Walls"
msgstr "Paredes interiores"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:85
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:84
msgctxt "@tooltip"
msgid "Skin"
msgstr "Forro"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:86
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:85
msgctxt "@tooltip"
msgid "Infill"
msgstr "Relleno"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:87
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:86
msgctxt "@tooltip"
msgid "Support Infill"
msgstr "Relleno de soporte"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:88
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:87
msgctxt "@tooltip"
msgid "Support Interface"
msgstr "Interfaz de soporte"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:89
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:88
msgctxt "@tooltip"
msgid "Support"
msgstr "Soporte"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:90
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:89
msgctxt "@tooltip"
msgid "Skirt"
msgstr "Falda"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:91
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:90
msgctxt "@tooltip"
msgid "Prime Tower"
msgstr "Torre auxiliar"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:92
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:91
msgctxt "@tooltip"
msgid "Travel"
msgstr "Desplazamiento"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:93
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:92
msgctxt "@tooltip"
msgid "Retractions"
msgstr "Retracciones"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:94
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:93
msgctxt "@tooltip"
msgid "Other"
msgstr "Otro"
#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:56
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:259
msgctxt "@action:button"
msgid "Next"
msgstr "Siguiente"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WhatsNewPagesModel.py:17 /home/trin/Gedeeld/Projects/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:185 /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:128 /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:482
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:173 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:127
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:268
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WhatsNewPagesModel.py:55
+msgctxt "@action:button"
+msgid "Skip"
+msgstr "Omitir"
+
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WhatsNewPagesModel.py:60
+#: /home/trin/Gedeeld/Projects/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:185
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:128
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:485
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:174
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:127
msgctxt "@action:button"
msgid "Close"
msgstr "Cerrar"
@@ -682,29 +739,36 @@ msgstr ""
"
Obtenga más información sobre cómo garantizar la mejor calidad y fiabilidad de impresión posible.
"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:535
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:540
#, python-brace-format
msgctxt "@info:status Don't translate the XML tags or !"
msgid "Project file {0} contains an unknown machine type {1}. Cannot import the machine. Models will be imported instead."
msgstr "El archivo del proyecto {0} contiene un tipo de máquina desconocida {1}. No se puede importar la máquina, en su lugar, se importarán los modelos."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:538
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:543
msgctxt "@info:title"
msgid "Open Project File"
msgstr "Abrir archivo de proyecto"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:634
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:639
#, python-brace-format
msgctxt "@info:error Don't translate the XML tags or !"
msgid "Project file {0} is suddenly inaccessible: {1}."
msgstr "El archivo de proyecto {0} está repentinamente inaccesible: {1}."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:635
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:640
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:647
msgctxt "@info:title"
msgid "Can't Open Project File"
msgstr "No se puede abrir el archivo de proyecto"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:686
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:646
+#, python-brace-format
+msgctxt "@info:error Don't translate the XML tags or !"
+msgid "Project file {0} is corrupt: {1}."
+msgstr "El archivo de proyecto {0} está dañado: {1}."
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:698
#, python-brace-format
msgctxt "@info:error Don't translate the XML tag !"
msgid "Project file {0} is made using profiles that are unknown to this version of Ultimaker Cura."
@@ -720,7 +784,8 @@ msgctxt "@title:tab"
msgid "Custom"
msgstr "Personalizado"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/__init__.py:27 /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/__init__.py:33
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/__init__.py:27
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/__init__.py:33
msgctxt "@item:inlistbox"
msgid "3MF File"
msgstr "Archivo 3MF"
@@ -730,7 +795,8 @@ msgctxt "@error:zip"
msgid "3MF Writer plug-in is corrupt."
msgstr "El complemento del Escritor de 3MF está dañado."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:59 /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:92
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:59
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:92
msgctxt "@error:zip"
msgid "No permission to write the workspace here."
msgstr "No tiene permiso para escribir el espacio de trabajo aquí."
@@ -740,7 +806,7 @@ msgctxt "@error:zip"
msgid "The operating system does not allow saving a project file to this location or with this file name."
msgstr "El sistema operativo no permite guardar un archivo de proyecto en esta ubicación ni con este nombre de archivo."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWriter.py:185
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWriter.py:206
msgctxt "@error:zip"
msgid "Error writing 3mf file."
msgstr "Error al escribir el archivo 3MF."
@@ -795,7 +861,8 @@ msgctxt "@error:file_size"
msgid "The backup exceeds the maximum file size."
msgstr "La copia de seguridad excede el tamaño máximo de archivo."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DriveApiService.py:82 /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/RestoreBackupJob.py:23
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DriveApiService.py:86
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/RestoreBackupJob.py:26
msgctxt "@info:backup_status"
msgid "There was an error trying to restore your backup."
msgstr "Se ha producido un error al intentar restaurar su copia de seguridad."
@@ -805,41 +872,45 @@ msgctxt "@item:inmenu"
msgid "Manage backups"
msgstr "Administrar copias de seguridad"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:356
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:382
msgctxt "@info:status"
msgid "Unable to slice with the current material as it is incompatible with the selected machine or configuration."
msgstr "No se puede segmentar con el material actual, ya que es incompatible con el dispositivo o la configuración seleccionados."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:356 /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:387 /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:411 /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:420
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:429 /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:441
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:382
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:413
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:437
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:446
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:455
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:467
msgctxt "@info:title"
msgid "Unable to slice"
msgstr "No se puede segmentar"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:386
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:412
#, python-brace-format
msgctxt "@info:status"
msgid "Unable to slice with the current settings. The following settings have errors: {0}"
msgstr "Los ajustes actuales no permiten la segmentación. Los siguientes ajustes contienen errores: {0}"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:410
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:436
#, python-brace-format
msgctxt "@info:status"
msgid "Unable to slice due to some per-model settings. The following settings have errors on one or more models: {error_labels}"
msgstr "Los ajustes de algunos modelos no permiten la segmentación. Los siguientes ajustes contienen errores en uno o más modelos: {error_labels}."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:419
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:445
msgctxt "@info:status"
msgid "Unable to slice because the prime tower or prime position(s) are invalid."
msgstr "No se puede segmentar porque la torre auxiliar o la posición o posiciones de preparación no son válidas."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:428
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:454
#, python-format
msgctxt "@info:status"
msgid "Unable to slice because there are objects associated with disabled Extruder %s."
msgstr "No se puede segmentar porque hay objetos asociados al extrusor %s que está deshabilitado."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:437
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:463
msgctxt "@info:status"
msgid ""
"Please review settings and check if your models:\n"
@@ -852,7 +923,8 @@ msgstr ""
"- Están asignados a un extrusor activado\n"
" - No están todos definidos como mallas modificadoras"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/ProcessSlicedLayersJob.py:52 /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/ProcessSlicedLayersJob.py:260
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/ProcessSlicedLayersJob.py:52
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/ProcessSlicedLayersJob.py:260
msgctxt "@info:status"
msgid "Processing Layers"
msgstr "Procesando capas"
@@ -862,7 +934,8 @@ msgctxt "@info:title"
msgid "Information"
msgstr "Información"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraProfileReader/__init__.py:14 /home/trin/Gedeeld/Projects/Cura/plugins/CuraProfileWriter/__init__.py:14
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraProfileReader/__init__.py:14
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraProfileWriter/__init__.py:14
msgctxt "@item:inlistbox"
msgid "Cura Profile"
msgstr "Perfil de cura"
@@ -894,7 +967,8 @@ msgctxt "@action"
msgid "Update Firmware"
msgstr "Actualizar firmware"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeGzReader/__init__.py:17 /home/trin/Gedeeld/Projects/Cura/plugins/GCodeGzWriter/__init__.py:17
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeGzReader/__init__.py:17
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeGzWriter/__init__.py:17
msgctxt "@item:inlistbox"
msgid "Compressed G-code File"
msgstr "Archivo GCode comprimido"
@@ -904,7 +978,9 @@ msgctxt "@error:not supported"
msgid "GCodeGzWriter does not support text mode."
msgstr "GCodeGzWriter no es compatible con el modo texto."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeProfileReader/__init__.py:14 /home/trin/Gedeeld/Projects/Cura/plugins/GCodeReader/__init__.py:14 /home/trin/Gedeeld/Projects/Cura/plugins/GCodeWriter/__init__.py:16
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeProfileReader/__init__.py:14
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeReader/__init__.py:14
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeWriter/__init__.py:16
msgctxt "@item:inlistbox"
msgid "G-code File"
msgstr "Archivo GCode"
@@ -914,7 +990,8 @@ msgctxt "@info:status"
msgid "Parsing G-code"
msgstr "Analizar GCode"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeReader/FlavorParser.py:349 /home/trin/Gedeeld/Projects/Cura/plugins/GCodeReader/FlavorParser.py:503
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeReader/FlavorParser.py:349
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeReader/FlavorParser.py:503
msgctxt "@info:title"
msgid "G-code Details"
msgstr "Datos de GCode"
@@ -934,7 +1011,8 @@ msgctxt "@error:not supported"
msgid "GCodeWriter does not support non-text mode."
msgstr "GCodeWriter no es compatible con el modo sin texto."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeWriter/GCodeWriter.py:80 /home/trin/Gedeeld/Projects/Cura/plugins/GCodeWriter/GCodeWriter.py:96
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeWriter/GCodeWriter.py:80
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeWriter/GCodeWriter.py:96
msgctxt "@warning:status"
msgid "Please prepare G-code before exporting."
msgstr "Prepare el Gcode antes de la exportación."
@@ -1020,7 +1098,8 @@ msgctxt "@item:inlistbox"
msgid "Save to Removable Drive {0}"
msgstr "Guardar en unidad extraíble {0}"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:66 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/MeshFormatHandler.py:118
+#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:66
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/MeshFormatHandler.py:118
msgctxt "@info:status"
msgid "There are no file formats available to write with!"
msgstr "¡No hay formatos de archivo disponibles con los que escribir!"
@@ -1036,7 +1115,8 @@ msgctxt "@info:title"
msgid "Saving"
msgstr "Guardando"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:106 /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:109
+#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:106
+#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:109
#, python-brace-format
msgctxt "@info:status Don't translate the XML tags or !"
msgid "Could not save to {0}: {1}"
@@ -1048,7 +1128,8 @@ msgctxt "@info:status Don't translate the tag {device}!"
msgid "Could not find a file name when trying to write to {device}."
msgstr "No se pudo encontrar un nombre de archivo al tratar de escribir en {device}."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:138 /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:153
+#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:138
+#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:153
#, python-brace-format
msgctxt "@info:status"
msgid "Could not save to removable drive {0}: {1}"
@@ -1098,27 +1179,28 @@ msgctxt "@item:intext"
msgid "Removable Drive"
msgstr "Unidad extraíble"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:121
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:128
msgctxt "@info:status"
msgid "Cura does not accurately display layers when Wire Printing is enabled."
msgstr "Cura no muestra correctamente las capas si la impresión de alambre está habilitada."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:122
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:129
msgctxt "@info:title"
msgid "Simulation View"
msgstr "Vista de simulación"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:123
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:130
msgctxt "@info:status"
msgid "Nothing is shown because you need to slice first."
msgstr "No se muestra nada porque primero hay que cortar."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:123
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:130
msgctxt "@info:title"
msgid "No layers to show"
msgstr "No hay capas para mostrar"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:124 /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:73
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:131
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:74
msgctxt "@info:option_text"
msgid "Do not show this message again"
msgstr "No volver a mostrar este mensaje"
@@ -1128,16 +1210,21 @@ msgctxt "@item:inlistbox"
msgid "Layer view"
msgstr "Vista de capas"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:70
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:71
msgctxt "@info:status"
-msgid "Your model is not manifold. The highlighted areas indicate either missing or extraneous surfaces."
-msgstr "Su modelo no es funcional. Las áreas resaltadas indican que faltan superficies o son extrañas."
+msgid "The highlighted areas indicate either missing or extraneous surfaces. Fix your model and open it again into Cura."
+msgstr "Las áreas resaltadas indican que faltan superficies o son inusuales. Corrija los errores en el modelo y vuelva a abrirlo en Cura."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:72
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:73
msgctxt "@info:title"
-msgid "Model errors"
+msgid "Model Errors"
msgstr "Errores de modelo"
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:79
+msgctxt "@action:button"
+msgid "Learn more"
+msgstr "Más información"
+
#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/__init__.py:12
msgctxt "@item:inmenu"
msgid "Solid view"
@@ -1158,12 +1245,13 @@ msgctxt "@info:generic"
msgid "Do you want to sync material and software packages with your account?"
msgstr "¿Desea sincronizar el material y los paquetes de software con su cuenta?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py:143 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/DownloadPresenter.py:93
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py:143
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/DownloadPresenter.py:93
msgctxt "@info:title"
msgid "Changes detected from your Ultimaker account"
msgstr "Se han detectado cambios desde su cuenta de Ultimaker"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py:146
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py:145
msgctxt "@action:button"
msgid "Sync"
msgstr "Sincronizar"
@@ -1178,7 +1266,8 @@ msgctxt "@button"
msgid "Decline"
msgstr "Rechazar"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/LicenseModel.py:10 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/UserAgreementContent.qml:56
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/LicenseModel.py:10
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/UserAgreementContent.qml:56
msgctxt "@button"
msgid "Agree"
msgstr "Estoy de acuerdo"
@@ -1198,7 +1287,7 @@ msgctxt "@info:generic"
msgid "You need to quit and restart {} before changes have effect."
msgstr "Tiene que salir y reiniciar {} para que los cambios surtan efecto."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/SyncOrchestrator.py:76
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/SyncOrchestrator.py:79
msgctxt "@info:generic"
msgid "{} plugins failed to download"
msgstr "Error al descargar los complementos {}"
@@ -1233,12 +1322,17 @@ msgctxt "@item:inlistbox"
msgid "Compressed COLLADA Digital Asset Exchange"
msgstr "COLLADA Digital Asset Exchange comprimido"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPReader/__init__.py:22 /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/__init__.py:28
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPReader/__init__.py:22
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/__init__.py:28
msgctxt "@item:inlistbox"
msgid "Ultimaker Format Package"
msgstr "Paquete de formato Ultimaker"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:146
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:57
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:72
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:94
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:149
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:159
msgctxt "@info:error"
msgid "Can't write to UFP file:"
msgstr "No se puede escribir en el archivo UFP:"
@@ -1253,22 +1347,22 @@ msgctxt "@action"
msgid "Select upgrades"
msgstr "Seleccionar actualizaciones"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:152
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:154
msgctxt "@action:button"
msgid "Print via cloud"
msgstr "Imprimir mediante cloud"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:153
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:155
msgctxt "@properties:tooltip"
msgid "Print via cloud"
msgstr "Imprimir mediante cloud"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:154
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:156
msgctxt "@info:status"
msgid "Connected via cloud"
msgstr "Conectado mediante cloud"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:264
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:270
#, python-brace-format
msgctxt "@error:send"
msgid "Unknown error code when uploading print job: {0}"
@@ -1314,7 +1408,8 @@ msgid_plural "These printers are not linked to the Digital Factory:"
msgstr[0] "Esta impresora no está vinculada a Digital Factory:"
msgstr[1] "Estas impresoras no están vinculadas a Digital Factory:"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:329 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:419
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:329
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:419
msgctxt "info:name"
msgid "Ultimaker Digital Factory"
msgstr "Ultimaker Digital Factory"
@@ -1563,126 +1658,137 @@ msgctxt "@info:tooltip"
msgid "Some things could be problematic in this print. Click to see tips for adjustment."
msgstr "Algunos elementos pueden causar problemas durante la impresión. Haga clic para ver consejos sobre cómo ajustarlos."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:14
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:15
msgctxt "@title:window"
msgid "Open Project"
msgstr "Abrir proyecto"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:61
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:62
msgctxt "@action:ComboBox Update/override existing profile"
msgid "Update existing"
msgstr "Actualizar existente"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:62
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:63
msgctxt "@action:ComboBox Save settings in a new profile"
msgid "Create new"
msgstr "Crear nuevo"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:74 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:69
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:75
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:69
msgctxt "@action:title"
msgid "Summary - Cura Project"
msgstr "Resumen: proyecto de Cura"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:96 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:93
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:97
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:93
msgctxt "@action:label"
msgid "Printer settings"
msgstr "Ajustes de la impresora"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:112
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:113
msgctxt "@info:tooltip"
msgid "How should the conflict in the machine be resolved?"
msgstr "¿Cómo debería solucionarse el conflicto en la máquina?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:165 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:102
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:167
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:102
msgctxt "@action:label"
msgid "Type"
msgstr "Tipo"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:181 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:117
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:183
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:117
msgctxt "@action:label"
msgid "Printer Group"
msgstr "Grupo de impresoras"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:203 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:218
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:205
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:218
msgctxt "@action:label"
msgid "Profile settings"
msgstr "Ajustes del perfil"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:219
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:221
msgctxt "@info:tooltip"
msgid "How should the conflict in the profile be resolved?"
msgstr "¿Cómo debería solucionarse el conflicto en el perfil?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:239 /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:349 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:117 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:242
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:242
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:353
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:117
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:242
msgctxt "@action:label"
msgid "Name"
msgstr "Nombre"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:255 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:259
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:258
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:259
msgctxt "@action:label"
msgid "Intent"
msgstr "Intent"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:271 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:226
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:274
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:226
msgctxt "@action:label"
msgid "Not in profile"
msgstr "No está en el perfil"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:276 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:231
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:279
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:231
msgctxt "@action:label"
msgid "%1 override"
msgid_plural "%1 overrides"
msgstr[0] "%1 sobrescrito"
msgstr[1] "%1 sobrescritos"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:287
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:290
msgctxt "@action:label"
msgid "Derivative from"
msgstr "Derivado de"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:292
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:295
msgctxt "@action:label"
msgid "%1, %2 override"
msgid_plural "%1, %2 overrides"
msgstr[0] "%1, %2 sobrescrito"
msgstr[1] "%1, %2 sobrescritos"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:309
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:312
msgctxt "@action:label"
msgid "Material settings"
msgstr "Ajustes del material"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:325
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:328
msgctxt "@info:tooltip"
msgid "How should the conflict in the material be resolved?"
msgstr "¿Cómo debería solucionarse el conflicto en el material?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:369
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:373
msgctxt "@action:label"
msgid "Setting visibility"
msgstr "Visibilidad de los ajustes"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:378
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:382
msgctxt "@action:label"
msgid "Mode"
msgstr "Modo"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:394
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:398
msgctxt "@action:label"
msgid "Visible settings:"
msgstr "Ajustes visibles:"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:399
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:403
msgctxt "@action:label"
msgid "%1 out of %2"
msgstr "%1 de un total de %2"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:425
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:429
msgctxt "@action:warning"
msgid "Loading a project will clear all models on the build plate."
msgstr "Si carga un proyecto, se borrarán todos los modelos de la placa de impresión."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:453
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:457
msgctxt "@action:button"
msgid "Open"
msgstr "Abrir"
@@ -1782,7 +1888,10 @@ msgctxt "@description"
msgid "Backup and synchronize your Cura settings."
msgstr "Realice una copia de seguridad y sincronice sus ajustes de Cura."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/qml/pages/WelcomePage.qml:51 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/WelcomePage.qml:39 /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:68 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:125
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/qml/pages/WelcomePage.qml:51
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/WelcomePage.qml:39
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:53
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:199
msgctxt "@button"
msgid "Sign in"
msgstr "Iniciar sesión"
@@ -1932,7 +2041,8 @@ msgctxt "@item:inlistbox"
msgid "Linear"
msgstr "Lineal"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:161 /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:172
+#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:161
+#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:172
msgctxt "@item:inlistbox"
msgid "Translucency"
msgstr "Translucidez"
@@ -1957,7 +2067,9 @@ msgctxt "@action:label"
msgid "Smoothing"
msgstr "Suavizado"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:227 /home/trin/Gedeeld/Projects/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:139 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:361
+#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:227
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:139
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:361
msgctxt "@action:button"
msgid "OK"
msgstr "Aceptar"
@@ -1977,10 +2089,18 @@ msgctxt "@label"
msgid "Nozzle size"
msgstr "Tamaño de la tobera"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:79 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:93 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:109
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:124 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:74 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:89
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:104 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:205 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:225
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:245 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:265 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:283
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:79
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:93
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:109
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:124
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:74
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:89
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:104
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:205
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:225
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:245
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:265
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:283
msgctxt "@label"
msgid "mm"
msgstr "mm"
@@ -2005,12 +2125,12 @@ msgctxt "@label"
msgid "Cooling Fan Number"
msgstr "Número de ventilador de enfriamiento"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:162
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:163
msgctxt "@title:label"
msgid "Extruder Start G-code"
msgstr "GCode inicial del extrusor"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:176
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:177
msgctxt "@title:label"
msgid "Extruder End G-code"
msgstr "GCode final del extrusor"
@@ -2095,12 +2215,17 @@ msgctxt "@label"
msgid "Number of Extruders"
msgstr "Número de extrusores"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:374
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:345
+msgctxt "@label"
+msgid "Apply Extruder offsets to GCode"
+msgstr "Aplicar compensaciones del extrusor a GCode"
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:393
msgctxt "@title:label"
msgid "Start G-code"
msgstr "Iniciar GCode"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:385
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:404
msgctxt "@title:label"
msgid "End G-code"
msgstr "Finalizar GCode"
@@ -2128,6 +2253,11 @@ msgctxt "@label link to technical assistance"
msgid "View user manuals online"
msgstr "Ver manuales de usuario en línea"
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MonitorStage/MonitorMain.qml:172
+msgctxt "@info"
+msgid "In order to monitor your print from Cura, please connect the printer."
+msgstr "Para supervisar la copia impresa desde Cura, conecte la impresora."
+
#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml:42
msgctxt "@label"
msgid "Mesh Type"
@@ -2173,7 +2303,8 @@ msgctxt "@title:window"
msgid "Select Settings to Customize for this model"
msgstr "Seleccionar ajustes o personalizar este modelo"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:55 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:94
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:55
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:96
msgctxt "@label:textbox"
msgid "Filter..."
msgstr "Filtrar..."
@@ -2183,114 +2314,131 @@ msgctxt "@label:checkbox"
msgid "Show all"
msgstr "Mostrar todo"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:18
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:20
msgctxt "@title:window"
msgid "Post Processing Plugin"
msgstr "Complemento de posprocesamiento"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:57
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:59
msgctxt "@label"
msgid "Post Processing Scripts"
msgstr "Secuencias de comandos de posprocesamiento"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:233
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:235
msgctxt "@action"
msgid "Add a script"
msgstr "Añadir secuencia de comando"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:279
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:282
msgctxt "@label"
msgid "Settings"
msgstr "Ajustes"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:499
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:502
msgctxt "@info:tooltip"
msgid "Change active post-processing scripts."
msgstr "Cambiar las secuencias de comandos de posprocesamiento."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:503
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:506
msgctxt "@info:tooltip"
msgid "The following script is active:"
msgid_plural "The following scripts are active:"
msgstr[0] "La siguiente secuencia de comandos está activa:"
msgstr[1] "Las siguientes secuencias de comandos están activas:"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:20 /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:49
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:20
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:49
msgctxt "@label"
msgid "Color scheme"
msgstr "Combinación de colores"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:107
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:110
msgctxt "@label:listbox"
msgid "Material Color"
msgstr "Color del material"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:111
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:114
msgctxt "@label:listbox"
msgid "Line Type"
msgstr "Tipo de línea"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:115
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:118
msgctxt "@label:listbox"
msgid "Speed"
msgstr "Velocidad"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:119
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:122
msgctxt "@label:listbox"
-msgid "Layer thickness"
+msgid "Layer Thickness"
msgstr "Grosor de la capa"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:156
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:126
+msgctxt "@label:listbox"
+msgid "Line Width"
+msgstr "Ancho de línea"
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:130
+msgctxt "@label:listbox"
+msgid "Flow"
+msgstr "Flujo"
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:171
msgctxt "@label"
msgid "Compatibility Mode"
msgstr "Modo de compatibilidad"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:230
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:245
msgctxt "@label"
msgid "Travels"
msgstr "Desplazamientos"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:236
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:251
msgctxt "@label"
msgid "Helpers"
msgstr "Asistentes"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:242
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:257
msgctxt "@label"
msgid "Shell"
msgstr "Perímetro"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:248 /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedInfillDensitySelector.qml:65
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:263
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedInfillDensitySelector.qml:65
msgctxt "@label"
msgid "Infill"
msgstr "Relleno"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:298
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:271
+msgctxt "@label"
+msgid "Starts"
+msgstr "Inicios"
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:322
msgctxt "@label"
msgid "Only Show Top Layers"
msgstr "Mostrar solo capas superiores"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:308
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:332
msgctxt "@label"
msgid "Show 5 Detailed Layers On Top"
msgstr "Mostrar cinco capas detalladas en la parte superior"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:322
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:346
msgctxt "@label"
msgid "Top / Bottom"
msgstr "Superior o inferior"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:326
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:350
msgctxt "@label"
msgid "Inner Wall"
msgstr "Pared interior"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:384
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:419
msgctxt "@label"
msgid "min"
msgstr "mín."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:433
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:488
msgctxt "@label"
msgid "max"
msgstr "máx."
@@ -2365,7 +2513,8 @@ msgctxt "@action:label"
msgid "Website"
msgstr "Sitio web"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:46 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxProgressButton.qml:20
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:46
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxProgressButton.qml:20
msgctxt "@action:button"
msgid "Installed"
msgstr "Instalado"
@@ -2380,17 +2529,20 @@ msgctxt "@label:The string between and is the highlighted link"
msgid "Buy material spools"
msgstr "Comprar bobinas de material"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:96 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxInstalledTileActions.qml:34
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:96
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxInstalledTileActions.qml:34
msgctxt "@action:button"
msgid "Update"
msgstr "Actualizar"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:97 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxInstalledTileActions.qml:35
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:97
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxInstalledTileActions.qml:35
msgctxt "@action:button"
msgid "Updating"
msgstr "Actualizando"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:98 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxInstalledTileActions.qml:36
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:98
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxInstalledTileActions.qml:36
msgctxt "@action:button"
msgid "Updated"
msgstr "Actualizado"
@@ -2400,7 +2552,8 @@ msgctxt "@label"
msgid "Premium"
msgstr "Prémium"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDownloadsShowcase.qml:39 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxHeader.qml:86
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDownloadsShowcase.qml:39
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxHeader.qml:86
msgctxt "@info:tooltip"
msgid "Go to Web Marketplace"
msgstr "Ir a Web Marketplace"
@@ -2425,7 +2578,9 @@ msgctxt "@title:tab"
msgid "Plugins"
msgstr "Complementos"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxHeader.qml:44 /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:466 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:89
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxHeader.qml:44
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:457
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:89
msgctxt "@title:tab"
msgid "Materials"
msgstr "Materiales"
@@ -2470,7 +2625,10 @@ msgctxt "@button"
msgid "Dismiss"
msgstr "Descartar"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/dialogs/CompatibilityDialog.qml:23 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:123 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/FirstStartMachineActionsContent.qml:77
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/dialogs/CompatibilityDialog.qml:23
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:123
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/FirstStartMachineActionsContent.qml:77
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:178
msgctxt "@button"
msgid "Next"
msgstr "Siguiente"
@@ -2535,7 +2693,8 @@ msgctxt "@label"
msgid "Last updated"
msgstr "Última actualización"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:103 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:138
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:103
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:138
msgctxt "@label"
msgid "Brand"
msgstr "Marca"
@@ -2665,7 +2824,10 @@ msgctxt "@action:button"
msgid "Edit"
msgstr "Editar"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:88 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:55 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:156 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:138
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:88
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:55
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:156
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:138
msgctxt "@action:button"
msgid "Remove"
msgstr "Eliminar"
@@ -2680,17 +2842,20 @@ msgctxt "@label"
msgid "If your printer is not listed, read the network printing troubleshooting guide"
msgstr "Si la impresora no aparece en la lista, lea la guía de solución de problemas de impresión y red"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:205 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:263
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:205
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:263
msgctxt "@label"
msgid "Type"
msgstr "Tipo"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:225 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:279
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:225
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:279
msgctxt "@label"
msgid "Firmware version"
msgstr "Versión de firmware"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:239 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:295
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:239
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:295
msgctxt "@label"
msgid "Address"
msgstr "Dirección"
@@ -2720,7 +2885,8 @@ msgctxt "@title:window"
msgid "Invalid IP address"
msgstr "Dirección IP no válida"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:297 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:146
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:297
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:146
msgctxt "@text"
msgid "Please enter a valid IP address."
msgstr "Introduzca una dirección IP válida."
@@ -2730,7 +2896,8 @@ msgctxt "@title:window"
msgid "Printer Address"
msgstr "Dirección de la impresora"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:331 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:102
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:331
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:102
msgctxt "@label"
msgid "Enter the IP address of your printer on the network."
msgstr "Introduzca la dirección IP de la impresora en la red."
@@ -2782,7 +2949,9 @@ msgctxt "@label"
msgid "Override will use the specified settings with the existing printer configuration. This may result in a failed print."
msgstr "Al sobrescribir la configuración se usarán los ajustes especificados con la configuración de impresora existente. Esto podría provocar un fallo en la impresión."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:153 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:191 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:184
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:153
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:191
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:184
msgctxt "@label"
msgid "Glass"
msgstr "Vidrio"
@@ -2802,7 +2971,8 @@ msgctxt "@label"
msgid "Delete"
msgstr "Borrar"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:100 /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:289
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:100
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:290
msgctxt "@label"
msgid "Resume"
msgstr "Reanudar"
@@ -2817,7 +2987,9 @@ msgctxt "@label"
msgid "Resuming..."
msgstr "Reanudando..."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:106 /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:284 /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:293
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:106
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:285
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:294
msgctxt "@label"
msgid "Pause"
msgstr "Pausar"
@@ -2857,7 +3029,8 @@ msgctxt "@label %1 is the name of a print job."
msgid "Are you sure you want to abort %1?"
msgstr "¿Seguro que desea cancelar %1?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:164 /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:335
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:164
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:336
msgctxt "@window:title"
msgid "Abort print"
msgstr "Cancela la impresión"
@@ -2867,7 +3040,9 @@ msgctxt "@label link to Connect and Cloud interfaces"
msgid "Manage printer"
msgstr "Administrar impresora"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:254 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:519 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:250
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:254
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:523
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:250
msgctxt "@info"
msgid "Please update your printer's firmware to manage the queue remotely."
msgstr "Actualice el firmware de la impresora para gestionar la cola de forma remota."
@@ -2892,27 +3067,34 @@ msgctxt "@label:status"
msgid "Idle"
msgstr "Sin actividad"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:365
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:364
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:84
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:86
+msgctxt "@label:status"
+msgid "Preparing..."
+msgstr "Preparando..."
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:369
msgctxt "@label:status"
msgid "Printing"
msgstr "Imprimiendo"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:406
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:410
msgctxt "@label"
msgid "Untitled"
msgstr "Sin título"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:427
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:431
msgctxt "@label"
msgid "Anonymous"
msgstr "Anónimo"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:454
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:458
msgctxt "@label:status"
msgid "Requires configuration changes"
msgstr "Debe cambiar la configuración"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:492
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:496
msgctxt "@action:button"
msgid "Details"
msgstr "Detalles"
@@ -2927,21 +3109,18 @@ msgctxt "@label"
msgid "First available"
msgstr "Primera disponible"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:78 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:90
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:78
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:90
msgctxt "@label:status"
msgid "Aborted"
msgstr "Cancelado"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:80 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:82
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:80
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:82
msgctxt "@label:status"
msgid "Finished"
msgstr "Terminado"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:84 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:86
-msgctxt "@label:status"
-msgid "Preparing..."
-msgstr "Preparando..."
-
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:88
msgctxt "@label:status"
msgid "Aborting..."
@@ -3022,26 +3201,27 @@ msgctxt "@action:button"
msgid "Sign in"
msgstr "Iniciar sesión"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:40
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:20
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:64
msgctxt "@label"
-msgid "Your key to connected 3D printing"
-msgstr "Su clave para una impresión 3D conectada"
+msgid "Sign in to the Ultimaker platform"
+msgstr "Inicie sesión en la plataforma Ultimaker"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:51
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:42
msgctxt "@text"
msgid ""
-"- Customize your experience with more print profiles and plugins\n"
-"- Stay flexible by syncing your setup and loading it anywhere\n"
-"- Increase efficiency with a remote workflow on Ultimaker printers"
+"- Add material profiles and plug-ins from the Marketplace\n"
+"- Back-up and sync your material profiles and plug-ins\n"
+"- Share ideas and get help from 48,000+ users in the Ultimaker community"
msgstr ""
-"- Personalice su experiencia con más perfiles de impresión y complementos\n"
-"- Consiga más flexibilidad sincronizando su configuración y cargándola en cualquier lugar\n"
-"- Aumente la eficiencia con un flujo de trabajo remoto en las impresoras Ultimaker"
+"- Añada perfiles de materiales y complementos del Marketplace \n"
+"- Realice copias de seguridad y sincronice los perfiles y complementos de sus materiales \n"
+"- Comparta ideas y obtenga ayuda de más de 48 000 usuarios de la comunidad Ultimaker"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:78 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:142
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:62
msgctxt "@button"
-msgid "Create account"
-msgstr "Crear cuenta"
+msgid "Create a free Ultimaker account"
+msgstr "Cree una cuenta gratuita de Ultimaker"
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/SyncState.qml:28
msgctxt "@label"
@@ -3148,303 +3328,308 @@ msgctxt "@button"
msgid "Cancel"
msgstr "Cancelar"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:82
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:83
msgctxt "@action:inmenu"
msgid "Show Online Troubleshooting Guide"
msgstr "Mostrar Guía de resolución de problemas en línea"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:89
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:90
msgctxt "@action:inmenu"
msgid "Toggle Full Screen"
msgstr "Alternar pantalla completa"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:97
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:98
msgctxt "@action:inmenu"
msgid "Exit Full Screen"
msgstr "Salir de modo de pantalla completa"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:104
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:105
msgctxt "@action:inmenu menubar:edit"
msgid "&Undo"
msgstr "Des&hacer"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:114
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:115
msgctxt "@action:inmenu menubar:edit"
msgid "&Redo"
msgstr "&Rehacer"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:124
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:125
msgctxt "@action:inmenu menubar:file"
msgid "&Quit"
msgstr "&Salir"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:132
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:133
msgctxt "@action:inmenu menubar:view"
msgid "3D View"
msgstr "Vista en 3D"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:139
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:140
msgctxt "@action:inmenu menubar:view"
msgid "Front View"
msgstr "Vista frontal"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:146
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:147
msgctxt "@action:inmenu menubar:view"
msgid "Top View"
msgstr "Vista superior"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:153
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:154
+msgctxt "@action:inmenu menubar:view"
+msgid "Bottom View"
+msgstr "Vista inferior"
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:161
msgctxt "@action:inmenu menubar:view"
msgid "Left Side View"
msgstr "Vista del lado izquierdo"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:160
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:168
msgctxt "@action:inmenu menubar:view"
msgid "Right Side View"
msgstr "Vista del lado derecho"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:167
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:175
msgctxt "@action:inmenu"
msgid "Configure Cura..."
msgstr "Configurar Cura..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:174
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:182
msgctxt "@action:inmenu menubar:printer"
msgid "&Add Printer..."
msgstr "&Agregar impresora..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:180
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:188
msgctxt "@action:inmenu menubar:printer"
msgid "Manage Pr&inters..."
msgstr "Adm&inistrar impresoras ..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:187
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:195
msgctxt "@action:inmenu"
msgid "Manage Materials..."
msgstr "Administrar materiales..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:195
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:203
msgctxt "@action:inmenu"
msgid "Add more materials from Marketplace"
msgstr "Añadir más materiales de Marketplace"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:202
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:210
msgctxt "@action:inmenu menubar:profile"
msgid "&Update profile with current settings/overrides"
msgstr "&Actualizar perfil con ajustes o sobrescrituras actuales"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:210
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:218
msgctxt "@action:inmenu menubar:profile"
msgid "&Discard current changes"
msgstr "&Descartar cambios actuales"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:222
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:230
msgctxt "@action:inmenu menubar:profile"
msgid "&Create profile from current settings/overrides..."
msgstr "&Crear perfil a partir de ajustes o sobrescrituras actuales..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:228
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:236
msgctxt "@action:inmenu menubar:profile"
msgid "Manage Profiles..."
msgstr "Administrar perfiles..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:236
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:244
msgctxt "@action:inmenu menubar:help"
msgid "Show Online &Documentation"
msgstr "Mostrar &documentación en línea"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:244
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:252
msgctxt "@action:inmenu menubar:help"
msgid "Report a &Bug"
msgstr "Informar de un &error"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:252
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:260
msgctxt "@action:inmenu menubar:help"
msgid "What's New"
msgstr "Novedades"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:258
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:266
msgctxt "@action:inmenu menubar:help"
msgid "About..."
msgstr "Acerca de..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:265
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:273
msgctxt "@action:inmenu menubar:edit"
-msgid "Delete Selected Model"
-msgid_plural "Delete Selected Models"
-msgstr[0] "Eliminar modelo seleccionado"
-msgstr[1] "Eliminar modelos seleccionados"
+msgid "Delete Selected"
+msgstr "Eliminar selección"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:275
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:283
msgctxt "@action:inmenu menubar:edit"
-msgid "Center Selected Model"
-msgid_plural "Center Selected Models"
-msgstr[0] "Centrar modelo seleccionado"
-msgstr[1] "Centrar modelos seleccionados"
+msgid "Center Selected"
+msgstr "Centrar selección"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:284
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:292
msgctxt "@action:inmenu menubar:edit"
-msgid "Multiply Selected Model"
-msgid_plural "Multiply Selected Models"
-msgstr[0] "Multiplicar modelo seleccionado"
-msgstr[1] "Multiplicar modelos seleccionados"
+msgid "Multiply Selected"
+msgstr "Multiplicar selección"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:293
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:301
msgctxt "@action:inmenu"
msgid "Delete Model"
msgstr "Eliminar modelo"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:301
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:309
msgctxt "@action:inmenu"
msgid "Ce&nter Model on Platform"
msgstr "Ce&ntrar modelo en plataforma"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:307
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:315
msgctxt "@action:inmenu menubar:edit"
msgid "&Group Models"
msgstr "A&grupar modelos"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:327
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:335
msgctxt "@action:inmenu menubar:edit"
msgid "Ungroup Models"
msgstr "Desagrupar modelos"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:337
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:345
msgctxt "@action:inmenu menubar:edit"
msgid "&Merge Models"
msgstr "Co&mbinar modelos"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:347
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:355
msgctxt "@action:inmenu"
msgid "&Multiply Model..."
msgstr "&Multiplicar modelo..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:354
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:362
msgctxt "@action:inmenu menubar:edit"
msgid "Select All Models"
msgstr "Seleccionar todos los modelos"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:364
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:372
msgctxt "@action:inmenu menubar:edit"
msgid "Clear Build Plate"
msgstr "Borrar placa de impresión"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:374
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:382
msgctxt "@action:inmenu menubar:file"
msgid "Reload All Models"
msgstr "Recargar todos los modelos"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:383
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:391
msgctxt "@action:inmenu menubar:edit"
msgid "Arrange All Models To All Build Plates"
msgstr "Organizar todos los modelos en todas las placas de impresión"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:390
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:398
msgctxt "@action:inmenu menubar:edit"
msgid "Arrange All Models"
msgstr "Organizar todos los modelos"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:398
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:406
msgctxt "@action:inmenu menubar:edit"
msgid "Arrange Selection"
msgstr "Organizar selección"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:405
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:413
msgctxt "@action:inmenu menubar:edit"
msgid "Reset All Model Positions"
msgstr "Restablecer las posiciones de todos los modelos"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:412
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:420
msgctxt "@action:inmenu menubar:edit"
msgid "Reset All Model Transformations"
msgstr "Restablecer las transformaciones de todos los modelos"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:419
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:429
msgctxt "@action:inmenu menubar:file"
msgid "&Open File(s)..."
msgstr "&Abrir archivo(s)..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:427
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:439
msgctxt "@action:inmenu menubar:file"
msgid "&New Project..."
msgstr "&Nuevo proyecto..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:434
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:446
msgctxt "@action:inmenu menubar:help"
msgid "Show Configuration Folder"
msgstr "Mostrar carpeta de configuración"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:441 /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:538
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:453
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:550
msgctxt "@action:menu"
msgid "Configure setting visibility..."
msgstr "Configurar visibilidad de los ajustes..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:448
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:460
msgctxt "@action:menu"
msgid "&Marketplace"
msgstr "&Marketplace"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:266
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:257
msgctxt "@label"
msgid "This package will be installed after restarting."
msgstr "Este paquete se instalará después de reiniciar."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:459 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:15
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:450
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:17
msgctxt "@title:tab"
msgid "General"
msgstr "General"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:462
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:453
msgctxt "@title:tab"
msgid "Settings"
msgstr "Ajustes"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:464 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:16
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:455
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:16
msgctxt "@title:tab"
msgid "Printers"
msgstr "Impresoras"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:468 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:34
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:459
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:34
msgctxt "@title:tab"
msgid "Profiles"
msgstr "Perfiles"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:587
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:576
msgctxt "@title:window %1 is the application name"
msgid "Closing %1"
msgstr "Cerrando %1"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:588 /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:600
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:577
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:589
msgctxt "@label %1 is the application name"
msgid "Are you sure you want to exit %1?"
msgstr "¿Seguro que desea salir de %1?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:638 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:19
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:627
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:19
msgctxt "@title:window"
msgid "Open file(s)"
msgstr "Abrir archivo(s)"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:744
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:737
msgctxt "@window:title"
msgid "Install Package"
msgstr "Instalar paquete"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:752
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:745
msgctxt "@title:window"
msgid "Open File(s)"
msgstr "Abrir archivo(s)"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:755
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:748
msgctxt "@text:window"
msgid "We have found one or more G-Code files within the files you have selected. You can only open one G-Code file at a time. If you want to open a G-Code file, please just select only one."
msgstr "Hemos encontrado uno o más archivos de GCode entre los archivos que ha seleccionado. Solo puede abrir los archivos GCode de uno en uno. Si desea abrir un archivo GCode, seleccione solo uno."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:858
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:857
msgctxt "@title:window"
msgid "Add Printer"
msgstr "Agregar impresora"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:866
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:865
msgctxt "@title:window"
msgid "What's New"
msgstr "Novedades"
@@ -3573,7 +3758,8 @@ msgctxt "@Label"
msgid "Static type checker for Python"
msgstr "Comprobador de tipo estático para Python"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:156 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:157
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:156
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:157
msgctxt "@Label"
msgid "Root Certificates for validating SSL trustworthiness"
msgstr "Certificados de raíz para validar la fiabilidad del SSL"
@@ -3593,17 +3779,27 @@ msgctxt "@label"
msgid "Python bindings for libnest2d"
msgstr "Enlaces de Python para libnest2d"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:161
+msgctxt "@label"
+msgid "Support library for system keyring access"
+msgstr "Biblioteca de soporte para el acceso al llavero del sistema"
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:162
msgctxt "@label"
+msgid "Python extensions for Microsoft Windows"
+msgstr "Extensiones Python para Microsoft Windows"
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:163
+msgctxt "@label"
msgid "Font"
msgstr "Fuente"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:163
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:164
msgctxt "@label"
msgid "SVG icons"
msgstr "Iconos SVG"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:164
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:165
msgctxt "@label"
msgid "Linux cross-distribution application deployment"
msgstr "Implementación de la aplicación de distribución múltiple de Linux"
@@ -3613,22 +3809,22 @@ msgctxt "@title:window"
msgid "Open project file"
msgstr "Abrir archivo de proyecto"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:93
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:88
msgctxt "@text:window"
msgid "This is a Cura project file. Would you like to open it as a project or import the models from it?"
msgstr "Este es un archivo de proyecto Cura. ¿Le gustaría abrirlo como un proyecto o importar sus modelos?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:103
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:98
msgctxt "@text:window"
msgid "Remember my choice"
msgstr "Recordar mi selección"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:122
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:117
msgctxt "@action:button"
msgid "Open as project"
msgstr "Abrir como proyecto"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:131
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:126
msgctxt "@action:button"
msgid "Import models"
msgstr "Importar modelos"
@@ -3659,7 +3855,8 @@ msgctxt "@title:column"
msgid "Current changes"
msgstr "Cambios actuales"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:158 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:747
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:158
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:733
msgctxt "@option:discardOrKeep"
msgid "Always ask me this"
msgstr "Preguntar siempre"
@@ -3684,12 +3881,12 @@ msgctxt "@action:button"
msgid "Keep changes"
msgstr "Mantener los cambios"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:64
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:59
msgctxt "@text:window"
msgid "We have found one or more project file(s) within the files you have selected. You can open only one project file at a time. We suggest to only import models from those files. Would you like to proceed?"
msgstr "Hemos encontrado uno o más archivos del proyecto entre los archivos que ha seleccionado. Solo puede abrir los archivos de proyecto de uno en uno. Le recomendamos que solo importe modelos de esos archivos. ¿Desea continuar?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:99
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:94
msgctxt "@action:button"
msgid "Import all as models"
msgstr "Importar todos como modelos"
@@ -3736,7 +3933,8 @@ msgctxt "@text Print job name"
msgid "Untitled"
msgstr "Sin título"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MainWindow/ApplicationMenu.qml:27 /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:13
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MainWindow/ApplicationMenu.qml:27
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:13
msgctxt "@title:menu menubar:toplevel"
msgid "&File"
msgstr "&Archivo"
@@ -3746,12 +3944,14 @@ msgctxt "@title:menu menubar:toplevel"
msgid "&Edit"
msgstr "&Edición"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MainWindow/ApplicationMenu.qml:49 /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:12
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MainWindow/ApplicationMenu.qml:49
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:12
msgctxt "@title:menu menubar:toplevel"
msgid "&View"
msgstr "&Ver"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MainWindow/ApplicationMenu.qml:51 /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingsMenu.qml:13
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MainWindow/ApplicationMenu.qml:51
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingsMenu.qml:13
msgctxt "@title:menu menubar:toplevel"
msgid "&Settings"
msgstr "A&justes"
@@ -3841,7 +4041,7 @@ msgctxt "@label"
msgid "Material"
msgstr "Material"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/CustomConfiguration.qml:394
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/CustomConfiguration.qml:407
msgctxt "@label"
msgid "Use glue for better adhesion with this material combination."
msgstr "Utilice pegamento con esta combinación de materiales para lograr una mejor adhesión."
@@ -3865,17 +4065,17 @@ msgctxt "@label"
msgid "Number of Copies"
msgstr "Número de copias"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:33
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:41
msgctxt "@title:menu menubar:file"
msgid "&Save Project..."
msgstr "&Guardar proyecto..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:54
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:74
msgctxt "@title:menu menubar:file"
msgid "&Export..."
msgstr "&Exportar..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:65
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:85
msgctxt "@action:inmenu menubar:file"
msgid "Export Selection..."
msgstr "Exportar selección..."
@@ -3895,6 +4095,11 @@ msgctxt "@label:category menu label"
msgid "Generic"
msgstr "Genérico"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/OpenFilesMenu.qml:15
+msgctxt "@title:menu menubar:file"
+msgid "Open File(s)..."
+msgstr "Abrir archivo(s)..."
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/PrinterMenu.qml:25
msgctxt "@label:category menu label"
msgid "Network enabled printers"
@@ -3910,6 +4115,11 @@ msgctxt "@title:menu menubar:file"
msgid "Open &Recent"
msgstr "Abrir &reciente"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SaveProjectMenu.qml:15
+msgctxt "@title:menu menubar:file"
+msgid "Save Project..."
+msgstr "Guardar proyecto..."
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingsMenu.qml:15
msgctxt "@title:menu menubar:settings"
msgid "&Printer"
@@ -3935,17 +4145,17 @@ msgctxt "@action:inmenu"
msgid "Disable Extruder"
msgstr "Deshabilitar extrusor"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:13
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:16
msgctxt "@action:inmenu"
msgid "Visible Settings"
msgstr "Ajustes visibles"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:42
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:45
msgctxt "@action:inmenu"
msgid "Collapse All Categories"
msgstr "Contraer todas las categorías"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:51
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:54
msgctxt "@action:inmenu"
msgid "Manage Setting Visibility..."
msgstr "Gestionar visibilidad de los ajustes..."
@@ -3955,22 +4165,22 @@ msgctxt "@action:inmenu menubar:view"
msgid "&Camera position"
msgstr "&Posición de la cámara"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:44
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:45
msgctxt "@action:inmenu menubar:view"
msgid "Camera view"
msgstr "Vista de cámara"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:47
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:48
msgctxt "@action:inmenu menubar:view"
msgid "Perspective"
msgstr "Perspectiva"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:59
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:60
msgctxt "@action:inmenu menubar:view"
msgid "Orthographic"
msgstr "Ortográfica"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:80
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:81
msgctxt "@action:inmenu menubar:view"
msgid "&Build plate"
msgstr "P&laca de impresión"
@@ -4015,12 +4225,12 @@ msgctxt "@label:MonitorStatus"
msgid "Please remove the print"
msgstr "Retire la impresión"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:325
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:326
msgctxt "@label"
msgid "Abort Print"
msgstr "Cancelar impresión"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:337
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:338
msgctxt "@label"
msgid "Are you sure you want to abort the print?"
msgstr "¿Está seguro de que desea cancelar la impresión?"
@@ -4062,310 +4272,314 @@ msgctxt "@label"
msgid "Interface"
msgstr "Interfaz"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:216
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:209
msgctxt "@label"
msgid "Currency:"
msgstr "Moneda:"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:229
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:222
msgctxt "@label"
msgid "Theme:"
msgstr "Tema:"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:285
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:267
msgctxt "@label"
msgid "You will need to restart the application for these changes to have effect."
msgstr "Tendrá que reiniciar la aplicación para que estos cambios tengan efecto."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:302
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:284
msgctxt "@info:tooltip"
msgid "Slice automatically when changing settings."
msgstr "Segmentar automáticamente al cambiar los ajustes."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:310
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:292
msgctxt "@option:check"
msgid "Slice automatically"
msgstr "Segmentar automáticamente"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:324
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:306
msgctxt "@label"
msgid "Viewport behavior"
msgstr "Comportamiento de la ventanilla"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:332
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:314
msgctxt "@info:tooltip"
msgid "Highlight unsupported areas of the model in red. Without support these areas will not print properly."
msgstr "Resaltar en rojo las áreas del modelo sin soporte. Sin soporte, estas áreas no se imprimirán correctamente."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:341
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:323
msgctxt "@option:check"
msgid "Display overhang"
msgstr "Mostrar voladizos"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:351
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:333
msgctxt "@info:tooltip"
msgid "Highlight missing or extraneous surfaces of the model using warning signs. The toolpaths will often be missing parts of the intended geometry."
msgstr "Resalta las superficies que faltan o son extrañas del modelo usando señales de advertencia. A las trayectorias de herramientas les faltarán a menudo partes de la geometría prevista."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:360
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:342
msgctxt "@option:check"
msgid "Display model errors"
msgstr "Mostrar errores de modelo"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:368
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:350
msgctxt "@info:tooltip"
msgid "Moves the camera so the model is in the center of the view when a model is selected"
msgstr "Mueve la cámara de manera que el modelo se encuentre en el centro de la vista cuando se selecciona un modelo"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:373
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:355
msgctxt "@action:button"
msgid "Center camera when item is selected"
msgstr "Centrar cámara cuando se selecciona elemento"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:383
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:365
msgctxt "@info:tooltip"
msgid "Should the default zoom behavior of cura be inverted?"
msgstr "¿Se debería invertir el comportamiento predeterminado del zoom de cura?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:388
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:370
msgctxt "@action:button"
msgid "Invert the direction of camera zoom."
msgstr "Invertir la dirección del zoom de la cámara."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:404
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:386
msgctxt "@info:tooltip"
msgid "Should zooming move in the direction of the mouse?"
msgstr "¿Debería moverse el zoom en la dirección del ratón?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:404
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:386
msgctxt "@info:tooltip"
msgid "Zooming towards the mouse is not supported in the orthographic perspective."
msgstr "Hacer zoom en la dirección del ratón no es compatible con la perspectiva ortográfica."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:409
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:391
msgctxt "@action:button"
msgid "Zoom toward mouse direction"
msgstr "Hacer zoom en la dirección del ratón"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:435
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:417
msgctxt "@info:tooltip"
msgid "Should models on the platform be moved so that they no longer intersect?"
msgstr "¿Deben moverse los modelos en la plataforma de modo que no se crucen?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:440
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:422
msgctxt "@option:check"
msgid "Ensure models are kept apart"
msgstr "Asegúrese de que los modelos están separados"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:449
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:431
msgctxt "@info:tooltip"
msgid "Should models on the platform be moved down to touch the build plate?"
msgstr "¿Deben moverse los modelos del área de impresión de modo que no toquen la placa de impresión?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:454
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:436
msgctxt "@option:check"
msgid "Automatically drop models to the build plate"
msgstr "Arrastrar modelos a la placa de impresión de forma automática"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:466
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:448
msgctxt "@info:tooltip"
msgid "Show caution message in g-code reader."
msgstr "Se muestra el mensaje de advertencia en el lector de GCode."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:475
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:457
msgctxt "@option:check"
msgid "Caution message in g-code reader"
msgstr "Mensaje de advertencia en el lector de GCode"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:483
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:465
msgctxt "@info:tooltip"
msgid "Should layer be forced into compatibility mode?"
msgstr "¿Debe forzarse el modo de compatibilidad de la capa?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:488
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:470
msgctxt "@option:check"
msgid "Force layer view compatibility mode (restart required)"
msgstr "Forzar modo de compatibilidad de la vista de capas (necesario reiniciar)"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:498
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:480
msgctxt "@info:tooltip"
msgid "Should Cura open at the location it was closed?"
msgstr "¿Debería abrirse Cura en el lugar donde se cerró?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:503
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:485
msgctxt "@option:check"
msgid "Restore window position on start"
msgstr "Restaurar la posición de la ventana al inicio"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:513
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:495
msgctxt "@info:tooltip"
msgid "What type of camera rendering should be used?"
msgstr "¿Qué tipo de renderizado de cámara debería usarse?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:520
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:502
msgctxt "@window:text"
msgid "Camera rendering:"
msgstr "Renderizado de cámara:"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:531
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:509
msgid "Perspective"
msgstr "Perspectiva"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:532
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:510
msgid "Orthographic"
msgstr "Ortográfica"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:563
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:548
msgctxt "@label"
msgid "Opening and saving files"
msgstr "Abrir y guardar archivos"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:570
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:555
msgctxt "@info:tooltip"
msgid "Should opening files from the desktop or external applications open in the same instance of Cura?"
msgstr "¿Debería abrir los archivos del escritorio o las aplicaciones externas en la misma instancia de Cura?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:575
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:560
msgctxt "@option:check"
msgid "Use a single instance of Cura"
msgstr "Utilizar una sola instancia de Cura"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:585
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:570
msgctxt "@info:tooltip"
msgid "Should models be scaled to the build volume if they are too large?"
msgstr "¿Deben ajustarse los modelos al volumen de impresión si son demasiado grandes?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:590
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:575
msgctxt "@option:check"
msgid "Scale large models"
msgstr "Escalar modelos de gran tamaño"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:600
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:585
msgctxt "@info:tooltip"
msgid "An model may appear extremely small if its unit is for example in meters rather than millimeters. Should these models be scaled up?"
msgstr "Un modelo puede mostrarse demasiado pequeño si su unidad son metros en lugar de milímetros, por ejemplo. ¿Deben escalarse estos modelos?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:605
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:590
msgctxt "@option:check"
msgid "Scale extremely small models"
msgstr "Escalar modelos demasiado pequeños"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:615
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:600
msgctxt "@info:tooltip"
msgid "Should models be selected after they are loaded?"
msgstr "¿Se deberían seleccionar los modelos después de haberse cargado?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:620
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:605
msgctxt "@option:check"
msgid "Select models when loaded"
msgstr "Seleccionar modelos al abrirlos"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:630
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:615
msgctxt "@info:tooltip"
msgid "Should a prefix based on the printer name be added to the print job name automatically?"
msgstr "¿Debe añadirse automáticamente un prefijo basado en el nombre de la impresora al nombre del trabajo de impresión?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:635
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:620
msgctxt "@option:check"
msgid "Add machine prefix to job name"
msgstr "Agregar prefijo de la máquina al nombre del trabajo"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:645
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:630
msgctxt "@info:tooltip"
msgid "Should a summary be shown when saving a project file?"
msgstr "¿Mostrar un resumen al guardar un archivo de proyecto?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:649
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:634
msgctxt "@option:check"
msgid "Show summary dialog when saving project"
msgstr "Mostrar un cuadro de diálogo de resumen al guardar el proyecto"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:659
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:644
msgctxt "@info:tooltip"
msgid "Default behavior when opening a project file"
msgstr "Comportamiento predeterminado al abrir un archivo del proyecto"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:667
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:652
msgctxt "@window:text"
msgid "Default behavior when opening a project file: "
msgstr "Comportamiento predeterminado al abrir un archivo del proyecto: "
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:681
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:666
msgctxt "@option:openProject"
msgid "Always ask me this"
msgstr "Preguntar siempre"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:682
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:667
msgctxt "@option:openProject"
msgid "Always open as a project"
msgstr "Abrir siempre como un proyecto"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:683
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:668
msgctxt "@option:openProject"
msgid "Always import models"
msgstr "Importar modelos siempre"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:719
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:705
msgctxt "@info:tooltip"
msgid "When you have made changes to a profile and switched to a different one, a dialog will be shown asking whether you want to keep your modifications or not, or you can choose a default behaviour and never show that dialog again."
msgstr "Si ha realizado cambios en un perfil y, a continuación, ha cambiado a otro, aparecerá un cuadro de diálogo que le preguntará si desea guardar o descartar los cambios. También puede elegir el comportamiento predeterminado, así ese cuadro de diálogo no volverá a aparecer."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:728 /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedQualityProfileSelector.qml:52
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:714
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedQualityProfileSelector.qml:52
msgctxt "@label"
msgid "Profiles"
msgstr "Perfiles"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:733
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:719
msgctxt "@window:text"
msgid "Default behavior for changed setting values when switching to a different profile: "
msgstr "Comportamiento predeterminado para los valores modificados al cambiar a otro perfil: "
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:748
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:734
msgctxt "@option:discardOrKeep"
msgid "Always discard changed settings"
msgstr "Descartar siempre los ajustes modificados"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:749
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:735
msgctxt "@option:discardOrKeep"
msgid "Always transfer changed settings to new profile"
msgstr "Transferir siempre los ajustes modificados al nuevo perfil"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:783
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:770
msgctxt "@label"
msgid "Privacy"
msgstr "Privacidad"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:790
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:777
msgctxt "@info:tooltip"
msgid "Should Cura check for updates when the program is started?"
msgstr "¿Debe Cura buscar actualizaciones cuando se abre el programa?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:795
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:782
msgctxt "@option:check"
msgid "Check for updates on start"
msgstr "Buscar actualizaciones al iniciar"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:805
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:792
msgctxt "@info:tooltip"
msgid "Should anonymous data about your print be sent to Ultimaker? Note, no models, IP addresses or other personally identifiable information is sent or stored."
msgstr "¿Deben enviarse datos anónimos sobre la impresión a Ultimaker? Tenga en cuenta que no se envían ni almacenan modelos, direcciones IP ni otra información de identificación personal."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:810
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:797
msgctxt "@option:check"
msgid "Send (anonymous) print information"
msgstr "Enviar información (anónima) de impresión"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:819
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:806
msgctxt "@action:button"
msgid "More information"
msgstr "Más información"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:40 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:108 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:84
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:40
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:108
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:84
msgctxt "@action:button"
msgid "Activate"
msgstr "Activar"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:63 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:152
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:63
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:152
msgctxt "@action:button"
msgid "Rename"
msgstr "Cambiar nombre"
@@ -4380,61 +4594,77 @@ msgctxt "@action:button"
msgid "Duplicate"
msgstr "Duplicado"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:171 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:167
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:171
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:167
msgctxt "@action:button"
msgid "Import"
msgstr "Importar"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:185 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:179
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:185
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:179
msgctxt "@action:button"
msgid "Export"
msgstr "Exportar"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:234
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:199
+msgctxt "@action:button Sending materials to printers"
+msgid "Sync with Printers"
+msgstr "Sincronizar con las impresoras"
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:248
msgctxt "@action:label"
msgid "Printer"
msgstr "Impresora"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:298 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:274
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:312
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:277
msgctxt "@title:window"
msgid "Confirm Remove"
msgstr "Confirmar eliminación"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:301 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:275
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:315
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:278
msgctxt "@label (%1 is object name)"
msgid "Are you sure you wish to remove %1? This cannot be undone!"
msgstr "¿Seguro que desea eliminar %1? ¡Esta acción no se puede deshacer!"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:315 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:323
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:329
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:337
msgctxt "@title:window"
msgid "Import Material"
msgstr "Importar material"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:324
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:338
msgctxt "@info:status Don't translate the XML tags or !"
msgid "Could not import material %1: %2"
msgstr "No se pudo importar el material en %1: %2"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:328
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:342
msgctxt "@info:status Don't translate the XML tag !"
msgid "Successfully imported material %1"
msgstr "El material se ha importado correctamente en %1"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:346 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:354
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:360
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:368
msgctxt "@title:window"
msgid "Export Material"
msgstr "Exportar material"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:358
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:372
msgctxt "@info:status Don't translate the XML tags and !"
msgid "Failed to export material to %1: %2"
msgstr "Se ha producido un error al exportar el material a %1: %2"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:364
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:378
msgctxt "@info:status Don't translate the XML tag !"
msgid "Successfully exported material to %1"
msgstr "El material se ha exportado correctamente a %1"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:388
+msgctxt "@title:window"
+msgid "Export All Materials"
+msgstr "Exportar todos los materiales"
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:72
msgctxt "@title"
msgid "Information"
@@ -4520,7 +4750,8 @@ msgctxt "@label"
msgid "Adhesion Information"
msgstr "Información sobre adherencia"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:374 /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/PrintSetupSelector.qml:19
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:374
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/PrintSetupSelector.qml:19
msgctxt "@label"
msgid "Print settings"
msgstr "Ajustes de impresión"
@@ -4545,52 +4776,53 @@ msgctxt "@info"
msgid "Please provide a name for this profile."
msgstr "Introduzca un nombre para este perfil."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:260
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:263
msgctxt "@title:window"
msgid "Duplicate Profile"
msgstr "Duplicar perfil"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:291
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:294
msgctxt "@title:window"
msgid "Rename Profile"
msgstr "Cambiar nombre de perfil"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:304
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:307
msgctxt "@title:window"
msgid "Import Profile"
msgstr "Importar perfil"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:333
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:336
msgctxt "@title:window"
msgid "Export Profile"
msgstr "Exportar perfil"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:396
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:399
msgctxt "@label %1 is printer name"
msgid "Printer: %1"
msgstr "Impresora: %1"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:554
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:557
msgctxt "@action:button"
msgid "Update profile with current settings/overrides"
msgstr "Actualizar perfil con ajustes o sobrescrituras actuales"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:561 /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Custom/QualitiesWithIntentMenu.qml:244
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:564
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Custom/QualitiesWithIntentMenu.qml:244
msgctxt "@action:button"
msgid "Discard current changes"
msgstr "Descartar cambios actuales"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:580
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:583
msgctxt "@action:label"
msgid "This profile uses the defaults specified by the printer, so it has no settings/overrides in the list below."
msgstr "Este perfil utiliza los ajustes predeterminados especificados por la impresora, por eso no aparece ningún ajuste o sobrescritura en la lista que se ve a continuación."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:588
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:591
msgctxt "@action:label"
msgid "Your current settings match the selected profile."
msgstr "Los ajustes actuales coinciden con el perfil seleccionado."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:606
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:609
msgctxt "@title:tab"
msgid "Global Settings"
msgstr "Ajustes globales"
@@ -4620,12 +4852,12 @@ msgctxt "@title:column"
msgid "Unit"
msgstr "Unidad"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:14
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:16
msgctxt "@title:tab"
msgid "Setting Visibility"
msgstr "Visibilidad de los ajustes"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:46
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:48
msgctxt "@label:textbox"
msgid "Check all"
msgstr "Comprobar todo"
@@ -4650,12 +4882,14 @@ msgctxt "@tooltip of temperature input"
msgid "The temperature to pre-heat the hotend to."
msgstr "Temperatura a la que se va a precalentar el extremo caliente."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:341 /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:332
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:341
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:332
msgctxt "@button Cancel pre-heating"
msgid "Cancel"
msgstr "Cancelar"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:344 /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:335
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:344
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:335
msgctxt "@button"
msgid "Pre-heat"
msgstr "Precalentar"
@@ -4961,27 +5195,27 @@ msgctxt "@label:textbox"
msgid "Search settings"
msgstr "Buscar ajustes"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:456
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:468
msgctxt "@action:menu"
msgid "Copy value to all extruders"
msgstr "Copiar valor en todos los extrusores"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:465
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:477
msgctxt "@action:menu"
msgid "Copy all changed values to all extruders"
msgstr "Copiar todos los valores cambiados en todos los extrusores"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:502
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:514
msgctxt "@action:menu"
msgid "Hide this setting"
msgstr "Ocultar este ajuste"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:515
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:527
msgctxt "@action:menu"
msgid "Don't show this setting"
msgstr "No mostrar este ajuste"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:519
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:531
msgctxt "@action:menu"
msgid "Keep this setting visible"
msgstr "Mostrar este ajuste"
@@ -5041,11 +5275,6 @@ msgctxt "@button"
msgid "Add printer manually"
msgstr "Añadir impresora manualmente"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddCloudPrintersView.qml:218
-msgctxt "@button"
-msgid "Finish"
-msgstr "Finalizar"
-
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddLocalPrinterScrollView.qml:230
msgctxt "@label"
msgid "Manufacturer"
@@ -5126,7 +5355,8 @@ msgctxt "@label"
msgid "Could not connect to device."
msgstr "No se ha podido conectar al dispositivo."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:207 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:212
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:207
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:212
msgctxt "@label"
msgid "Can't connect to your Ultimaker printer?"
msgstr "¿No puede conectarse a la impresora Ultimaker?"
@@ -5151,32 +5381,32 @@ msgctxt "@button"
msgid "Connect"
msgstr "Conectar"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:43
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/ChangelogContent.qml:24
msgctxt "@label"
-msgid "Ultimaker Account"
-msgstr "Cuenta de Ultimaker"
+msgid "Release Notes"
+msgstr "Notas de la versión"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:84
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:124
msgctxt "@text"
-msgid "Your key to connected 3D printing"
-msgstr "Su clave para una impresión 3D conectada"
+msgid "Add material settings and plugins from the Marketplace"
+msgstr "Añada ajustes de material y complementos desde Marketplace"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:101
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:154
msgctxt "@text"
-msgid "- Customize your experience with more print profiles and plugins"
-msgstr "- Personalice su experiencia con más perfiles de impresión y complementos"
+msgid "Backup and sync your material settings and plugins"
+msgstr "Realice copias de seguridad y sincronice los ajustes y complementos de sus materiales"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:104
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:184
msgctxt "@text"
-msgid "- Stay flexible by syncing your setup and loading it anywhere"
-msgstr "- Consiga más flexibilidad sincronizando su configuración y cargándola en cualquier lugar"
+msgid "Share ideas and get help from 48,000+ users in the Ultimaker Community"
+msgstr "Comparta ideas y obtenga ayuda de más de 48 000 usuarios de la comunidad Ultimaker"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:107
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:217
msgctxt "@text"
-msgid "- Increase efficiency with a remote workflow on Ultimaker printers"
-msgstr "- Aumente la eficiencia con un flujo de trabajo remoto en las impresoras Ultimaker"
+msgid "Create a free Ultimaker Account"
+msgstr "Cree una cuenta gratuita de Ultimaker"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:157
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:230
msgctxt "@button"
msgid "Skip"
msgstr "Omitir"
@@ -5236,29 +5466,32 @@ msgctxt "@button"
msgid "Decline and close"
msgstr "Rechazar y cerrar"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:29
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:56
msgctxt "@label"
msgid "Welcome to Ultimaker Cura"
msgstr "Le damos la bienvenida a Ultimaker Cura"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:47
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:68
msgctxt "@text"
-msgid ""
-"Please follow these steps to set up\n"
-"Ultimaker Cura. This will only take a few moments."
+msgid "Please follow these steps to set up Ultimaker Cura. This will only take a few moments."
msgstr ""
"Siga estos pasos para configurar\n"
"Ultimaker Cura. Solo le llevará unos minutos."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:58
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:86
msgctxt "@button"
msgid "Get started"
msgstr "Empezar"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:24
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:28
msgctxt "@label"
-msgid "What's new in Ultimaker Cura"
-msgstr "Novedades en Ultimaker Cura"
+msgid "What's New"
+msgstr "Novedades"
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Widgets/ComboBox.qml:24
+msgctxt "@label"
+msgid "No items to select from"
+msgstr "No hay elementos para seleccionar"
#: ModelChecker/plugin.json
msgctxt "description"
@@ -5340,6 +5573,16 @@ msgctxt "name"
msgid "Cura Profile Writer"
msgstr "Escritor de perfiles de Cura"
+#: DigitalLibrary/plugin.json
+msgctxt "description"
+msgid "Connects to the Digital Library, allowing Cura to open files from and save files to the Digital Library."
+msgstr "Se conecta a la biblioteca digital, por lo que Cura puede abrir y guardar archivos en ella."
+
+#: DigitalLibrary/plugin.json
+msgctxt "name"
+msgid "Ultimaker Digital Library"
+msgstr "Ultimaker Digital Library"
+
#: FirmwareUpdateChecker/plugin.json
msgctxt "description"
msgid "Checks for firmware updates."
@@ -5810,6 +6053,26 @@ msgctxt "name"
msgid "Version Upgrade 4.7 to 4.8"
msgstr "Actualización de la versión 4.7 a la 4.8"
+#: VersionUpgrade/VersionUpgrade48to49/plugin.json
+msgctxt "description"
+msgid "Upgrades configurations from Cura 4.8 to Cura 4.9."
+msgstr "Actualiza la configuración de Cura 4.8 a Cura 4.9."
+
+#: VersionUpgrade/VersionUpgrade48to49/plugin.json
+msgctxt "name"
+msgid "Version Upgrade 4.8 to 4.9"
+msgstr "Actualización de la versión 4.8 a la 4.9"
+
+#: VersionUpgrade/VersionUpgrade49to410/plugin.json
+msgctxt "description"
+msgid "Upgrades configurations from Cura 4.9 to Cura 4.10."
+msgstr "Actualiza la configuración de Cura 4.9 a Cura 4.10."
+
+#: VersionUpgrade/VersionUpgrade49to410/plugin.json
+msgctxt "name"
+msgid "Version Upgrade 4.9 to 4.10"
+msgstr "Actualización de la versión 4.9 a la 4.10"
+
#: X3DReader/plugin.json
msgctxt "description"
msgid "Provides support for reading X3D files."
@@ -5840,6 +6103,94 @@ msgctxt "name"
msgid "X-Ray View"
msgstr "Vista de rayos X"
+#~ msgctxt "@info:status"
+#~ msgid "Global stack is missing."
+#~ msgstr "Falta la pila global."
+
+#~ msgctxt "@info:status"
+#~ msgid "Your model is not manifold. The highlighted areas indicate either missing or extraneous surfaces."
+#~ msgstr "Su modelo no es funcional. Las áreas resaltadas indican que faltan superficies o son extrañas."
+
+#~ msgctxt "@info:title"
+#~ msgid "Model errors"
+#~ msgstr "Errores de modelo"
+
+#~ msgctxt "@label:listbox"
+#~ msgid "Layer thickness"
+#~ msgstr "Grosor de la capa"
+
+#~ msgctxt "@label"
+#~ msgid "Your key to connected 3D printing"
+#~ msgstr "Su clave para una impresión 3D conectada"
+
+#~ msgctxt "@text"
+#~ msgid ""
+#~ "- Customize your experience with more print profiles and plugins\n"
+#~ "- Stay flexible by syncing your setup and loading it anywhere\n"
+#~ "- Increase efficiency with a remote workflow on Ultimaker printers"
+#~ msgstr ""
+#~ "- Personalice su experiencia con más perfiles de impresión y complementos\n"
+#~ "- Consiga más flexibilidad sincronizando su configuración y cargándola en cualquier lugar\n"
+#~ "- Aumente la eficiencia con un flujo de trabajo remoto en las impresoras Ultimaker"
+
+#~ msgctxt "@button"
+#~ msgid "Create account"
+#~ msgstr "Crear cuenta"
+
+#~ msgctxt "@action:inmenu menubar:edit"
+#~ msgid "Delete Selected Model"
+#~ msgid_plural "Delete Selected Models"
+#~ msgstr[0] "Eliminar modelo seleccionado"
+#~ msgstr[1] "Eliminar modelos seleccionados"
+
+#~ msgctxt "@action:inmenu menubar:edit"
+#~ msgid "Center Selected Model"
+#~ msgid_plural "Center Selected Models"
+#~ msgstr[0] "Centrar modelo seleccionado"
+#~ msgstr[1] "Centrar modelos seleccionados"
+
+#~ msgctxt "@action:inmenu menubar:edit"
+#~ msgid "Multiply Selected Model"
+#~ msgid_plural "Multiply Selected Models"
+#~ msgstr[0] "Multiplicar modelo seleccionado"
+#~ msgstr[1] "Multiplicar modelos seleccionados"
+
+#~ msgctxt "@button"
+#~ msgid "Finish"
+#~ msgstr "Finalizar"
+
+#~ msgctxt "@label"
+#~ msgid "Ultimaker Account"
+#~ msgstr "Cuenta de Ultimaker"
+
+#~ msgctxt "@text"
+#~ msgid "Your key to connected 3D printing"
+#~ msgstr "Su clave para una impresión 3D conectada"
+
+#~ msgctxt "@text"
+#~ msgid "- Customize your experience with more print profiles and plugins"
+#~ msgstr "- Personalice su experiencia con más perfiles de impresión y complementos"
+
+#~ msgctxt "@text"
+#~ msgid "- Stay flexible by syncing your setup and loading it anywhere"
+#~ msgstr "- Consiga más flexibilidad sincronizando su configuración y cargándola en cualquier lugar"
+
+#~ msgctxt "@text"
+#~ msgid "- Increase efficiency with a remote workflow on Ultimaker printers"
+#~ msgstr "- Aumente la eficiencia con un flujo de trabajo remoto en las impresoras Ultimaker"
+
+#~ msgctxt "@text"
+#~ msgid ""
+#~ "Please follow these steps to set up\n"
+#~ "Ultimaker Cura. This will only take a few moments."
+#~ msgstr ""
+#~ "Siga estos pasos para configurar\n"
+#~ "Ultimaker Cura. Solo le llevará unos minutos."
+
+#~ msgctxt "@label"
+#~ msgid "What's new in Ultimaker Cura"
+#~ msgstr "Novedades en Ultimaker Cura"
+
#~ msgctxt "@label ({} is object name)"
#~ msgid "Are you sure you wish to remove {}? This cannot be undone!"
#~ msgstr "¿Seguro que desea eliminar {}? ¡Esta acción no se puede deshacer!"
diff --git a/resources/i18n/es_ES/fdmextruder.def.json.po b/resources/i18n/es_ES/fdmextruder.def.json.po
index 8f3cf70884..c9d4b0a656 100644
--- a/resources/i18n/es_ES/fdmextruder.def.json.po
+++ b/resources/i18n/es_ES/fdmextruder.def.json.po
@@ -1,12 +1,12 @@
# Cura
-# Copyright (C) 2020 Ultimaker B.V.
+# Copyright (C) 2021 Ultimaker B.V.
# This file is distributed under the same license as the Cura package.
#
msgid ""
msgstr ""
-"Project-Id-Version: Cura 4.8\n"
+"Project-Id-Version: Cura 4.10\n"
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
-"POT-Creation-Date: 2020-10-19 13:15+0000\n"
+"POT-Creation-Date: 2021-06-10 17:35+0000\n"
"PO-Revision-Date: 2019-03-13 14:00+0200\n"
"Last-Translator: Bothof \n"
"Language-Team: Spanish\n"
diff --git a/resources/i18n/es_ES/fdmprinter.def.json.po b/resources/i18n/es_ES/fdmprinter.def.json.po
index 9dc4561d58..4983fbd68b 100644
--- a/resources/i18n/es_ES/fdmprinter.def.json.po
+++ b/resources/i18n/es_ES/fdmprinter.def.json.po
@@ -1,20 +1,20 @@
# Cura
-# Copyright (C) 2020 Ultimaker B.V.
+# Copyright (C) 2021 Ultimaker B.V.
# This file is distributed under the same license as the Cura package.
#
msgid ""
msgstr ""
-"Project-Id-Version: Cura 4.8\n"
+"Project-Id-Version: Cura 4.10\n"
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
-"POT-Creation-Date: 2020-10-19 13:15+0000\n"
-"PO-Revision-Date: 2020-08-21 13:40+0200\n"
+"POT-Creation-Date: 2021-06-10 17:35+0000\n"
+"PO-Revision-Date: 2021-04-16 15:15+0200\n"
"Last-Translator: Lionbridge \n"
"Language-Team: Spanish , Spanish \n"
"Language: es_ES\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: Poedit 2.2.3\n"
+"X-Generator: Poedit 2.4.1\n"
#: fdmprinter.def.json
msgctxt "machine_settings label"
@@ -419,6 +419,26 @@ msgctxt "machine_extruders_share_heater description"
msgid "Whether the extruders share a single heater rather than each extruder having its own heater."
msgstr "Si los extrusores comparten un único calentador en lugar de que cada extrusor tenga el suyo propio."
+#: fdmprinter.def.json
+msgctxt "machine_extruders_share_nozzle label"
+msgid "Extruders Share Nozzle"
+msgstr "Los extrusores comparten la tobera"
+
+#: fdmprinter.def.json
+msgctxt "machine_extruders_share_nozzle description"
+msgid "Whether the extruders share a single nozzle rather than each extruder having its own nozzle. When set to true, it is expected that the printer-start gcode script properly sets up all extruders in an initial retraction state that is known and mutually compatible (either zero or one filament not retracted); in that case the initial retraction status is described, per extruder, by the 'machine_extruders_shared_nozzle_initial_retraction' parameter."
+msgstr "Indica si los extrusores comparten una única tobera en lugar de que cada uno tenga la suya propia. Cuando se establece en true, se espera que la secuencia de comandos gcode de inicio de la impresora establezca todos los extrusores en un estado de retracción inicial conocido y mutuamente compatible (ninguno o un solo filamento que no se retrae); en este caso, el estado de retracción inicial se describe, por extrusor, mediante el parámetro \"machine_extruders_shared_nozzle_initial_retraction\"."
+
+#: fdmprinter.def.json
+msgctxt "machine_extruders_shared_nozzle_initial_retraction label"
+msgid "Shared Nozzle Initial Retraction"
+msgstr "Retracción inicial de tobera compartida"
+
+#: fdmprinter.def.json
+msgctxt "machine_extruders_shared_nozzle_initial_retraction description"
+msgid "How much the filament of each extruder is assumed to have been retracted from the shared nozzle tip at the completion of the printer-start gcode script; the value should be equal to or greater than the length of the common part of the nozzle's ducts."
+msgstr "La cantidad de filamento de cada extrusor que se supone que se ha retirado de la punta de la tobera compartida al final de la secuencia de comandos gcode de inicio de la impresora; el valor debe ser igual o mayor que la longitud de la parte común de los conductos de la tobera."
+
#: fdmprinter.def.json
msgctxt "machine_disallowed_areas label"
msgid "Disallowed Areas"
@@ -486,8 +506,8 @@ msgstr "Desplazamiento con extrusor"
#: fdmprinter.def.json
msgctxt "machine_use_extruder_offset_to_offset_coords description"
-msgid "Apply the extruder offset to the coordinate system."
-msgstr "Aplicar el desplazamiento del extrusor al sistema de coordenadas."
+msgid "Apply the extruder offset to the coordinate system. Affects all extruders."
+msgstr "Aplicar el desplazamiento del extrusor al sistema de coordenadas. Influye en todos los extrusores."
#: fdmprinter.def.json
msgctxt "extruder_prime_pos_z label"
@@ -881,8 +901,8 @@ msgstr "Multiplicador del ancho de la línea de la primera capa. Si esta se aume
#: fdmprinter.def.json
msgctxt "shell label"
-msgid "Shell"
-msgstr "Perímetro"
+msgid "Walls"
+msgstr "Paredes"
#: fdmprinter.def.json
msgctxt "shell description"
@@ -949,166 +969,6 @@ msgctxt "wall_0_wipe_dist description"
msgid "Distance of a travel move inserted after the outer wall, to hide the Z seam better."
msgstr "Distancia de un movimiento de desplazamiento insertado tras la pared exterior con el fin de ocultar mejor la costura sobre el eje Z."
-#: fdmprinter.def.json
-msgctxt "roofing_extruder_nr label"
-msgid "Top Surface Skin Extruder"
-msgstr "Extrusor de la superficie superior del forro"
-
-#: fdmprinter.def.json
-msgctxt "roofing_extruder_nr description"
-msgid "The extruder train used for printing the top most skin. This is used in multi-extrusion."
-msgstr "El tren extrusor que se utiliza para imprimir el nivel superior del forro. Se emplea en la extrusión múltiple."
-
-#: fdmprinter.def.json
-msgctxt "roofing_layer_count label"
-msgid "Top Surface Skin Layers"
-msgstr "Capas de la superficie superior del forro"
-
-#: fdmprinter.def.json
-msgctxt "roofing_layer_count description"
-msgid "The number of top most skin layers. Usually only one top most layer is sufficient to generate higher quality top surfaces."
-msgstr "El número de capas del nivel superior del forro. Normalmente es suficiente con una sola capa para generar superficies superiores con mayor calidad."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_extruder_nr label"
-msgid "Top/Bottom Extruder"
-msgstr "Extrusor superior/inferior"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_extruder_nr description"
-msgid "The extruder train used for printing the top and bottom skin. This is used in multi-extrusion."
-msgstr "El tren extrusor que se utiliza para imprimir el forro superior e inferior. Se emplea en la extrusión múltiple."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_thickness label"
-msgid "Top/Bottom Thickness"
-msgstr "Grosor superior/inferior"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_thickness description"
-msgid "The thickness of the top/bottom layers in the print. This value divided by the layer height defines the number of top/bottom layers."
-msgstr "Grosor de las capas superiores/inferiores en la impresión. Este valor dividido por la altura de la capa define el número de capas superiores/inferiores."
-
-#: fdmprinter.def.json
-msgctxt "top_thickness label"
-msgid "Top Thickness"
-msgstr "Grosor superior"
-
-#: fdmprinter.def.json
-msgctxt "top_thickness description"
-msgid "The thickness of the top layers in the print. This value divided by the layer height defines the number of top layers."
-msgstr "Grosor de las capas superiores en la impresión. Este valor dividido por la altura de capa define el número de capas superiores."
-
-#: fdmprinter.def.json
-msgctxt "top_layers label"
-msgid "Top Layers"
-msgstr "Capas superiores"
-
-#: fdmprinter.def.json
-msgctxt "top_layers description"
-msgid "The number of top layers. When calculated by the top thickness, this value is rounded to a whole number."
-msgstr "Número de capas superiores. Al calcularlo por el grosor superior, este valor se redondea a un número entero."
-
-#: fdmprinter.def.json
-msgctxt "bottom_thickness label"
-msgid "Bottom Thickness"
-msgstr "Grosor inferior"
-
-#: fdmprinter.def.json
-msgctxt "bottom_thickness description"
-msgid "The thickness of the bottom layers in the print. This value divided by the layer height defines the number of bottom layers."
-msgstr "Grosor de las capas inferiores en la impresión. Este valor dividido por la altura de capa define el número de capas inferiores."
-
-#: fdmprinter.def.json
-msgctxt "bottom_layers label"
-msgid "Bottom Layers"
-msgstr "Capas inferiores"
-
-#: fdmprinter.def.json
-msgctxt "bottom_layers description"
-msgid "The number of bottom layers. When calculated by the bottom thickness, this value is rounded to a whole number."
-msgstr "Número de capas inferiores. Al calcularlo por el grosor inferior, este valor se redondea a un número entero."
-
-#: fdmprinter.def.json
-msgctxt "initial_bottom_layers label"
-msgid "Initial Bottom Layers"
-msgstr "Capas inferiores iniciales"
-
-#: fdmprinter.def.json
-msgctxt "initial_bottom_layers description"
-msgid "The number of initial bottom layers, from the build-plate upwards. When calculated by the bottom thickness, this value is rounded to a whole number."
-msgstr "El número de capas inferiores iniciales, desde la capa de impresión hacia arriba. Al calcularlo por el grosor inferior, este valor se redondea a un número entero."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern label"
-msgid "Top/Bottom Pattern"
-msgstr "Patrón superior/inferior"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern description"
-msgid "The pattern of the top/bottom layers."
-msgstr "Patrón de las capas superiores/inferiores."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern option lines"
-msgid "Lines"
-msgstr "Líneas"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern option concentric"
-msgid "Concentric"
-msgstr "Concéntrico"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern option zigzag"
-msgid "Zig Zag"
-msgstr "Zigzag"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 label"
-msgid "Bottom Pattern Initial Layer"
-msgstr "Patrón inferior de la capa inicial"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 description"
-msgid "The pattern on the bottom of the print on the first layer."
-msgstr "El patrón que aparece en la parte inferior de la impresión de la primera capa."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 option lines"
-msgid "Lines"
-msgstr "Líneas"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 option concentric"
-msgid "Concentric"
-msgstr "Concéntrico"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 option zigzag"
-msgid "Zig Zag"
-msgstr "Zigzag"
-
-#: fdmprinter.def.json
-msgctxt "connect_skin_polygons label"
-msgid "Connect Top/Bottom Polygons"
-msgstr "Conectar polígonos superiores/inferiores"
-
-#: fdmprinter.def.json
-msgctxt "connect_skin_polygons description"
-msgid "Connect top/bottom skin paths where they run next to each other. For the concentric pattern enabling this setting greatly reduces the travel time, but because the connections can happen midway over infill this feature can reduce the top surface quality."
-msgstr "Conecta las trayectorias de forro superior/inferior cuando están próximas entre sí. Al habilitar este ajuste, en el patrón concéntrico se reduce considerablemente el tiempo de desplazamiento, pero las conexiones pueden producirse en mitad del relleno, con lo que bajaría la calidad de la superficie superior."
-
-#: fdmprinter.def.json
-msgctxt "skin_angles label"
-msgid "Top/Bottom Line Directions"
-msgstr "Direcciones de línea superior/inferior"
-
-#: fdmprinter.def.json
-msgctxt "skin_angles description"
-msgid "A list of integer line directions to use when the top/bottom layers use the lines or zig zag pattern. Elements from the list are used sequentially as the layers progress and when the end of the list is reached, it starts at the beginning again. The list items are separated by commas and the whole list is contained in square brackets. Default is an empty list which means use the traditional default angles (45 and 135 degrees)."
-msgstr "Una lista de los valores enteros de las direcciones de línea si las capas superiores e inferiores utilizan líneas o el patrón en zigzag. Los elementos de esta lista se utilizan de forma secuencial a medida que las capas se utilizan y, cuando se alcanza el final, la lista vuelve a comenzar desde el principio. Los elementos de la lista están separados por comas y toda la lista aparece entre corchetes. El valor predeterminado es una lista vacía que utiliza los ángulos predeterminados típicos (45 y 135 grados)."
-
#: fdmprinter.def.json
msgctxt "wall_0_inset label"
msgid "Outer Wall Inset"
@@ -1414,6 +1274,176 @@ msgctxt "z_seam_relative description"
msgid "When enabled, the z seam coordinates are relative to each part's centre. When disabled, the coordinates define an absolute position on the build plate."
msgstr "Cuando se habilita, las coordenadas de la costura en z son relativas al centro de cada pieza. De lo contrario, las coordenadas definen una posición absoluta en la placa de impresión."
+#: fdmprinter.def.json
+msgctxt "top_bottom label"
+msgid "Top/Bottom"
+msgstr "Superior o inferior"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom description"
+msgid "Top/Bottom"
+msgstr "Superior o inferior"
+
+#: fdmprinter.def.json
+msgctxt "roofing_extruder_nr label"
+msgid "Top Surface Skin Extruder"
+msgstr "Extrusor de la superficie superior del forro"
+
+#: fdmprinter.def.json
+msgctxt "roofing_extruder_nr description"
+msgid "The extruder train used for printing the top most skin. This is used in multi-extrusion."
+msgstr "El tren extrusor que se utiliza para imprimir el nivel superior del forro. Se emplea en la extrusión múltiple."
+
+#: fdmprinter.def.json
+msgctxt "roofing_layer_count label"
+msgid "Top Surface Skin Layers"
+msgstr "Capas de la superficie superior del forro"
+
+#: fdmprinter.def.json
+msgctxt "roofing_layer_count description"
+msgid "The number of top most skin layers. Usually only one top most layer is sufficient to generate higher quality top surfaces."
+msgstr "El número de capas del nivel superior del forro. Normalmente es suficiente con una sola capa para generar superficies superiores con mayor calidad."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_extruder_nr label"
+msgid "Top/Bottom Extruder"
+msgstr "Extrusor superior/inferior"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_extruder_nr description"
+msgid "The extruder train used for printing the top and bottom skin. This is used in multi-extrusion."
+msgstr "El tren extrusor que se utiliza para imprimir el forro superior e inferior. Se emplea en la extrusión múltiple."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_thickness label"
+msgid "Top/Bottom Thickness"
+msgstr "Grosor superior/inferior"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_thickness description"
+msgid "The thickness of the top/bottom layers in the print. This value divided by the layer height defines the number of top/bottom layers."
+msgstr "Grosor de las capas superiores/inferiores en la impresión. Este valor dividido por la altura de la capa define el número de capas superiores/inferiores."
+
+#: fdmprinter.def.json
+msgctxt "top_thickness label"
+msgid "Top Thickness"
+msgstr "Grosor superior"
+
+#: fdmprinter.def.json
+msgctxt "top_thickness description"
+msgid "The thickness of the top layers in the print. This value divided by the layer height defines the number of top layers."
+msgstr "Grosor de las capas superiores en la impresión. Este valor dividido por la altura de capa define el número de capas superiores."
+
+#: fdmprinter.def.json
+msgctxt "top_layers label"
+msgid "Top Layers"
+msgstr "Capas superiores"
+
+#: fdmprinter.def.json
+msgctxt "top_layers description"
+msgid "The number of top layers. When calculated by the top thickness, this value is rounded to a whole number."
+msgstr "Número de capas superiores. Al calcularlo por el grosor superior, este valor se redondea a un número entero."
+
+#: fdmprinter.def.json
+msgctxt "bottom_thickness label"
+msgid "Bottom Thickness"
+msgstr "Grosor inferior"
+
+#: fdmprinter.def.json
+msgctxt "bottom_thickness description"
+msgid "The thickness of the bottom layers in the print. This value divided by the layer height defines the number of bottom layers."
+msgstr "Grosor de las capas inferiores en la impresión. Este valor dividido por la altura de capa define el número de capas inferiores."
+
+#: fdmprinter.def.json
+msgctxt "bottom_layers label"
+msgid "Bottom Layers"
+msgstr "Capas inferiores"
+
+#: fdmprinter.def.json
+msgctxt "bottom_layers description"
+msgid "The number of bottom layers. When calculated by the bottom thickness, this value is rounded to a whole number."
+msgstr "Número de capas inferiores. Al calcularlo por el grosor inferior, este valor se redondea a un número entero."
+
+#: fdmprinter.def.json
+msgctxt "initial_bottom_layers label"
+msgid "Initial Bottom Layers"
+msgstr "Capas inferiores iniciales"
+
+#: fdmprinter.def.json
+msgctxt "initial_bottom_layers description"
+msgid "The number of initial bottom layers, from the build-plate upwards. When calculated by the bottom thickness, this value is rounded to a whole number."
+msgstr "El número de capas inferiores iniciales, desde la capa de impresión hacia arriba. Al calcularlo por el grosor inferior, este valor se redondea a un número entero."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern label"
+msgid "Top/Bottom Pattern"
+msgstr "Patrón superior/inferior"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern description"
+msgid "The pattern of the top/bottom layers."
+msgstr "Patrón de las capas superiores/inferiores."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern option lines"
+msgid "Lines"
+msgstr "Líneas"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern option concentric"
+msgid "Concentric"
+msgstr "Concéntrico"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern option zigzag"
+msgid "Zig Zag"
+msgstr "Zigzag"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 label"
+msgid "Bottom Pattern Initial Layer"
+msgstr "Patrón inferior de la capa inicial"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 description"
+msgid "The pattern on the bottom of the print on the first layer."
+msgstr "El patrón que aparece en la parte inferior de la impresión de la primera capa."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 option lines"
+msgid "Lines"
+msgstr "Líneas"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 option concentric"
+msgid "Concentric"
+msgstr "Concéntrico"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 option zigzag"
+msgid "Zig Zag"
+msgstr "Zigzag"
+
+#: fdmprinter.def.json
+msgctxt "connect_skin_polygons label"
+msgid "Connect Top/Bottom Polygons"
+msgstr "Conectar polígonos superiores/inferiores"
+
+#: fdmprinter.def.json
+msgctxt "connect_skin_polygons description"
+msgid "Connect top/bottom skin paths where they run next to each other. For the concentric pattern enabling this setting greatly reduces the travel time, but because the connections can happen midway over infill this feature can reduce the top surface quality."
+msgstr "Conecta las trayectorias de forro superior/inferior cuando están próximas entre sí. Al habilitar este ajuste, en el patrón concéntrico se reduce considerablemente el tiempo de desplazamiento, pero las conexiones pueden producirse en mitad del relleno, con lo que bajaría la calidad de la superficie superior."
+
+#: fdmprinter.def.json
+msgctxt "skin_angles label"
+msgid "Top/Bottom Line Directions"
+msgstr "Direcciones de línea superior/inferior"
+
+#: fdmprinter.def.json
+msgctxt "skin_angles description"
+msgid "A list of integer line directions to use when the top/bottom layers use the lines or zig zag pattern. Elements from the list are used sequentially as the layers progress and when the end of the list is reached, it starts at the beginning again. The list items are separated by commas and the whole list is contained in square brackets. Default is an empty list which means use the traditional default angles (45 and 135 degrees)."
+msgstr "Una lista de los valores enteros de las direcciones de línea si las capas superiores e inferiores utilizan líneas o el patrón en zigzag. Los elementos de esta lista se utilizan de forma secuencial a medida que las capas se utilizan y, cuando se alcanza el final, la lista vuelve a comenzar desde el principio. Los elementos de la lista están separados por comas y toda la lista aparece entre corchetes. El valor predeterminado es una lista vacía que utiliza los ángulos predeterminados típicos (45 y 135 grados)."
+
#: fdmprinter.def.json
msgctxt "skin_no_small_gaps_heuristic label"
msgid "No Skin in Z Gaps"
@@ -1554,6 +1584,86 @@ msgctxt "skin_overlap_mm description"
msgid "Adjust the amount of overlap between the walls and (the endpoints of) the skin-centerlines. A slight overlap allows the walls to connect firmly to the skin. Note that, given an equal skin and wall line-width, any value over half the width of the wall may already cause any skin to go past the wall, because at that point the position of the nozzle of the skin-extruder may already reach past the middle of the wall."
msgstr "Ajuste la cantidad de superposición entre las paredes y (los extremos de) las líneas centrales del forro. Una ligera superposición permite que las paredes estén firmemente unidas al forro. Tenga en cuenta que, con un mismo ancho de la línea del forro y la pared, cualquier valor superior a la mitad del ancho de la pared ya puede provocar que cualquier forro sobrepase la pared, debido a que en ese punto la posición de la tobera del extrusor del forro ya puede sobrepasar la mitad de la pared."
+#: fdmprinter.def.json
+msgctxt "skin_preshrink label"
+msgid "Skin Removal Width"
+msgstr "Anchura de retirada del forro"
+
+#: fdmprinter.def.json
+msgctxt "skin_preshrink description"
+msgid "The largest width of skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top/bottom skin at slanted surfaces in the model."
+msgstr "Anchura máxima de las áreas de forro que se deben retirar. Todas las áreas de forro inferiores a este valor desaparecerán. Esto puede contribuir a limitar el tiempo y el material empleados en imprimir el forro superior/inferior en las superficies inclinadas del modelo."
+
+#: fdmprinter.def.json
+msgctxt "top_skin_preshrink label"
+msgid "Top Skin Removal Width"
+msgstr "Anchura de retirada del forro superior"
+
+#: fdmprinter.def.json
+msgctxt "top_skin_preshrink description"
+msgid "The largest width of top skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top skin at slanted surfaces in the model."
+msgstr "Anchura máxima de las áreas superiores de forro que se deben retirar. Todas las áreas de forro inferiores a este valor desaparecerán. Esto puede contribuir a limitar el tiempo y el material empleados en imprimir el forro superior en las superficies inclinadas del modelo."
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_preshrink label"
+msgid "Bottom Skin Removal Width"
+msgstr "Anchura de retirada del forro inferior"
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_preshrink description"
+msgid "The largest width of bottom skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing bottom skin at slanted surfaces in the model."
+msgstr "Anchura máxima de las áreas inferiores de forro que se deben retirar. Todas las áreas de forro inferiores a este valor desaparecerán. Esto puede contribuir a limitar el tiempo y el material empleados en imprimir el forro inferior en las superficies inclinadas del modelo."
+
+#: fdmprinter.def.json
+msgctxt "expand_skins_expand_distance label"
+msgid "Skin Expand Distance"
+msgstr "Distancia de expansión del forro"
+
+#: fdmprinter.def.json
+msgctxt "expand_skins_expand_distance description"
+msgid "The distance the skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on neighboring layers adhere better to the skin. Lower values save amount of material used."
+msgstr "La distancia a la que los forros se expanden en el relleno. Los valores superiores hacen que el forro se adhiera mejor al patrón de relleno y que las paredes de las capas vecinas se adhieran mejor al forro. Los valores inferiores ahorran material."
+
+#: fdmprinter.def.json
+msgctxt "top_skin_expand_distance label"
+msgid "Top Skin Expand Distance"
+msgstr "Distancia de expansión del forro superior"
+
+#: fdmprinter.def.json
+msgctxt "top_skin_expand_distance description"
+msgid "The distance the top skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on the layer above adhere better to the skin. Lower values save amount of material used."
+msgstr "La distancia a la que los forros superiores se expanden en el relleno. Los valores superiores hacen que el forro se adhiera mejor al patrón de relleno y que las paredes de la capa superior se adhieran mejor al forro. Los valores inferiores ahorran material."
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_expand_distance label"
+msgid "Bottom Skin Expand Distance"
+msgstr "Distancia de expansión del forro inferior"
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_expand_distance description"
+msgid "The distance the bottom skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the skin adhere better to the walls on the layer below. Lower values save amount of material used."
+msgstr "La distancia a la que los forros inferiores se expanden en el relleno. Los valores superiores hacen que el forro se adhiera mejor al patrón de relleno y que el forro se adhiera mejor a las paredes de la capa inferior. Los valores inferiores ahorran material."
+
+#: fdmprinter.def.json
+msgctxt "max_skin_angle_for_expansion label"
+msgid "Maximum Skin Angle for Expansion"
+msgstr "Ángulo máximo de expansión del forro"
+
+#: fdmprinter.def.json
+msgctxt "max_skin_angle_for_expansion description"
+msgid "Top and/or bottom surfaces of your object with an angle larger than this setting, won't have their top/bottom skin expanded. This avoids expanding the narrow skin areas that are created when the model surface has a near vertical slope. An angle of 0° is horizontal and will cause no skin to be expanded, while an angle of 90° is vertical and will cause all skin to be expanded."
+msgstr "El revestimiento superior e inferior no se expandirá cuando las superficies superior e inferior del objeto tengan un ángulo mayor que este valor. Esto evita la expansión de las pequeñas áreas de revestimiento que se crean cuando la superficie del modelo tiene una pendiente casi vertical. Un ángulo de 0° es horizontal y no provoca la extensión de ningún revestimiento exterior, mientras que un ángulo de 90 ° es vertical y provoca la extensión de todo el revestimiento exterior."
+
+#: fdmprinter.def.json
+msgctxt "min_skin_width_for_expansion label"
+msgid "Minimum Skin Width for Expansion"
+msgstr "Anchura de expansión mínima del forro"
+
+#: fdmprinter.def.json
+msgctxt "min_skin_width_for_expansion description"
+msgid "Skin areas narrower than this are not expanded. This avoids expanding the narrow skin areas that are created when the model surface has a slope close to the vertical."
+msgstr "Las áreas de forro más estrechas que este valor no se expanden. Esto evita la expansión de las áreas de forro estrechas que se crean cuando la superficie del modelo tiene una inclinación casi vertical."
+
#: fdmprinter.def.json
msgctxt "infill label"
msgid "Infill"
@@ -1863,86 +1973,6 @@ msgctxt "infill_support_angle description"
msgid "The minimum angle of internal overhangs for which infill is added. At a value of 0° objects are totally filled with infill, 90° will not provide any infill."
msgstr "El ángulo mínimo de los voladizos internos para los que se agrega relleno. A partir de un valor de 0 º todos los objetos estarán totalmente rellenos, a 90 º no se proporcionará ningún relleno."
-#: fdmprinter.def.json
-msgctxt "skin_preshrink label"
-msgid "Skin Removal Width"
-msgstr "Anchura de retirada del forro"
-
-#: fdmprinter.def.json
-msgctxt "skin_preshrink description"
-msgid "The largest width of skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top/bottom skin at slanted surfaces in the model."
-msgstr "Anchura máxima de las áreas de forro que se deben retirar. Todas las áreas de forro inferiores a este valor desaparecerán. Esto puede contribuir a limitar el tiempo y el material empleados en imprimir el forro superior/inferior en las superficies inclinadas del modelo."
-
-#: fdmprinter.def.json
-msgctxt "top_skin_preshrink label"
-msgid "Top Skin Removal Width"
-msgstr "Anchura de retirada del forro superior"
-
-#: fdmprinter.def.json
-msgctxt "top_skin_preshrink description"
-msgid "The largest width of top skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top skin at slanted surfaces in the model."
-msgstr "Anchura máxima de las áreas superiores de forro que se deben retirar. Todas las áreas de forro inferiores a este valor desaparecerán. Esto puede contribuir a limitar el tiempo y el material empleados en imprimir el forro superior en las superficies inclinadas del modelo."
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_preshrink label"
-msgid "Bottom Skin Removal Width"
-msgstr "Anchura de retirada del forro inferior"
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_preshrink description"
-msgid "The largest width of bottom skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing bottom skin at slanted surfaces in the model."
-msgstr "Anchura máxima de las áreas inferiores de forro que se deben retirar. Todas las áreas de forro inferiores a este valor desaparecerán. Esto puede contribuir a limitar el tiempo y el material empleados en imprimir el forro inferior en las superficies inclinadas del modelo."
-
-#: fdmprinter.def.json
-msgctxt "expand_skins_expand_distance label"
-msgid "Skin Expand Distance"
-msgstr "Distancia de expansión del forro"
-
-#: fdmprinter.def.json
-msgctxt "expand_skins_expand_distance description"
-msgid "The distance the skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on neighboring layers adhere better to the skin. Lower values save amount of material used."
-msgstr "La distancia a la que los forros se expanden en el relleno. Los valores superiores hacen que el forro se adhiera mejor al patrón de relleno y que las paredes de las capas vecinas se adhieran mejor al forro. Los valores inferiores ahorran material."
-
-#: fdmprinter.def.json
-msgctxt "top_skin_expand_distance label"
-msgid "Top Skin Expand Distance"
-msgstr "Distancia de expansión del forro superior"
-
-#: fdmprinter.def.json
-msgctxt "top_skin_expand_distance description"
-msgid "The distance the top skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on the layer above adhere better to the skin. Lower values save amount of material used."
-msgstr "La distancia a la que los forros superiores se expanden en el relleno. Los valores superiores hacen que el forro se adhiera mejor al patrón de relleno y que las paredes de la capa superior se adhieran mejor al forro. Los valores inferiores ahorran material."
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_expand_distance label"
-msgid "Bottom Skin Expand Distance"
-msgstr "Distancia de expansión del forro inferior"
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_expand_distance description"
-msgid "The distance the bottom skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the skin adhere better to the walls on the layer below. Lower values save amount of material used."
-msgstr "La distancia a la que los forros inferiores se expanden en el relleno. Los valores superiores hacen que el forro se adhiera mejor al patrón de relleno y que el forro se adhiera mejor a las paredes de la capa inferior. Los valores inferiores ahorran material."
-
-#: fdmprinter.def.json
-msgctxt "max_skin_angle_for_expansion label"
-msgid "Maximum Skin Angle for Expansion"
-msgstr "Ángulo máximo de expansión del forro"
-
-#: fdmprinter.def.json
-msgctxt "max_skin_angle_for_expansion description"
-msgid "Top and/or bottom surfaces of your object with an angle larger than this setting, won't have their top/bottom skin expanded. This avoids expanding the narrow skin areas that are created when the model surface has a near vertical slope. An angle of 0° is horizontal, while an angle of 90° is vertical."
-msgstr "Las superficies superiores e inferiores de un objeto con un ángulo mayor que este no expanden los forros superior e inferior. Esto evita la expansión de las áreas de forro estrechas que se crean cuando la superficie del modelo tiene una inclinación casi vertical. Un ángulo de 0º es horizontal, mientras que uno de 90º es vertical."
-
-#: fdmprinter.def.json
-msgctxt "min_skin_width_for_expansion label"
-msgid "Minimum Skin Width for Expansion"
-msgstr "Anchura de expansión mínima del forro"
-
-#: fdmprinter.def.json
-msgctxt "min_skin_width_for_expansion description"
-msgid "Skin areas narrower than this are not expanded. This avoids expanding the narrow skin areas that are created when the model surface has a slope close to the vertical."
-msgstr "Las áreas de forro más estrechas que este valor no se expanden. Esto evita la expansión de las áreas de forro estrechas que se crean cuando la superficie del modelo tiene una inclinación casi vertical."
-
#: fdmprinter.def.json
msgctxt "skin_edge_support_thickness label"
msgid "Skin Edge Support Thickness"
@@ -2560,8 +2590,8 @@ msgstr "Velocidad de capa inicial"
#: fdmprinter.def.json
msgctxt "speed_layer_0 description"
-msgid "The speed for the initial layer. A lower value is advised to improve adhesion to the build plate."
-msgstr "Velocidad de la capa inicial. Se recomienda un valor más bajo para mejorar la adherencia a la placa de impresión."
+msgid "The speed for the initial layer. A lower value is advised to improve adhesion to the build plate. Does not affect the build plate adhesion structures themselves, like brim and raft."
+msgstr "La velocidad de la capa inicial. Se recomienda un valor más bajo para mejorar la adherencia a la placa de impresión. No influye en las estructuras de adhesión de la placa de impresión en sí, como el borde y la balsa."
#: fdmprinter.def.json
msgctxt "speed_print_layer_0 label"
@@ -3170,8 +3200,9 @@ msgstr "Distancia de peinada máxima sin retracción"
#: fdmprinter.def.json
msgctxt "retraction_combing_max_distance description"
-msgid "When non-zero, combing travel moves that are longer than this distance will use retraction."
-msgstr "Si no es cero, los movimientos de desplazamiento de peinada que sean superiores a esta distancia utilizarán retracción."
+msgid "When greater than zero, combing travel moves that are longer than this distance will use retraction. If set to zero, there is no maximum and combing moves will not use retraction."
+msgstr "Si es mayor que cero, los movimientos de desplazamiento de peinada que sean superiores a esta distancia utilizarán retracción. Si se establece como cero,"
+" no hay un máximo y los movimientos de peinada no utilizarán la retracción."
#: fdmprinter.def.json
msgctxt "travel_retract_before_outer_wall label"
@@ -5074,10 +5105,8 @@ msgstr "Rango de procesamiento de la malla"
#: fdmprinter.def.json
msgctxt "infill_mesh_order description"
-msgid "Determines the priority of this mesh when considering multiple overlapping infill meshes. Areas where multiple infill meshes overlap will take on the settings of the mesh with the lowest rank. An infill mesh with a higher order will modify the infill of infill meshes with lower order and normal meshes."
-msgstr "Determina la prioridad de esta malla al tener en cuenta varias mallas de relleno superpuestas. Las áreas en las que se superponen varias mallas de relleno"
-" tomarán la configuración de la malla con el rango más bajo. Una malla de relleno con un orden superior modificará el relleno de las mallas de relleno"
-" con un orden inferior y las mallas normales."
+msgid "Determines the priority of this mesh when considering multiple overlapping infill meshes. Areas where multiple infill meshes overlap will take on the settings of the mesh with the highest rank. An infill mesh with a higher rank will modify the infill of infill meshes with lower rank and normal meshes."
+msgstr "Determina la prioridad de esta malla al tener en cuenta varias mallas de relleno superpuestas. Las áreas en las que se superponen varias mallas de relleno tomarán la configuración de la malla con el rango más alto. Una malla de relleno con un rango superior modificará el relleno de las mallas de relleno con un rango inferior y mallas normales."
#: fdmprinter.def.json
msgctxt "cutting_mesh label"
@@ -5424,6 +5453,16 @@ msgctxt "conical_overhang_angle description"
msgid "The maximum angle of overhangs after the they have been made printable. At a value of 0° all overhangs are replaced by a piece of model connected to the build plate, 90° will not change the model in any way."
msgstr "Ángulo máximo de los voladizos una vez que se han hecho imprimibles. Un valor de 0º hace que todos los voladizos sean reemplazados por una pieza del modelo conectada a la placa de impresión y un valor de 90º no cambiará el modelo."
+#: fdmprinter.def.json
+msgctxt "conical_overhang_hole_size label"
+msgid "Maximum Overhang Hole Area"
+msgstr "Área máxima del agujero en voladizo"
+
+#: fdmprinter.def.json
+msgctxt "conical_overhang_hole_size description"
+msgid "The maximum area of a hole in the base of the model before it's removed by Make Overhang Printable. Holes smaller than this will be retained. A value of 0 mm² will fill all holes in the models base."
+msgstr "El área máxima de un agujero en la base del modelo antes de que se elimine mediante la herramienta Convertir voladizo en imprimible. Se conservarán los agujeros más pequeños. Con un valor de 0 mm² se rellenan todos los agujeros de la base del modelo."
+
#: fdmprinter.def.json
msgctxt "coasting_enable label"
msgid "Enable Coasting"
@@ -6363,6 +6402,30 @@ msgctxt "mesh_rotation_matrix description"
msgid "Transformation matrix to be applied to the model when loading it from file."
msgstr "Matriz de transformación que se aplicará al modelo cuando se cargue desde el archivo."
+#~ msgctxt "retraction_combing_max_distance description"
+#~ msgid "When non-zero, combing travel moves that are longer than this distance will use retraction."
+#~ msgstr "Si no es cero, los movimientos de desplazamiento de peinada que sean superiores a esta distancia utilizarán retracción."
+
+#~ msgctxt "machine_use_extruder_offset_to_offset_coords description"
+#~ msgid "Apply the extruder offset to the coordinate system."
+#~ msgstr "Aplicar el desplazamiento del extrusor al sistema de coordenadas."
+
+#~ msgctxt "shell label"
+#~ msgid "Shell"
+#~ msgstr "Perímetro"
+
+#~ msgctxt "max_skin_angle_for_expansion description"
+#~ msgid "Top and/or bottom surfaces of your object with an angle larger than this setting, won't have their top/bottom skin expanded. This avoids expanding the narrow skin areas that are created when the model surface has a near vertical slope. An angle of 0° is horizontal, while an angle of 90° is vertical."
+#~ msgstr "Las superficies superiores e inferiores de un objeto con un ángulo mayor que este no expanden los forros superior e inferior. Esto evita la expansión de las áreas de forro estrechas que se crean cuando la superficie del modelo tiene una inclinación casi vertical. Un ángulo de 0º es horizontal, mientras que uno de 90º es vertical."
+
+#~ msgctxt "speed_layer_0 description"
+#~ msgid "The speed for the initial layer. A lower value is advised to improve adhesion to the build plate."
+#~ msgstr "Velocidad de la capa inicial. Se recomienda un valor más bajo para mejorar la adherencia a la placa de impresión."
+
+#~ msgctxt "infill_mesh_order description"
+#~ msgid "Determines the priority of this mesh when considering multiple overlapping infill meshes. Areas where multiple infill meshes overlap will take on the settings of the mesh with the lowest rank. An infill mesh with a higher order will modify the infill of infill meshes with lower order and normal meshes."
+#~ msgstr "Determina la prioridad de esta malla al tener en cuenta varias mallas de relleno superpuestas. Las áreas en las que se superponen varias mallas de relleno tomarán la configuración de la malla con el rango más bajo. Una malla de relleno con un orden superior modificará el relleno de las mallas de relleno con un orden inferior y las mallas normales."
+
#~ msgctxt "material_bed_temperature description"
#~ msgid "The temperature used for the heated build plate. If this is 0, the bed temperature will not be adjusted."
#~ msgstr "La temperatura utilizada para la placa de impresión caliente. Si el valor es 0, la temperatura de la plataforma no se ajustará."
diff --git a/resources/i18n/fdmextruder.def.json.pot b/resources/i18n/fdmextruder.def.json.pot
index 8205e867d3..cdbf81ab6b 100644
--- a/resources/i18n/fdmextruder.def.json.pot
+++ b/resources/i18n/fdmextruder.def.json.pot
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Uranium json setting files\n"
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
-"POT-Creation-Date: 2020-10-19 13:15+0000\n"
+"POT-Creation-Date: 2021-06-10 17:35+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME \n"
"Language-Team: LANGUAGE\n"
diff --git a/resources/i18n/fdmprinter.def.json.pot b/resources/i18n/fdmprinter.def.json.pot
index 6c65886f4d..085e7e837f 100644
--- a/resources/i18n/fdmprinter.def.json.pot
+++ b/resources/i18n/fdmprinter.def.json.pot
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Uranium json setting files\n"
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
-"POT-Creation-Date: 2020-10-19 13:15+0000\n"
+"POT-Creation-Date: 2021-06-10 17:35+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME \n"
"Language-Team: LANGUAGE\n"
@@ -450,6 +450,37 @@ msgid ""
"its own heater."
msgstr ""
+#: fdmprinter.def.json
+msgctxt "machine_extruders_share_nozzle label"
+msgid "Extruders Share Nozzle"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "machine_extruders_share_nozzle description"
+msgid ""
+"Whether the extruders share a single nozzle rather than each extruder having "
+"its own nozzle. When set to true, it is expected that the printer-start "
+"gcode script properly sets up all extruders in an initial retraction state "
+"that is known and mutually compatible (either zero or one filament not "
+"retracted); in that case the initial retraction status is described, per "
+"extruder, by the 'machine_extruders_shared_nozzle_initial_retraction' "
+"parameter."
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "machine_extruders_shared_nozzle_initial_retraction label"
+msgid "Shared Nozzle Initial Retraction"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "machine_extruders_shared_nozzle_initial_retraction description"
+msgid ""
+"How much the filament of each extruder is assumed to have been retracted "
+"from the shared nozzle tip at the completion of the printer-start gcode "
+"script; the value should be equal to or greater than the length of the "
+"common part of the nozzle's ducts."
+msgstr ""
+
#: fdmprinter.def.json
msgctxt "machine_disallowed_areas label"
msgid "Disallowed Areas"
@@ -521,7 +552,8 @@ msgstr ""
#: fdmprinter.def.json
msgctxt "machine_use_extruder_offset_to_offset_coords description"
-msgid "Apply the extruder offset to the coordinate system."
+msgid ""
+"Apply the extruder offset to the coordinate system. Affects all extruders."
msgstr ""
#: fdmprinter.def.json
@@ -948,7 +980,7 @@ msgstr ""
#: fdmprinter.def.json
msgctxt "shell label"
-msgid "Shell"
+msgid "Walls"
msgstr ""
#: fdmprinter.def.json
@@ -1028,194 +1060,6 @@ msgid ""
"better."
msgstr ""
-#: fdmprinter.def.json
-msgctxt "roofing_extruder_nr label"
-msgid "Top Surface Skin Extruder"
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "roofing_extruder_nr description"
-msgid ""
-"The extruder train used for printing the top most skin. This is used in "
-"multi-extrusion."
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "roofing_layer_count label"
-msgid "Top Surface Skin Layers"
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "roofing_layer_count description"
-msgid ""
-"The number of top most skin layers. Usually only one top most layer is "
-"sufficient to generate higher quality top surfaces."
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_extruder_nr label"
-msgid "Top/Bottom Extruder"
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_extruder_nr description"
-msgid ""
-"The extruder train used for printing the top and bottom skin. This is used "
-"in multi-extrusion."
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_thickness label"
-msgid "Top/Bottom Thickness"
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_thickness description"
-msgid ""
-"The thickness of the top/bottom layers in the print. This value divided by "
-"the layer height defines the number of top/bottom layers."
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "top_thickness label"
-msgid "Top Thickness"
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "top_thickness description"
-msgid ""
-"The thickness of the top layers in the print. This value divided by the "
-"layer height defines the number of top layers."
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "top_layers label"
-msgid "Top Layers"
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "top_layers description"
-msgid ""
-"The number of top layers. When calculated by the top thickness, this value "
-"is rounded to a whole number."
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "bottom_thickness label"
-msgid "Bottom Thickness"
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "bottom_thickness description"
-msgid ""
-"The thickness of the bottom layers in the print. This value divided by the "
-"layer height defines the number of bottom layers."
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "bottom_layers label"
-msgid "Bottom Layers"
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "bottom_layers description"
-msgid ""
-"The number of bottom layers. When calculated by the bottom thickness, this "
-"value is rounded to a whole number."
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "initial_bottom_layers label"
-msgid "Initial Bottom Layers"
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "initial_bottom_layers description"
-msgid ""
-"The number of initial bottom layers, from the build-plate upwards. When "
-"calculated by the bottom thickness, this value is rounded to a whole number."
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern label"
-msgid "Top/Bottom Pattern"
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern description"
-msgid "The pattern of the top/bottom layers."
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern option lines"
-msgid "Lines"
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern option concentric"
-msgid "Concentric"
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern option zigzag"
-msgid "Zig Zag"
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 label"
-msgid "Bottom Pattern Initial Layer"
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 description"
-msgid "The pattern on the bottom of the print on the first layer."
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 option lines"
-msgid "Lines"
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 option concentric"
-msgid "Concentric"
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 option zigzag"
-msgid "Zig Zag"
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "connect_skin_polygons label"
-msgid "Connect Top/Bottom Polygons"
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "connect_skin_polygons description"
-msgid ""
-"Connect top/bottom skin paths where they run next to each other. For the "
-"concentric pattern enabling this setting greatly reduces the travel time, "
-"but because the connections can happen midway over infill this feature can "
-"reduce the top surface quality."
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "skin_angles label"
-msgid "Top/Bottom Line Directions"
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "skin_angles description"
-msgid ""
-"A list of integer line directions to use when the top/bottom layers use the "
-"lines or zig zag pattern. Elements from the list are used sequentially as "
-"the layers progress and when the end of the list is reached, it starts at "
-"the beginning again. The list items are separated by commas and the whole "
-"list is contained in square brackets. Default is an empty list which means "
-"use the traditional default angles (45 and 135 degrees)."
-msgstr ""
-
#: fdmprinter.def.json
msgctxt "wall_0_inset label"
msgid "Outer Wall Inset"
@@ -1578,6 +1422,204 @@ msgid ""
"plate."
msgstr ""
+#: fdmprinter.def.json
+msgctxt "top_bottom label"
+msgid "Top/Bottom"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "top_bottom description"
+msgid "Top/Bottom"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "roofing_extruder_nr label"
+msgid "Top Surface Skin Extruder"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "roofing_extruder_nr description"
+msgid ""
+"The extruder train used for printing the top most skin. This is used in "
+"multi-extrusion."
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "roofing_layer_count label"
+msgid "Top Surface Skin Layers"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "roofing_layer_count description"
+msgid ""
+"The number of top most skin layers. Usually only one top most layer is "
+"sufficient to generate higher quality top surfaces."
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_extruder_nr label"
+msgid "Top/Bottom Extruder"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_extruder_nr description"
+msgid ""
+"The extruder train used for printing the top and bottom skin. This is used "
+"in multi-extrusion."
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_thickness label"
+msgid "Top/Bottom Thickness"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_thickness description"
+msgid ""
+"The thickness of the top/bottom layers in the print. This value divided by "
+"the layer height defines the number of top/bottom layers."
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "top_thickness label"
+msgid "Top Thickness"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "top_thickness description"
+msgid ""
+"The thickness of the top layers in the print. This value divided by the "
+"layer height defines the number of top layers."
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "top_layers label"
+msgid "Top Layers"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "top_layers description"
+msgid ""
+"The number of top layers. When calculated by the top thickness, this value "
+"is rounded to a whole number."
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "bottom_thickness label"
+msgid "Bottom Thickness"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "bottom_thickness description"
+msgid ""
+"The thickness of the bottom layers in the print. This value divided by the "
+"layer height defines the number of bottom layers."
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "bottom_layers label"
+msgid "Bottom Layers"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "bottom_layers description"
+msgid ""
+"The number of bottom layers. When calculated by the bottom thickness, this "
+"value is rounded to a whole number."
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "initial_bottom_layers label"
+msgid "Initial Bottom Layers"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "initial_bottom_layers description"
+msgid ""
+"The number of initial bottom layers, from the build-plate upwards. When "
+"calculated by the bottom thickness, this value is rounded to a whole number."
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern label"
+msgid "Top/Bottom Pattern"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern description"
+msgid "The pattern of the top/bottom layers."
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern option lines"
+msgid "Lines"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern option concentric"
+msgid "Concentric"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern option zigzag"
+msgid "Zig Zag"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 label"
+msgid "Bottom Pattern Initial Layer"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 description"
+msgid "The pattern on the bottom of the print on the first layer."
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 option lines"
+msgid "Lines"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 option concentric"
+msgid "Concentric"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 option zigzag"
+msgid "Zig Zag"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "connect_skin_polygons label"
+msgid "Connect Top/Bottom Polygons"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "connect_skin_polygons description"
+msgid ""
+"Connect top/bottom skin paths where they run next to each other. For the "
+"concentric pattern enabling this setting greatly reduces the travel time, "
+"but because the connections can happen midway over infill this feature can "
+"reduce the top surface quality."
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "skin_angles label"
+msgid "Top/Bottom Line Directions"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "skin_angles description"
+msgid ""
+"A list of integer line directions to use when the top/bottom layers use the "
+"lines or zig zag pattern. Elements from the list are used sequentially as "
+"the layers progress and when the end of the list is reached, it starts at "
+"the beginning again. The list items are separated by commas and the whole "
+"list is contained in square brackets. Default is an empty list which means "
+"use the traditional default angles (45 and 135 degrees)."
+msgstr ""
+
#: fdmprinter.def.json
msgctxt "skin_no_small_gaps_heuristic label"
msgid "No Skin in Z Gaps"
@@ -1751,6 +1793,118 @@ msgid ""
"already reach past the middle of the wall."
msgstr ""
+#: fdmprinter.def.json
+msgctxt "skin_preshrink label"
+msgid "Skin Removal Width"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "skin_preshrink description"
+msgid ""
+"The largest width of skin areas which are to be removed. Every skin area "
+"smaller than this value will disappear. This can help in limiting the amount "
+"of time and material spent on printing top/bottom skin at slanted surfaces "
+"in the model."
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "top_skin_preshrink label"
+msgid "Top Skin Removal Width"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "top_skin_preshrink description"
+msgid ""
+"The largest width of top skin areas which are to be removed. Every skin area "
+"smaller than this value will disappear. This can help in limiting the amount "
+"of time and material spent on printing top skin at slanted surfaces in the "
+"model."
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_preshrink label"
+msgid "Bottom Skin Removal Width"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_preshrink description"
+msgid ""
+"The largest width of bottom skin areas which are to be removed. Every skin "
+"area smaller than this value will disappear. This can help in limiting the "
+"amount of time and material spent on printing bottom skin at slanted "
+"surfaces in the model."
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "expand_skins_expand_distance label"
+msgid "Skin Expand Distance"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "expand_skins_expand_distance description"
+msgid ""
+"The distance the skins are expanded into the infill. Higher values makes the "
+"skin attach better to the infill pattern and makes the walls on neighboring "
+"layers adhere better to the skin. Lower values save amount of material used."
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "top_skin_expand_distance label"
+msgid "Top Skin Expand Distance"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "top_skin_expand_distance description"
+msgid ""
+"The distance the top skins are expanded into the infill. Higher values makes "
+"the skin attach better to the infill pattern and makes the walls on the "
+"layer above adhere better to the skin. Lower values save amount of material "
+"used."
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_expand_distance label"
+msgid "Bottom Skin Expand Distance"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_expand_distance description"
+msgid ""
+"The distance the bottom skins are expanded into the infill. Higher values "
+"makes the skin attach better to the infill pattern and makes the skin adhere "
+"better to the walls on the layer below. Lower values save amount of material "
+"used."
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "max_skin_angle_for_expansion label"
+msgid "Maximum Skin Angle for Expansion"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "max_skin_angle_for_expansion description"
+msgid ""
+"Top and/or bottom surfaces of your object with an angle larger than this "
+"setting, won't have their top/bottom skin expanded. This avoids expanding "
+"the narrow skin areas that are created when the model surface has a near "
+"vertical slope. An angle of 0° is horizontal and will cause no skin to be "
+"expanded, while an angle of 90° is vertical and will cause all skin to be "
+"expanded."
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "min_skin_width_for_expansion label"
+msgid "Minimum Skin Width for Expansion"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "min_skin_width_for_expansion description"
+msgid ""
+"Skin areas narrower than this are not expanded. This avoids expanding the "
+"narrow skin areas that are created when the model surface has a slope close "
+"to the vertical."
+msgstr ""
+
#: fdmprinter.def.json
msgctxt "infill label"
msgid "Infill"
@@ -2119,117 +2273,6 @@ msgid ""
"infill."
msgstr ""
-#: fdmprinter.def.json
-msgctxt "skin_preshrink label"
-msgid "Skin Removal Width"
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "skin_preshrink description"
-msgid ""
-"The largest width of skin areas which are to be removed. Every skin area "
-"smaller than this value will disappear. This can help in limiting the amount "
-"of time and material spent on printing top/bottom skin at slanted surfaces "
-"in the model."
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "top_skin_preshrink label"
-msgid "Top Skin Removal Width"
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "top_skin_preshrink description"
-msgid ""
-"The largest width of top skin areas which are to be removed. Every skin area "
-"smaller than this value will disappear. This can help in limiting the amount "
-"of time and material spent on printing top skin at slanted surfaces in the "
-"model."
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_preshrink label"
-msgid "Bottom Skin Removal Width"
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_preshrink description"
-msgid ""
-"The largest width of bottom skin areas which are to be removed. Every skin "
-"area smaller than this value will disappear. This can help in limiting the "
-"amount of time and material spent on printing bottom skin at slanted "
-"surfaces in the model."
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "expand_skins_expand_distance label"
-msgid "Skin Expand Distance"
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "expand_skins_expand_distance description"
-msgid ""
-"The distance the skins are expanded into the infill. Higher values makes the "
-"skin attach better to the infill pattern and makes the walls on neighboring "
-"layers adhere better to the skin. Lower values save amount of material used."
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "top_skin_expand_distance label"
-msgid "Top Skin Expand Distance"
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "top_skin_expand_distance description"
-msgid ""
-"The distance the top skins are expanded into the infill. Higher values makes "
-"the skin attach better to the infill pattern and makes the walls on the "
-"layer above adhere better to the skin. Lower values save amount of material "
-"used."
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_expand_distance label"
-msgid "Bottom Skin Expand Distance"
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_expand_distance description"
-msgid ""
-"The distance the bottom skins are expanded into the infill. Higher values "
-"makes the skin attach better to the infill pattern and makes the skin adhere "
-"better to the walls on the layer below. Lower values save amount of material "
-"used."
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "max_skin_angle_for_expansion label"
-msgid "Maximum Skin Angle for Expansion"
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "max_skin_angle_for_expansion description"
-msgid ""
-"Top and/or bottom surfaces of your object with an angle larger than this "
-"setting, won't have their top/bottom skin expanded. This avoids expanding "
-"the narrow skin areas that are created when the model surface has a near "
-"vertical slope. An angle of 0° is horizontal, while an angle of 90° is "
-"vertical."
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "min_skin_width_for_expansion label"
-msgid "Minimum Skin Width for Expansion"
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "min_skin_width_for_expansion description"
-msgid ""
-"Skin areas narrower than this are not expanded. This avoids expanding the "
-"narrow skin areas that are created when the model surface has a slope close "
-"to the vertical."
-msgstr ""
-
#: fdmprinter.def.json
msgctxt "skin_edge_support_thickness label"
msgid "Skin Edge Support Thickness"
@@ -2919,7 +2962,8 @@ msgstr ""
msgctxt "speed_layer_0 description"
msgid ""
"The speed for the initial layer. A lower value is advised to improve "
-"adhesion to the build plate."
+"adhesion to the build plate. Does not affect the build plate adhesion "
+"structures themselves, like brim and raft."
msgstr ""
#: fdmprinter.def.json
@@ -3612,8 +3656,9 @@ msgstr ""
#: fdmprinter.def.json
msgctxt "retraction_combing_max_distance description"
msgid ""
-"When non-zero, combing travel moves that are longer than this distance will "
-"use retraction."
+"When greater than zero, combing travel moves that are longer than this "
+"distance will use retraction. If set to zero, there is no maximum and "
+"combing moves will not use retraction."
msgstr ""
#: fdmprinter.def.json
@@ -5880,8 +5925,8 @@ msgctxt "infill_mesh_order description"
msgid ""
"Determines the priority of this mesh when considering multiple overlapping "
"infill meshes. Areas where multiple infill meshes overlap will take on the "
-"settings of the mesh with the lowest rank. An infill mesh with a higher "
-"order will modify the infill of infill meshes with lower order and normal "
+"settings of the mesh with the highest rank. An infill mesh with a higher "
+"rank will modify the infill of infill meshes with lower rank and normal "
"meshes."
msgstr ""
@@ -6306,6 +6351,19 @@ msgid ""
"build plate, 90° will not change the model in any way."
msgstr ""
+#: fdmprinter.def.json
+msgctxt "conical_overhang_hole_size label"
+msgid "Maximum Overhang Hole Area"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "conical_overhang_hole_size description"
+msgid ""
+"The maximum area of a hole in the base of the model before it's removed by "
+"Make Overhang Printable. Holes smaller than this will be retained. A value "
+"of 0 mm² will fill all holes in the models base."
+msgstr ""
+
#: fdmprinter.def.json
msgctxt "coasting_enable label"
msgid "Enable Coasting"
diff --git a/resources/i18n/fi_FI/cura.po b/resources/i18n/fi_FI/cura.po
index aa3178f13e..d8aaa50cbf 100644
--- a/resources/i18n/fi_FI/cura.po
+++ b/resources/i18n/fi_FI/cura.po
@@ -1,12 +1,12 @@
# Cura
-# Copyright (C) 2020 Ultimaker B.V.
+# Copyright (C) 2021 Ultimaker B.V.
# This file is distributed under the same license as the Cura package.
#
msgid ""
msgstr ""
-"Project-Id-Version: Cura 4.8\n"
+"Project-Id-Version: Cura 4.10\n"
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
-"POT-Creation-Date: 2020-10-19 13:15+0200\n"
+"POT-Creation-Date: 2021-06-10 17:35+0200\n"
"PO-Revision-Date: 2017-09-27 12:27+0200\n"
"Last-Translator: Bothof \n"
"Language-Team: Finnish\n"
@@ -18,7 +18,7 @@ msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/DiscoveredPrintersModel.py:83
#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:110
#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/QualityManagementModel.py:361
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1581
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1612
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:130
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:171
msgctxt "@label"
@@ -89,12 +89,12 @@ msgctxt "@text"
msgid "The draft profile is designed to print initial prototypes and concept validation with the intent of significant print time reduction."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:226
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:234
msgctxt "@label"
msgid "Custom Material"
msgstr "Mukautettu materiaali"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:227
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:235
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationMenu.qml:205
msgctxt "@label"
msgid "Custom"
@@ -116,7 +116,7 @@ msgctxt "@item:inlistbox"
msgid "All Files (*)"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/API/Account.py:178
+#: /home/trin/Gedeeld/Projects/Cura/cura/API/Account.py:181
msgctxt "@info:title"
msgid "Login failed"
msgstr ""
@@ -146,28 +146,33 @@ msgctxt "@info:title"
msgid "Can't Find Location"
msgstr "Paikkaa ei löydy"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:104
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:116
msgctxt "@info:backup_failed"
msgid "Could not create archive from user data directory: {}"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:110
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:122
#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:107
#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:113
msgctxt "@info:title"
msgid "Backup"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:123
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:135
msgctxt "@info:backup_failed"
msgid "Tried to restore a Cura backup without having proper data or meta data."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:134
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:146
msgctxt "@info:backup_failed"
msgid "Tried to restore a Cura backup that is higher than the current version."
msgstr ""
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:157
+msgctxt "@info:backup_failed"
+msgid "The following error occurred while trying to restore a Cura backup:"
+msgstr ""
+
#: /home/trin/Gedeeld/Projects/Cura/cura/BuildVolume.py:98
msgctxt "@info:status"
msgid "The build volume height has been reduced due to the value of the \"Print Sequence\" setting to prevent the gantry from colliding with printed models."
@@ -309,74 +314,74 @@ msgctxt "@action:button"
msgid "Send report"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:521
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:527
msgctxt "@info:progress"
msgid "Loading machines..."
msgstr "Ladataan laitteita..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:528
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:534
msgctxt "@info:progress"
msgid "Setting up preferences..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:657
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:672
msgctxt "@info:progress"
msgid "Initializing Active Machine..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:788
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:803
msgctxt "@info:progress"
msgid "Initializing machine manager..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:802
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:817
msgctxt "@info:progress"
msgid "Initializing build volume..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:870
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:888
msgctxt "@info:progress"
msgid "Setting up scene..."
msgstr "Asetetaan näkymää..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:906
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:924
msgctxt "@info:progress"
msgid "Loading interface..."
msgstr "Ladataan käyttöliittymää..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:911
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:929
msgctxt "@info:progress"
msgid "Initializing engine..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1221
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1246
#, python-format
msgctxt "@info 'width', 'depth' and 'height' are variable names that must NOT be translated; just translate the format of ##x##x## mm."
msgid "%(width).1f x %(depth).1f x %(height).1f mm"
msgstr "%(width).1f x %(depth).1f x %(height).1f mm"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1777
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1799
#, python-brace-format
msgctxt "@info:status"
msgid "Only one G-code file can be loaded at a time. Skipped importing {0}"
msgstr "Vain yksi G-code-tiedosto voidaan ladata kerralla. Tiedoston {0} tuonti ohitettiin."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1778
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:188
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:242
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1800
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:190
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:244
#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:153
#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:165
msgctxt "@info:title"
msgid "Warning"
msgstr "Varoitus"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1787
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1809
#, python-brace-format
msgctxt "@info:status"
msgid "Can't open any other file if G-code is loading. Skipped importing {0}"
msgstr "Muita tiedostoja ei voida ladata, kun G-code latautuu. Tiedoston {0} tuonti ohitettiin."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1788
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1810
#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:146
#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:153
#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:139
@@ -399,7 +404,7 @@ msgctxt "@info:title"
msgid "Placing Object"
msgstr "Sijoitetaan kappaletta"
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationHelpers.py:90
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationHelpers.py:92
msgctxt "@message"
msgid "Could not read response."
msgstr ""
@@ -419,12 +424,12 @@ msgctxt "@message"
msgid "Something unexpected happened when trying to log in, please try again."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:187
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:189
msgctxt "@info"
msgid "Unable to start a new sign in process. Check if another sign in attempt is still active."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:242
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:244
msgctxt "@info"
msgid "Unable to reach the Ultimaker account server."
msgstr ""
@@ -442,8 +447,8 @@ msgctxt "@label Don't translate the XML tag !"
msgid "The file {0} already exists. Are you sure you want to overwrite it?"
msgstr "Tiedosto {0} on jo olemassa. Haluatko varmasti kirjoittaa sen päälle?"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:452
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:455
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:457
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:460
msgctxt "@info:status"
msgid "Invalid file URL:"
msgstr ""
@@ -526,33 +531,33 @@ msgctxt "@info:status"
msgid "Profile {0} has an unknown file type or is corrupted."
msgstr "Profiililla {0} on tuntematon tiedostotyyppi tai se on vioittunut."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:423
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:426
msgctxt "@label"
msgid "Custom profile"
msgstr "Mukautettu profiili"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:439
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:442
msgctxt "@info:status"
msgid "Profile is missing a quality type."
msgstr "Profiilista puuttuu laatutyyppi."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:443
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:446
msgctxt "@info:status"
-msgid "Global stack is missing."
+msgid "There is no active printer yet."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:449
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:452
msgctxt "@info:status"
msgid "Unable to add the profile."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:463
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:466
#, python-brace-format
msgctxt "@info:status"
msgid "Quality type '{0}' is not compatible with the current active machine definition '{1}'."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:468
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:471
#, python-brace-format
msgctxt "@info:status"
msgid "Warning: The profile is not visible because its quality type '{0}' is not available for the current configuration. Switch to a material/nozzle combination that can use this quality type."
@@ -568,23 +573,23 @@ msgctxt "@info:No intent profile selected"
msgid "Default"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:712
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:713
#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:216
msgctxt "@label"
msgid "Nozzle"
msgstr "Suutin"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:860
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:856
msgctxt "@info:message Followed by a list of settings."
msgid "Settings have been changed to match the current availability of extruders:"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:862
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:858
msgctxt "@info:title"
msgid "Settings updated"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1447
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1478
msgctxt "@info:title"
msgid "Extruder(s) Disabled"
msgstr ""
@@ -597,13 +602,13 @@ msgid "Add"
msgstr "Lisää"
#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:26
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:263
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:272
msgctxt "@action:button"
msgid "Finish"
msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:33
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:441
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:445
#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:234
#: /home/trin/Gedeeld/Projects/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:150
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxProgressButton.qml:19
@@ -611,7 +616,7 @@ msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:352
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:58
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/PrintWindow.qml:42
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:87
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:82
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:292
msgctxt "@action:button"
msgid "Cancel"
@@ -623,76 +628,83 @@ msgctxt "@label"
msgid "Group #{group_nr}"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:83
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:82
msgctxt "@tooltip"
msgid "Outer Wall"
msgstr "Ulkoseinämä"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:84
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:83
msgctxt "@tooltip"
msgid "Inner Walls"
msgstr "Sisäseinämät"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:85
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:84
msgctxt "@tooltip"
msgid "Skin"
msgstr "Pintakalvo"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:86
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:85
msgctxt "@tooltip"
msgid "Infill"
msgstr "Täyttö"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:87
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:86
msgctxt "@tooltip"
msgid "Support Infill"
msgstr "Tuen täyttö"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:88
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:87
msgctxt "@tooltip"
msgid "Support Interface"
msgstr "Tukiliittymä"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:89
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:88
msgctxt "@tooltip"
msgid "Support"
msgstr "Tuki"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:90
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:89
msgctxt "@tooltip"
msgid "Skirt"
msgstr "Helma"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:91
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:90
msgctxt "@tooltip"
msgid "Prime Tower"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:92
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:91
msgctxt "@tooltip"
msgid "Travel"
msgstr "Siirtoliike"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:93
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:92
msgctxt "@tooltip"
msgid "Retractions"
msgstr "Takaisinvedot"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:94
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:93
msgctxt "@tooltip"
msgid "Other"
msgstr "Muu"
#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:56
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:259
msgctxt "@action:button"
msgid "Next"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WhatsNewPagesModel.py:17
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:268
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WhatsNewPagesModel.py:55
+msgctxt "@action:button"
+msgid "Skip"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WhatsNewPagesModel.py:60
#: /home/trin/Gedeeld/Projects/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:185
#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:128
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:482
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:173
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:485
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:174
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:127
msgctxt "@action:button"
msgid "Close"
@@ -713,29 +725,36 @@ msgid ""
"
"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:535
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:540
#, python-brace-format
msgctxt "@info:status Don't translate the XML tags or !"
msgid "Project file {0} contains an unknown machine type {1}. Cannot import the machine. Models will be imported instead."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:538
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:543
msgctxt "@info:title"
msgid "Open Project File"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:634
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:639
#, python-brace-format
msgctxt "@info:error Don't translate the XML tags or !"
msgid "Project file {0} is suddenly inaccessible: {1}."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:635
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:640
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:647
msgctxt "@info:title"
msgid "Can't Open Project File"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:686
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:646
+#, python-brace-format
+msgctxt "@info:error Don't translate the XML tags or !"
+msgid "Project file {0} is corrupt: {1}."
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:698
#, python-brace-format
msgctxt "@info:error Don't translate the XML tag !"
msgid "Project file {0} is made using profiles that are unknown to this version of Ultimaker Cura."
@@ -773,7 +792,7 @@ msgctxt "@error:zip"
msgid "The operating system does not allow saving a project file to this location or with this file name."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWriter.py:185
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWriter.py:206
msgctxt "@error:zip"
msgid "Error writing 3mf file."
msgstr ""
@@ -828,8 +847,8 @@ msgctxt "@error:file_size"
msgid "The backup exceeds the maximum file size."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DriveApiService.py:82
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/RestoreBackupJob.py:23
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DriveApiService.py:86
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/RestoreBackupJob.py:26
msgctxt "@info:backup_status"
msgid "There was an error trying to restore your backup."
msgstr ""
@@ -839,45 +858,45 @@ msgctxt "@item:inmenu"
msgid "Manage backups"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:356
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:382
msgctxt "@info:status"
msgid "Unable to slice with the current material as it is incompatible with the selected machine or configuration."
msgstr "Viipalointi ei onnistu nykyisellä materiaalilla, sillä se ei sovellu käytettäväksi valitun laitteen tai kokoonpanon kanssa."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:356
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:387
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:411
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:420
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:429
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:441
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:382
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:413
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:437
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:446
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:455
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:467
msgctxt "@info:title"
msgid "Unable to slice"
msgstr "Viipalointi ei onnistu"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:386
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:412
#, python-brace-format
msgctxt "@info:status"
msgid "Unable to slice with the current settings. The following settings have errors: {0}"
msgstr "Viipalointi ei onnistu nykyisten asetuksien ollessa voimassa. Seuraavissa asetuksissa on virheitä: {0}"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:410
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:436
#, python-brace-format
msgctxt "@info:status"
msgid "Unable to slice due to some per-model settings. The following settings have errors on one or more models: {error_labels}"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:419
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:445
msgctxt "@info:status"
msgid "Unable to slice because the prime tower or prime position(s) are invalid."
msgstr "Viipalointi ei onnistu, koska esitäyttötorni tai esitäytön sijainti tai sijainnit eivät kelpaa."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:428
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:454
#, python-format
msgctxt "@info:status"
msgid "Unable to slice because there are objects associated with disabled Extruder %s."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:437
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:463
msgctxt "@info:status"
msgid ""
"Please review settings and check if your models:\n"
@@ -1142,28 +1161,28 @@ msgctxt "@item:intext"
msgid "Removable Drive"
msgstr "Siirrettävä asema"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:121
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:128
msgctxt "@info:status"
msgid "Cura does not accurately display layers when Wire Printing is enabled."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:122
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:129
msgctxt "@info:title"
msgid "Simulation View"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:123
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:130
msgctxt "@info:status"
msgid "Nothing is shown because you need to slice first."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:123
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:130
msgctxt "@info:title"
msgid "No layers to show"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:124
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:73
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:131
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:74
msgctxt "@info:option_text"
msgid "Do not show this message again"
msgstr ""
@@ -1173,14 +1192,19 @@ msgctxt "@item:inlistbox"
msgid "Layer view"
msgstr "Kerrosnäkymä"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:70
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:71
msgctxt "@info:status"
-msgid "Your model is not manifold. The highlighted areas indicate either missing or extraneous surfaces."
+msgid "The highlighted areas indicate either missing or extraneous surfaces. Fix your model and open it again into Cura."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:72
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:73
msgctxt "@info:title"
-msgid "Model errors"
+msgid "Model Errors"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:79
+msgctxt "@action:button"
+msgid "Learn more"
msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/__init__.py:12
@@ -1209,7 +1233,7 @@ msgctxt "@info:title"
msgid "Changes detected from your Ultimaker account"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py:146
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py:145
msgctxt "@action:button"
msgid "Sync"
msgstr ""
@@ -1245,7 +1269,7 @@ msgctxt "@info:generic"
msgid "You need to quit and restart {} before changes have effect."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/SyncOrchestrator.py:76
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/SyncOrchestrator.py:79
msgctxt "@info:generic"
msgid "{} plugins failed to download"
msgstr ""
@@ -1286,7 +1310,11 @@ msgctxt "@item:inlistbox"
msgid "Ultimaker Format Package"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:146
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:57
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:72
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:94
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:149
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:159
msgctxt "@info:error"
msgid "Can't write to UFP file:"
msgstr ""
@@ -1301,22 +1329,22 @@ msgctxt "@action"
msgid "Select upgrades"
msgstr "Valitse päivitykset"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:152
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:154
msgctxt "@action:button"
msgid "Print via cloud"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:153
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:155
msgctxt "@properties:tooltip"
msgid "Print via cloud"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:154
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:156
msgctxt "@info:status"
msgid "Connected via cloud"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:264
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:270
#, python-brace-format
msgctxt "@error:send"
msgid "Unknown error code when uploading print job: {0}"
@@ -1608,82 +1636,82 @@ msgctxt "@info:tooltip"
msgid "Some things could be problematic in this print. Click to see tips for adjustment."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:14
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:15
msgctxt "@title:window"
msgid "Open Project"
msgstr "Avaa projekti"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:61
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:62
msgctxt "@action:ComboBox Update/override existing profile"
msgid "Update existing"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:62
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:63
msgctxt "@action:ComboBox Save settings in a new profile"
msgid "Create new"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:74
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:75
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:69
msgctxt "@action:title"
msgid "Summary - Cura Project"
msgstr "Yhteenveto – Cura-projekti"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:96
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:97
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:93
msgctxt "@action:label"
msgid "Printer settings"
msgstr "Tulostimen asetukset"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:112
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:113
msgctxt "@info:tooltip"
msgid "How should the conflict in the machine be resolved?"
msgstr "Miten laitteen ristiriita pitäisi ratkaista?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:165
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:167
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:102
msgctxt "@action:label"
msgid "Type"
msgstr "Tyyppi"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:181
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:183
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:117
msgctxt "@action:label"
msgid "Printer Group"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:203
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:205
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:218
msgctxt "@action:label"
msgid "Profile settings"
msgstr "Profiilin asetukset"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:219
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:221
msgctxt "@info:tooltip"
msgid "How should the conflict in the profile be resolved?"
msgstr "Miten profiilin ristiriita pitäisi ratkaista?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:239
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:349
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:242
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:353
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:117
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:242
msgctxt "@action:label"
msgid "Name"
msgstr "Nimi"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:255
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:258
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:259
msgctxt "@action:label"
msgid "Intent"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:271
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:274
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:226
msgctxt "@action:label"
msgid "Not in profile"
msgstr "Ei profiilissa"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:276
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:279
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:231
msgctxt "@action:label"
msgid "%1 override"
@@ -1691,54 +1719,54 @@ msgid_plural "%1 overrides"
msgstr[0] "%1 ohitus"
msgstr[1] "%1 ohitusta"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:287
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:290
msgctxt "@action:label"
msgid "Derivative from"
msgstr "Johdettu seuraavista"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:292
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:295
msgctxt "@action:label"
msgid "%1, %2 override"
msgid_plural "%1, %2 overrides"
msgstr[0] "%1, %2 ohitus"
msgstr[1] "%1, %2 ohitusta"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:309
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:312
msgctxt "@action:label"
msgid "Material settings"
msgstr "Materiaaliasetukset"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:325
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:328
msgctxt "@info:tooltip"
msgid "How should the conflict in the material be resolved?"
msgstr "Miten materiaalin ristiriita pitäisi ratkaista?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:369
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:373
msgctxt "@action:label"
msgid "Setting visibility"
msgstr "Asetusten näkyvyys"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:378
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:382
msgctxt "@action:label"
msgid "Mode"
msgstr "Tila"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:394
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:398
msgctxt "@action:label"
msgid "Visible settings:"
msgstr "Näkyvät asetukset:"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:399
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:403
msgctxt "@action:label"
msgid "%1 out of %2"
msgstr "%1/%2"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:425
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:429
msgctxt "@action:warning"
msgid "Loading a project will clear all models on the build plate."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:453
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:457
msgctxt "@action:button"
msgid "Open"
msgstr "Avaa"
@@ -1840,8 +1868,8 @@ msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/qml/pages/WelcomePage.qml:51
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/WelcomePage.qml:39
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:68
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:125
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:53
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:199
msgctxt "@button"
msgid "Sign in"
msgstr ""
@@ -2075,12 +2103,12 @@ msgctxt "@label"
msgid "Cooling Fan Number"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:162
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:163
msgctxt "@title:label"
msgid "Extruder Start G-code"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:176
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:177
msgctxt "@title:label"
msgid "Extruder End G-code"
msgstr ""
@@ -2165,12 +2193,17 @@ msgctxt "@label"
msgid "Number of Extruders"
msgstr "Suulakkeiden määrä"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:374
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:345
+msgctxt "@label"
+msgid "Apply Extruder offsets to GCode"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:393
msgctxt "@title:label"
msgid "Start G-code"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:385
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:404
msgctxt "@title:label"
msgid "End G-code"
msgstr ""
@@ -2194,6 +2227,11 @@ msgctxt "@label link to technical assistance"
msgid "View user manuals online"
msgstr ""
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MonitorStage/MonitorMain.qml:172
+msgctxt "@info"
+msgid "In order to monitor your print from Cura, please connect the printer."
+msgstr ""
+
#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml:42
msgctxt "@label"
msgid "Mesh Type"
@@ -2240,7 +2278,7 @@ msgid "Select Settings to Customize for this model"
msgstr "Valitse tätä mallia varten mukautettavat asetukset"
#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:55
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:94
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:96
msgctxt "@label:textbox"
msgid "Filter..."
msgstr "Suodatin..."
@@ -2250,32 +2288,32 @@ msgctxt "@label:checkbox"
msgid "Show all"
msgstr "Näytä kaikki"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:18
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:20
msgctxt "@title:window"
msgid "Post Processing Plugin"
msgstr "Jälkikäsittelylisäosa"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:57
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:59
msgctxt "@label"
msgid "Post Processing Scripts"
msgstr "Jälkikäsittelykomentosarjat"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:233
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:235
msgctxt "@action"
msgid "Add a script"
msgstr "Lisää komentosarja"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:279
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:282
msgctxt "@label"
msgid "Settings"
msgstr "Asetukset"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:499
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:502
msgctxt "@info:tooltip"
msgid "Change active post-processing scripts."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:503
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:506
msgctxt "@info:tooltip"
msgid "The following script is active:"
msgid_plural "The following scripts are active:"
@@ -2288,78 +2326,93 @@ msgctxt "@label"
msgid "Color scheme"
msgstr "Värimalli"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:107
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:110
msgctxt "@label:listbox"
msgid "Material Color"
msgstr "Materiaalin väri"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:111
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:114
msgctxt "@label:listbox"
msgid "Line Type"
msgstr "Linjojen tyyppi"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:115
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:118
msgctxt "@label:listbox"
msgid "Speed"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:119
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:122
msgctxt "@label:listbox"
-msgid "Layer thickness"
+msgid "Layer Thickness"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:156
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:126
+msgctxt "@label:listbox"
+msgid "Line Width"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:130
+msgctxt "@label:listbox"
+msgid "Flow"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:171
msgctxt "@label"
msgid "Compatibility Mode"
msgstr "Yhteensopivuustila"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:230
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:245
msgctxt "@label"
msgid "Travels"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:236
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:251
msgctxt "@label"
msgid "Helpers"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:242
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:257
msgctxt "@label"
msgid "Shell"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:248
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:263
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedInfillDensitySelector.qml:65
msgctxt "@label"
msgid "Infill"
msgstr "Täyttö"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:298
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:271
+msgctxt "@label"
+msgid "Starts"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:322
msgctxt "@label"
msgid "Only Show Top Layers"
msgstr "Näytä vain yläkerrokset"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:308
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:332
msgctxt "@label"
msgid "Show 5 Detailed Layers On Top"
msgstr "Näytä 5 yksityiskohtaista kerrosta ylhäällä"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:322
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:346
msgctxt "@label"
msgid "Top / Bottom"
msgstr "Yläosa/alaosa"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:326
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:350
msgctxt "@label"
msgid "Inner Wall"
msgstr "Sisäseinämä"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:384
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:419
msgctxt "@label"
msgid "min"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:433
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:488
msgctxt "@label"
msgid "max"
msgstr ""
@@ -2500,7 +2553,7 @@ msgid "Plugins"
msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxHeader.qml:44
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:466
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:457
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:89
msgctxt "@title:tab"
msgid "Materials"
@@ -2549,6 +2602,7 @@ msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/dialogs/CompatibilityDialog.qml:23
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:123
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/FirstStartMachineActionsContent.qml:77
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:178
msgctxt "@button"
msgid "Next"
msgstr ""
@@ -2892,7 +2946,7 @@ msgid "Delete"
msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:100
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:289
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:290
msgctxt "@label"
msgid "Resume"
msgstr ""
@@ -2908,8 +2962,8 @@ msgid "Resuming..."
msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:106
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:284
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:293
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:285
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:294
msgctxt "@label"
msgid "Pause"
msgstr ""
@@ -2950,7 +3004,7 @@ msgid "Are you sure you want to abort %1?"
msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:164
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:335
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:336
msgctxt "@window:title"
msgid "Abort print"
msgstr "Keskeytä tulostus"
@@ -2961,7 +3015,7 @@ msgid "Manage printer"
msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:254
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:519
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:523
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:250
msgctxt "@info"
msgid "Please update your printer's firmware to manage the queue remotely."
@@ -2987,27 +3041,34 @@ msgctxt "@label:status"
msgid "Idle"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:365
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:364
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:84
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:86
+msgctxt "@label:status"
+msgid "Preparing..."
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:369
msgctxt "@label:status"
msgid "Printing"
msgstr "Tulostetaan"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:406
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:410
msgctxt "@label"
msgid "Untitled"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:427
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:431
msgctxt "@label"
msgid "Anonymous"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:454
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:458
msgctxt "@label:status"
msgid "Requires configuration changes"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:492
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:496
msgctxt "@action:button"
msgid "Details"
msgstr ""
@@ -3034,12 +3095,6 @@ msgctxt "@label:status"
msgid "Finished"
msgstr "Valmis"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:84
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:86
-msgctxt "@label:status"
-msgid "Preparing..."
-msgstr ""
-
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:88
msgctxt "@label:status"
msgid "Aborting..."
@@ -3120,23 +3175,23 @@ msgctxt "@action:button"
msgid "Sign in"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:40
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:20
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:64
msgctxt "@label"
-msgid "Your key to connected 3D printing"
+msgid "Sign in to the Ultimaker platform"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:51
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:42
msgctxt "@text"
msgid ""
-"- Customize your experience with more print profiles and plugins\n"
-"- Stay flexible by syncing your setup and loading it anywhere\n"
-"- Increase efficiency with a remote workflow on Ultimaker printers"
+"- Add material profiles and plug-ins from the Marketplace\n"
+"- Back-up and sync your material profiles and plug-ins\n"
+"- Share ideas and get help from 48,000+ users in the Ultimaker community"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:78
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:142
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:62
msgctxt "@button"
-msgid "Create account"
+msgid "Create a free Ultimaker account"
msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/SyncState.qml:28
@@ -3244,309 +3299,308 @@ msgctxt "@button"
msgid "Cancel"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:82
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:83
msgctxt "@action:inmenu"
msgid "Show Online Troubleshooting Guide"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:89
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:90
msgctxt "@action:inmenu"
msgid "Toggle Full Screen"
msgstr "Vaihda koko näyttöön"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:97
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:98
msgctxt "@action:inmenu"
msgid "Exit Full Screen"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:104
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:105
msgctxt "@action:inmenu menubar:edit"
msgid "&Undo"
msgstr "&Kumoa"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:114
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:115
msgctxt "@action:inmenu menubar:edit"
msgid "&Redo"
msgstr "Tee &uudelleen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:124
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:125
msgctxt "@action:inmenu menubar:file"
msgid "&Quit"
msgstr "&Lopeta"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:132
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:133
msgctxt "@action:inmenu menubar:view"
msgid "3D View"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:139
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:140
msgctxt "@action:inmenu menubar:view"
msgid "Front View"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:146
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:147
msgctxt "@action:inmenu menubar:view"
msgid "Top View"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:153
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:154
+msgctxt "@action:inmenu menubar:view"
+msgid "Bottom View"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:161
msgctxt "@action:inmenu menubar:view"
msgid "Left Side View"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:160
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:168
msgctxt "@action:inmenu menubar:view"
msgid "Right Side View"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:167
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:175
msgctxt "@action:inmenu"
msgid "Configure Cura..."
msgstr "Määritä Curan asetukset..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:174
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:182
msgctxt "@action:inmenu menubar:printer"
msgid "&Add Printer..."
msgstr "L&isää tulostin..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:180
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:188
msgctxt "@action:inmenu menubar:printer"
msgid "Manage Pr&inters..."
msgstr "Tulostinten &hallinta..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:187
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:195
msgctxt "@action:inmenu"
msgid "Manage Materials..."
msgstr "Hallitse materiaaleja..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:195
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:203
msgctxt "@action:inmenu"
msgid "Add more materials from Marketplace"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:202
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:210
msgctxt "@action:inmenu menubar:profile"
msgid "&Update profile with current settings/overrides"
msgstr "&Päivitä nykyiset asetukset tai ohitukset profiiliin"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:210
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:218
msgctxt "@action:inmenu menubar:profile"
msgid "&Discard current changes"
msgstr "&Hylkää tehdyt muutokset"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:222
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:230
msgctxt "@action:inmenu menubar:profile"
msgid "&Create profile from current settings/overrides..."
msgstr "&Luo profiili nykyisten asetusten tai ohitusten perusteella..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:228
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:236
msgctxt "@action:inmenu menubar:profile"
msgid "Manage Profiles..."
msgstr "Profiilien hallinta..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:236
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:244
msgctxt "@action:inmenu menubar:help"
msgid "Show Online &Documentation"
msgstr "Näytä sähköinen &dokumentaatio"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:244
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:252
msgctxt "@action:inmenu menubar:help"
msgid "Report a &Bug"
msgstr "Ilmoita &virheestä"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:252
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:260
msgctxt "@action:inmenu menubar:help"
msgid "What's New"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:258
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:266
msgctxt "@action:inmenu menubar:help"
msgid "About..."
msgstr "Tietoja..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:265
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:273
msgctxt "@action:inmenu menubar:edit"
-msgid "Delete Selected Model"
-msgid_plural "Delete Selected Models"
-msgstr[0] "Poista valittu malli"
-msgstr[1] "Poista valitut mallit"
+msgid "Delete Selected"
+msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:275
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:283
msgctxt "@action:inmenu menubar:edit"
-msgid "Center Selected Model"
-msgid_plural "Center Selected Models"
-msgstr[0] "Keskitä valittu malli"
-msgstr[1] "Keskitä valitut mallit"
+msgid "Center Selected"
+msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:284
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:292
msgctxt "@action:inmenu menubar:edit"
-msgid "Multiply Selected Model"
-msgid_plural "Multiply Selected Models"
-msgstr[0] "Kerro valittu malli"
-msgstr[1] "Kerro valitut mallit"
+msgid "Multiply Selected"
+msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:293
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:301
msgctxt "@action:inmenu"
msgid "Delete Model"
msgstr "Poista malli"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:301
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:309
msgctxt "@action:inmenu"
msgid "Ce&nter Model on Platform"
msgstr "Ke&skitä malli alustalle"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:307
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:315
msgctxt "@action:inmenu menubar:edit"
msgid "&Group Models"
msgstr "&Ryhmittele mallit"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:327
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:335
msgctxt "@action:inmenu menubar:edit"
msgid "Ungroup Models"
msgstr "Poista mallien ryhmitys"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:337
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:345
msgctxt "@action:inmenu menubar:edit"
msgid "&Merge Models"
msgstr "&Yhdistä mallit"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:347
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:355
msgctxt "@action:inmenu"
msgid "&Multiply Model..."
msgstr "&Kerro malli..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:354
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:362
msgctxt "@action:inmenu menubar:edit"
msgid "Select All Models"
msgstr "Valitse kaikki mallit"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:364
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:372
msgctxt "@action:inmenu menubar:edit"
msgid "Clear Build Plate"
msgstr "Tyhjennä tulostusalusta"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:374
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:382
msgctxt "@action:inmenu menubar:file"
msgid "Reload All Models"
msgstr "Lataa kaikki mallit uudelleen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:383
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:391
msgctxt "@action:inmenu menubar:edit"
msgid "Arrange All Models To All Build Plates"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:390
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:398
msgctxt "@action:inmenu menubar:edit"
msgid "Arrange All Models"
msgstr "Järjestä kaikki mallit"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:398
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:406
msgctxt "@action:inmenu menubar:edit"
msgid "Arrange Selection"
msgstr "Järjestä valinta"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:405
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:413
msgctxt "@action:inmenu menubar:edit"
msgid "Reset All Model Positions"
msgstr "Määritä kaikkien mallien positiot uudelleen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:412
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:420
msgctxt "@action:inmenu menubar:edit"
msgid "Reset All Model Transformations"
msgstr "Määritä kaikkien mallien muutokset uudelleen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:419
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:429
msgctxt "@action:inmenu menubar:file"
msgid "&Open File(s)..."
msgstr "&Avaa tiedosto(t)..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:427
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:439
msgctxt "@action:inmenu menubar:file"
msgid "&New Project..."
msgstr "&Uusi projekti..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:434
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:446
msgctxt "@action:inmenu menubar:help"
msgid "Show Configuration Folder"
msgstr "Näytä määrityskansio"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:441
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:538
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:453
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:550
msgctxt "@action:menu"
msgid "Configure setting visibility..."
msgstr "Määritä asetusten näkyvyys..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:448
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:460
msgctxt "@action:menu"
msgid "&Marketplace"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:266
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:257
msgctxt "@label"
msgid "This package will be installed after restarting."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:459
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:15
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:450
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:17
msgctxt "@title:tab"
msgid "General"
msgstr "Yleiset"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:462
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:453
msgctxt "@title:tab"
msgid "Settings"
msgstr "Asetukset"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:464
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:455
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:16
msgctxt "@title:tab"
msgid "Printers"
msgstr "Tulostimet"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:468
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:459
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:34
msgctxt "@title:tab"
msgid "Profiles"
msgstr "Profiilit"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:587
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:576
msgctxt "@title:window %1 is the application name"
msgid "Closing %1"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:588
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:600
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:577
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:589
msgctxt "@label %1 is the application name"
msgid "Are you sure you want to exit %1?"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:638
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:627
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:19
msgctxt "@title:window"
msgid "Open file(s)"
msgstr "Avaa tiedosto(t)"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:744
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:737
msgctxt "@window:title"
msgid "Install Package"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:752
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:745
msgctxt "@title:window"
msgid "Open File(s)"
msgstr "Avaa tiedosto(t)"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:755
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:748
msgctxt "@text:window"
msgid "We have found one or more G-Code files within the files you have selected. You can only open one G-Code file at a time. If you want to open a G-Code file, please just select only one."
msgstr "Löysimme vähintään yhden Gcode-tiedoston valitsemiesi tiedostojen joukosta. Voit avata vain yhden Gcode-tiedoston kerrallaan. Jos haluat avata Gcode-tiedoston, valitse vain yksi."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:858
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:857
msgctxt "@title:window"
msgid "Add Printer"
msgstr "Lisää tulostin"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:866
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:865
msgctxt "@title:window"
msgid "What's New"
msgstr ""
@@ -3696,17 +3750,27 @@ msgctxt "@label"
msgid "Python bindings for libnest2d"
msgstr ""
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:161
+msgctxt "@label"
+msgid "Support library for system keyring access"
+msgstr ""
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:162
msgctxt "@label"
+msgid "Python extensions for Microsoft Windows"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:163
+msgctxt "@label"
msgid "Font"
msgstr "Fontti"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:163
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:164
msgctxt "@label"
msgid "SVG icons"
msgstr "SVG-kuvakkeet"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:164
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:165
msgctxt "@label"
msgid "Linux cross-distribution application deployment"
msgstr ""
@@ -3716,22 +3780,22 @@ msgctxt "@title:window"
msgid "Open project file"
msgstr "Avaa projektitiedosto"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:93
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:88
msgctxt "@text:window"
msgid "This is a Cura project file. Would you like to open it as a project or import the models from it?"
msgstr "Tämä on Cura-projektitiedosto. Haluatko avata sen projektina vai tuoda siinä olevat mallit?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:103
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:98
msgctxt "@text:window"
msgid "Remember my choice"
msgstr "Muista valintani"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:122
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:117
msgctxt "@action:button"
msgid "Open as project"
msgstr "Avaa projektina"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:131
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:126
msgctxt "@action:button"
msgid "Import models"
msgstr "Tuo mallit"
@@ -3760,7 +3824,7 @@ msgid "Current changes"
msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:158
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:747
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:733
msgctxt "@option:discardOrKeep"
msgid "Always ask me this"
msgstr "Kysy aina"
@@ -3785,12 +3849,12 @@ msgctxt "@action:button"
msgid "Keep changes"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:64
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:59
msgctxt "@text:window"
msgid "We have found one or more project file(s) within the files you have selected. You can open only one project file at a time. We suggest to only import models from those files. Would you like to proceed?"
msgstr "Löysimme vähintään yhden projektitiedoston valitsemiesi tiedostojen joukosta. Voit avata vain yhden projektitiedoston kerrallaan. Suosittelemme, että tuot vain malleja niistä tiedostoista. Haluatko jatkaa?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:99
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:94
msgctxt "@action:button"
msgid "Import all as models"
msgstr "Tuo kaikki malleina"
@@ -3945,7 +4009,7 @@ msgctxt "@label"
msgid "Material"
msgstr "Materiaali"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/CustomConfiguration.qml:394
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/CustomConfiguration.qml:407
msgctxt "@label"
msgid "Use glue for better adhesion with this material combination."
msgstr ""
@@ -3969,17 +4033,17 @@ msgctxt "@label"
msgid "Number of Copies"
msgstr "Kopioiden määrä"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:33
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:41
msgctxt "@title:menu menubar:file"
msgid "&Save Project..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:54
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:74
msgctxt "@title:menu menubar:file"
msgid "&Export..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:65
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:85
msgctxt "@action:inmenu menubar:file"
msgid "Export Selection..."
msgstr ""
@@ -3999,6 +4063,11 @@ msgctxt "@label:category menu label"
msgid "Generic"
msgstr ""
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/OpenFilesMenu.qml:15
+msgctxt "@title:menu menubar:file"
+msgid "Open File(s)..."
+msgstr ""
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/PrinterMenu.qml:25
msgctxt "@label:category menu label"
msgid "Network enabled printers"
@@ -4014,6 +4083,11 @@ msgctxt "@title:menu menubar:file"
msgid "Open &Recent"
msgstr "Avaa &viimeisin"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SaveProjectMenu.qml:15
+msgctxt "@title:menu menubar:file"
+msgid "Save Project..."
+msgstr ""
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingsMenu.qml:15
msgctxt "@title:menu menubar:settings"
msgid "&Printer"
@@ -4039,17 +4113,17 @@ msgctxt "@action:inmenu"
msgid "Disable Extruder"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:13
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:16
msgctxt "@action:inmenu"
msgid "Visible Settings"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:42
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:45
msgctxt "@action:inmenu"
msgid "Collapse All Categories"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:51
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:54
msgctxt "@action:inmenu"
msgid "Manage Setting Visibility..."
msgstr ""
@@ -4059,22 +4133,22 @@ msgctxt "@action:inmenu menubar:view"
msgid "&Camera position"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:44
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:45
msgctxt "@action:inmenu menubar:view"
msgid "Camera view"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:47
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:48
msgctxt "@action:inmenu menubar:view"
msgid "Perspective"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:59
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:60
msgctxt "@action:inmenu menubar:view"
msgid "Orthographic"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:80
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:81
msgctxt "@action:inmenu menubar:view"
msgid "&Build plate"
msgstr ""
@@ -4119,12 +4193,12 @@ msgctxt "@label:MonitorStatus"
msgid "Please remove the print"
msgstr "Poista tuloste"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:325
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:326
msgctxt "@label"
msgid "Abort Print"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:337
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:338
msgctxt "@label"
msgid "Are you sure you want to abort the print?"
msgstr "Haluatko varmasti keskeyttää tulostuksen?"
@@ -4166,301 +4240,301 @@ msgctxt "@label"
msgid "Interface"
msgstr "Käyttöliittymä"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:216
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:209
msgctxt "@label"
msgid "Currency:"
msgstr "Valuutta:"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:229
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:222
msgctxt "@label"
msgid "Theme:"
msgstr "Teema:"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:285
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:267
msgctxt "@label"
msgid "You will need to restart the application for these changes to have effect."
msgstr "Sovellus on käynnistettävä uudelleen, jotta nämä muutokset tulevat voimaan."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:302
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:284
msgctxt "@info:tooltip"
msgid "Slice automatically when changing settings."
msgstr "Viipaloi automaattisesti, kun asetuksia muutetaan."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:310
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:292
msgctxt "@option:check"
msgid "Slice automatically"
msgstr "Viipaloi automaattisesti"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:324
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:306
msgctxt "@label"
msgid "Viewport behavior"
msgstr "Näyttöikkunan käyttäytyminen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:332
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:314
msgctxt "@info:tooltip"
msgid "Highlight unsupported areas of the model in red. Without support these areas will not print properly."
msgstr "Korosta mallin vailla tukea olevat alueet punaisella. Ilman tukea nämä alueet eivät tulostu kunnolla."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:341
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:323
msgctxt "@option:check"
msgid "Display overhang"
msgstr "Näytä uloke"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:351
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:333
msgctxt "@info:tooltip"
msgid "Highlight missing or extraneous surfaces of the model using warning signs. The toolpaths will often be missing parts of the intended geometry."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:360
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:342
msgctxt "@option:check"
msgid "Display model errors"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:368
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:350
msgctxt "@info:tooltip"
msgid "Moves the camera so the model is in the center of the view when a model is selected"
msgstr "Siirtää kameraa siten, että valittuna oleva malli on näkymän keskellä."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:373
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:355
msgctxt "@action:button"
msgid "Center camera when item is selected"
msgstr "Keskitä kamera kun kohde on valittu"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:383
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:365
msgctxt "@info:tooltip"
msgid "Should the default zoom behavior of cura be inverted?"
msgstr "Pitääkö Curan oletusarvoinen zoom-toimintatapa muuttaa päinvastaiseksi?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:388
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:370
msgctxt "@action:button"
msgid "Invert the direction of camera zoom."
msgstr "Käännä kameran zoomin suunta päinvastaiseksi."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:404
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:386
msgctxt "@info:tooltip"
msgid "Should zooming move in the direction of the mouse?"
msgstr "Tuleeko zoomauksen siirtyä hiiren suuntaan?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:404
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:386
msgctxt "@info:tooltip"
msgid "Zooming towards the mouse is not supported in the orthographic perspective."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:409
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:391
msgctxt "@action:button"
msgid "Zoom toward mouse direction"
msgstr "Zoomaa hiiren suuntaan"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:435
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:417
msgctxt "@info:tooltip"
msgid "Should models on the platform be moved so that they no longer intersect?"
msgstr "Pitäisikö alustalla olevia malleja siirtää niin, etteivät ne enää leikkaa toisiaan?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:440
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:422
msgctxt "@option:check"
msgid "Ensure models are kept apart"
msgstr "Varmista, että mallit ovat erillään"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:449
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:431
msgctxt "@info:tooltip"
msgid "Should models on the platform be moved down to touch the build plate?"
msgstr "Pitäisikö tulostusalueella olevia malleja siirtää alas niin, että ne koskettavat tulostusalustaa?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:454
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:436
msgctxt "@option:check"
msgid "Automatically drop models to the build plate"
msgstr "Pudota mallit automaattisesti alustalle"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:466
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:448
msgctxt "@info:tooltip"
msgid "Show caution message in g-code reader."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:475
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:457
msgctxt "@option:check"
msgid "Caution message in g-code reader"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:483
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:465
msgctxt "@info:tooltip"
msgid "Should layer be forced into compatibility mode?"
msgstr "Pakotetaanko kerros yhteensopivuustilaan?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:488
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:470
msgctxt "@option:check"
msgid "Force layer view compatibility mode (restart required)"
msgstr "Pakota kerrosnäkymän yhteensopivuustila (vaatii uudelleenkäynnistyksen)"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:498
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:480
msgctxt "@info:tooltip"
msgid "Should Cura open at the location it was closed?"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:503
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:485
msgctxt "@option:check"
msgid "Restore window position on start"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:513
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:495
msgctxt "@info:tooltip"
msgid "What type of camera rendering should be used?"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:520
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:502
msgctxt "@window:text"
msgid "Camera rendering:"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:531
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:509
msgid "Perspective"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:532
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:510
msgid "Orthographic"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:563
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:548
msgctxt "@label"
msgid "Opening and saving files"
msgstr "Tiedostojen avaaminen ja tallentaminen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:570
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:555
msgctxt "@info:tooltip"
msgid "Should opening files from the desktop or external applications open in the same instance of Cura?"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:575
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:560
msgctxt "@option:check"
msgid "Use a single instance of Cura"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:585
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:570
msgctxt "@info:tooltip"
msgid "Should models be scaled to the build volume if they are too large?"
msgstr "Pitäisikö mallit skaalata tulostustilavuuteen, jos ne ovat liian isoja?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:590
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:575
msgctxt "@option:check"
msgid "Scale large models"
msgstr "Skaalaa suuret mallit"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:600
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:585
msgctxt "@info:tooltip"
msgid "An model may appear extremely small if its unit is for example in meters rather than millimeters. Should these models be scaled up?"
msgstr "Malli voi vaikuttaa erittäin pieneltä, jos sen koko on ilmoitettu esimerkiksi metreissä eikä millimetreissä. Pitäisikö nämä mallit suurentaa?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:605
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:590
msgctxt "@option:check"
msgid "Scale extremely small models"
msgstr "Skaalaa erittäin pienet mallit"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:615
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:600
msgctxt "@info:tooltip"
msgid "Should models be selected after they are loaded?"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:620
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:605
msgctxt "@option:check"
msgid "Select models when loaded"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:630
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:615
msgctxt "@info:tooltip"
msgid "Should a prefix based on the printer name be added to the print job name automatically?"
msgstr "Pitäisikö tulostustyön nimeen lisätä automaattisesti tulostimen nimeen perustuva etuliite?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:635
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:620
msgctxt "@option:check"
msgid "Add machine prefix to job name"
msgstr "Lisää laitteen etuliite työn nimeen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:645
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:630
msgctxt "@info:tooltip"
msgid "Should a summary be shown when saving a project file?"
msgstr "Näytetäänkö yhteenveto, kun projektitiedosto tallennetaan?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:649
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:634
msgctxt "@option:check"
msgid "Show summary dialog when saving project"
msgstr "Näytä yhteenvetoikkuna, kun projekti tallennetaan"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:659
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:644
msgctxt "@info:tooltip"
msgid "Default behavior when opening a project file"
msgstr "Projektitiedoston avaamisen oletustoimintatapa"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:667
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:652
msgctxt "@window:text"
msgid "Default behavior when opening a project file: "
msgstr "Projektitiedoston avaamisen oletustoimintatapa: "
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:681
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:666
msgctxt "@option:openProject"
msgid "Always ask me this"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:682
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:667
msgctxt "@option:openProject"
msgid "Always open as a project"
msgstr "Avaa aina projektina"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:683
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:668
msgctxt "@option:openProject"
msgid "Always import models"
msgstr "Tuo mallit aina"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:719
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:705
msgctxt "@info:tooltip"
msgid "When you have made changes to a profile and switched to a different one, a dialog will be shown asking whether you want to keep your modifications or not, or you can choose a default behaviour and never show that dialog again."
msgstr "Kun olet tehnyt muutokset profiiliin ja vaihtanut toiseen, näytetään valintaikkuna, jossa kysytään, haluatko säilyttää vai hylätä muutokset. Tässä voit myös valita oletuskäytöksen, jolloin valintaikkunaa ei näytetä uudelleen."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:728
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:714
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedQualityProfileSelector.qml:52
msgctxt "@label"
msgid "Profiles"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:733
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:719
msgctxt "@window:text"
msgid "Default behavior for changed setting values when switching to a different profile: "
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:748
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:734
msgctxt "@option:discardOrKeep"
msgid "Always discard changed settings"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:749
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:735
msgctxt "@option:discardOrKeep"
msgid "Always transfer changed settings to new profile"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:783
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:770
msgctxt "@label"
msgid "Privacy"
msgstr "Tietosuoja"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:790
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:777
msgctxt "@info:tooltip"
msgid "Should Cura check for updates when the program is started?"
msgstr "Pitäisikö Curan tarkistaa saatavilla olevat päivitykset, kun ohjelma käynnistetään?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:795
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:782
msgctxt "@option:check"
msgid "Check for updates on start"
msgstr "Tarkista päivitykset käynnistettäessä"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:805
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:792
msgctxt "@info:tooltip"
msgid "Should anonymous data about your print be sent to Ultimaker? Note, no models, IP addresses or other personally identifiable information is sent or stored."
msgstr "Pitäisikö anonyymejä tietoja tulosteesta lähettää Ultimakerille? Huomaa, että malleja, IP-osoitteita tai muita henkilökohtaisia tietoja ei lähetetä eikä tallenneta."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:810
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:797
msgctxt "@option:check"
msgid "Send (anonymous) print information"
msgstr "Lähetä (anonyymit) tulostustiedot"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:819
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:806
msgctxt "@action:button"
msgid "More information"
msgstr ""
@@ -4500,55 +4574,65 @@ msgctxt "@action:button"
msgid "Export"
msgstr "Vie"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:234
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:199
+msgctxt "@action:button Sending materials to printers"
+msgid "Sync with Printers"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:248
msgctxt "@action:label"
msgid "Printer"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:298
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:274
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:312
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:277
msgctxt "@title:window"
msgid "Confirm Remove"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:301
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:275
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:315
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:278
msgctxt "@label (%1 is object name)"
msgid "Are you sure you wish to remove %1? This cannot be undone!"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:315
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:323
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:329
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:337
msgctxt "@title:window"
msgid "Import Material"
msgstr "Tuo materiaali"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:324
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:338
msgctxt "@info:status Don't translate the XML tags or !"
msgid "Could not import material %1: %2"
msgstr "Materiaalin tuominen epäonnistui: %1: %2"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:328
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:342
msgctxt "@info:status Don't translate the XML tag !"
msgid "Successfully imported material %1"
msgstr "Materiaalin tuominen onnistui: %1"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:346
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:354
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:360
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:368
msgctxt "@title:window"
msgid "Export Material"
msgstr "Vie materiaali"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:358
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:372
msgctxt "@info:status Don't translate the XML tags and !"
msgid "Failed to export material to %1: %2"
msgstr "Materiaalin vieminen epäonnistui kohteeseen %1: %2"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:364
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:378
msgctxt "@info:status Don't translate the XML tag !"
msgid "Successfully exported material to %1"
msgstr "Materiaalin vieminen onnistui kohteeseen %1"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:388
+msgctxt "@title:window"
+msgid "Export All Materials"
+msgstr ""
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:72
msgctxt "@title"
msgid "Information"
@@ -4660,53 +4744,53 @@ msgctxt "@info"
msgid "Please provide a name for this profile."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:260
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:263
msgctxt "@title:window"
msgid "Duplicate Profile"
msgstr "Monista profiili"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:291
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:294
msgctxt "@title:window"
msgid "Rename Profile"
msgstr "Nimeä profiili uudelleen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:304
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:307
msgctxt "@title:window"
msgid "Import Profile"
msgstr "Profiilin tuonti"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:333
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:336
msgctxt "@title:window"
msgid "Export Profile"
msgstr "Profiilin vienti"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:396
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:399
msgctxt "@label %1 is printer name"
msgid "Printer: %1"
msgstr "Tulostin: %1"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:554
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:557
msgctxt "@action:button"
msgid "Update profile with current settings/overrides"
msgstr "Päivitä nykyiset asetukset tai ohitukset profiiliin"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:561
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:564
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Custom/QualitiesWithIntentMenu.qml:244
msgctxt "@action:button"
msgid "Discard current changes"
msgstr "Hylkää tehdyt muutokset"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:580
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:583
msgctxt "@action:label"
msgid "This profile uses the defaults specified by the printer, so it has no settings/overrides in the list below."
msgstr "Tässä profiilissa käytetään tulostimen oletusarvoja, joten siinä ei ole alla olevan listan asetuksia tai ohituksia."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:588
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:591
msgctxt "@action:label"
msgid "Your current settings match the selected profile."
msgstr "Nykyiset asetukset vastaavat valittua profiilia."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:606
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:609
msgctxt "@title:tab"
msgid "Global Settings"
msgstr "Yleiset asetukset"
@@ -4736,12 +4820,12 @@ msgctxt "@title:column"
msgid "Unit"
msgstr "Yksikkö"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:14
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:16
msgctxt "@title:tab"
msgid "Setting Visibility"
msgstr "Näkyvyyden asettaminen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:46
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:48
msgctxt "@label:textbox"
msgid "Check all"
msgstr "Tarkista kaikki"
@@ -5079,27 +5163,27 @@ msgctxt "@label:textbox"
msgid "Search settings"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:456
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:468
msgctxt "@action:menu"
msgid "Copy value to all extruders"
msgstr "Kopioi arvo kaikkiin suulakepuristimiin"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:465
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:477
msgctxt "@action:menu"
msgid "Copy all changed values to all extruders"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:502
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:514
msgctxt "@action:menu"
msgid "Hide this setting"
msgstr "Piilota tämä asetus"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:515
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:527
msgctxt "@action:menu"
msgid "Don't show this setting"
msgstr "Älä näytä tätä asetusta"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:519
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:531
msgctxt "@action:menu"
msgid "Keep this setting visible"
msgstr "Pidä tämä asetus näkyvissä"
@@ -5159,11 +5243,6 @@ msgctxt "@button"
msgid "Add printer manually"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddCloudPrintersView.qml:218
-msgctxt "@button"
-msgid "Finish"
-msgstr ""
-
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddLocalPrinterScrollView.qml:230
msgctxt "@label"
msgid "Manufacturer"
@@ -5270,32 +5349,32 @@ msgctxt "@button"
msgid "Connect"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:43
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/ChangelogContent.qml:24
msgctxt "@label"
-msgid "Ultimaker Account"
+msgid "Release Notes"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:84
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:124
msgctxt "@text"
-msgid "Your key to connected 3D printing"
+msgid "Add material settings and plugins from the Marketplace"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:101
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:154
msgctxt "@text"
-msgid "- Customize your experience with more print profiles and plugins"
+msgid "Backup and sync your material settings and plugins"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:104
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:184
msgctxt "@text"
-msgid "- Stay flexible by syncing your setup and loading it anywhere"
+msgid "Share ideas and get help from 48,000+ users in the Ultimaker Community"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:107
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:217
msgctxt "@text"
-msgid "- Increase efficiency with a remote workflow on Ultimaker printers"
+msgid "Create a free Ultimaker Account"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:157
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:230
msgctxt "@button"
msgid "Skip"
msgstr ""
@@ -5355,26 +5434,29 @@ msgctxt "@button"
msgid "Decline and close"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:29
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:56
msgctxt "@label"
msgid "Welcome to Ultimaker Cura"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:47
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:68
msgctxt "@text"
-msgid ""
-"Please follow these steps to set up\n"
-"Ultimaker Cura. This will only take a few moments."
+msgid "Please follow these steps to set up Ultimaker Cura. This will only take a few moments."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:58
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:86
msgctxt "@button"
msgid "Get started"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:24
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:28
msgctxt "@label"
-msgid "What's new in Ultimaker Cura"
+msgid "What's New"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Widgets/ComboBox.qml:24
+msgctxt "@label"
+msgid "No items to select from"
msgstr ""
#: ModelChecker/plugin.json
@@ -5457,6 +5539,16 @@ msgctxt "name"
msgid "Cura Profile Writer"
msgstr "Cura-profiilin kirjoitin"
+#: DigitalLibrary/plugin.json
+msgctxt "description"
+msgid "Connects to the Digital Library, allowing Cura to open files from and save files to the Digital Library."
+msgstr ""
+
+#: DigitalLibrary/plugin.json
+msgctxt "name"
+msgid "Ultimaker Digital Library"
+msgstr ""
+
#: FirmwareUpdateChecker/plugin.json
msgctxt "description"
msgid "Checks for firmware updates."
@@ -5927,6 +6019,26 @@ msgctxt "name"
msgid "Version Upgrade 4.7 to 4.8"
msgstr ""
+#: VersionUpgrade/VersionUpgrade48to49/plugin.json
+msgctxt "description"
+msgid "Upgrades configurations from Cura 4.8 to Cura 4.9."
+msgstr ""
+
+#: VersionUpgrade/VersionUpgrade48to49/plugin.json
+msgctxt "name"
+msgid "Version Upgrade 4.8 to 4.9"
+msgstr ""
+
+#: VersionUpgrade/VersionUpgrade49to410/plugin.json
+msgctxt "description"
+msgid "Upgrades configurations from Cura 4.9 to Cura 4.10."
+msgstr ""
+
+#: VersionUpgrade/VersionUpgrade49to410/plugin.json
+msgctxt "name"
+msgid "Version Upgrade 4.9 to 4.10"
+msgstr ""
+
#: X3DReader/plugin.json
msgctxt "description"
msgid "Provides support for reading X3D files."
@@ -5957,6 +6069,24 @@ msgctxt "name"
msgid "X-Ray View"
msgstr "Kerrosnäkymä"
+#~ msgctxt "@action:inmenu menubar:edit"
+#~ msgid "Delete Selected Model"
+#~ msgid_plural "Delete Selected Models"
+#~ msgstr[0] "Poista valittu malli"
+#~ msgstr[1] "Poista valitut mallit"
+
+#~ msgctxt "@action:inmenu menubar:edit"
+#~ msgid "Center Selected Model"
+#~ msgid_plural "Center Selected Models"
+#~ msgstr[0] "Keskitä valittu malli"
+#~ msgstr[1] "Keskitä valitut mallit"
+
+#~ msgctxt "@action:inmenu menubar:edit"
+#~ msgid "Multiply Selected Model"
+#~ msgid_plural "Multiply Selected Models"
+#~ msgstr[0] "Kerro valittu malli"
+#~ msgstr[1] "Kerro valitut mallit"
+
#~ msgctxt "@info:status"
#~ msgid "Successfully imported profile {0}"
#~ msgstr "Onnistuneesti tuotu profiili {0}"
diff --git a/resources/i18n/fi_FI/fdmextruder.def.json.po b/resources/i18n/fi_FI/fdmextruder.def.json.po
index 838bdaf5a2..bf103b91a4 100644
--- a/resources/i18n/fi_FI/fdmextruder.def.json.po
+++ b/resources/i18n/fi_FI/fdmextruder.def.json.po
@@ -4,9 +4,9 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: Cura 4.8\n"
+"Project-Id-Version: Cura 4.10\n"
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
-"POT-Creation-Date: 2020-10-19 13:15+0000\n"
+"POT-Creation-Date: 2021-06-10 17:35+0000\n"
"PO-Revision-Date: 2017-08-11 14:31+0200\n"
"Last-Translator: Bothof \n"
"Language-Team: Finnish\n"
diff --git a/resources/i18n/fi_FI/fdmprinter.def.json.po b/resources/i18n/fi_FI/fdmprinter.def.json.po
index 3b4dbf1737..d1ffed61eb 100644
--- a/resources/i18n/fi_FI/fdmprinter.def.json.po
+++ b/resources/i18n/fi_FI/fdmprinter.def.json.po
@@ -4,9 +4,9 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: Cura 4.8\n"
+"Project-Id-Version: Cura 4.10\n"
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
-"POT-Creation-Date: 2020-10-19 13:15+0000\n"
+"POT-Creation-Date: 2021-06-10 17:35+0000\n"
"PO-Revision-Date: 2017-09-27 12:27+0200\n"
"Last-Translator: Bothof \n"
"Language-Team: Finnish\n"
@@ -414,6 +414,26 @@ msgctxt "machine_extruders_share_heater description"
msgid "Whether the extruders share a single heater rather than each extruder having its own heater."
msgstr ""
+#: fdmprinter.def.json
+msgctxt "machine_extruders_share_nozzle label"
+msgid "Extruders Share Nozzle"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "machine_extruders_share_nozzle description"
+msgid "Whether the extruders share a single nozzle rather than each extruder having its own nozzle. When set to true, it is expected that the printer-start gcode script properly sets up all extruders in an initial retraction state that is known and mutually compatible (either zero or one filament not retracted); in that case the initial retraction status is described, per extruder, by the 'machine_extruders_shared_nozzle_initial_retraction' parameter."
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "machine_extruders_shared_nozzle_initial_retraction label"
+msgid "Shared Nozzle Initial Retraction"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "machine_extruders_shared_nozzle_initial_retraction description"
+msgid "How much the filament of each extruder is assumed to have been retracted from the shared nozzle tip at the completion of the printer-start gcode script; the value should be equal to or greater than the length of the common part of the nozzle's ducts."
+msgstr ""
+
#: fdmprinter.def.json
msgctxt "machine_disallowed_areas label"
msgid "Disallowed Areas"
@@ -481,8 +501,8 @@ msgstr ""
#: fdmprinter.def.json
msgctxt "machine_use_extruder_offset_to_offset_coords description"
-msgid "Apply the extruder offset to the coordinate system."
-msgstr "Käytä suulakkeen siirtymää koordinaattijärjestelmään."
+msgid "Apply the extruder offset to the coordinate system. Affects all extruders."
+msgstr ""
#: fdmprinter.def.json
msgctxt "extruder_prime_pos_z label"
@@ -876,8 +896,8 @@ msgstr "Ensimmäisen kerroksen linjaleveyden kerroin. Sen suurentaminen voi para
#: fdmprinter.def.json
msgctxt "shell label"
-msgid "Shell"
-msgstr "Kuori"
+msgid "Walls"
+msgstr ""
#: fdmprinter.def.json
msgctxt "shell description"
@@ -944,166 +964,6 @@ msgctxt "wall_0_wipe_dist description"
msgid "Distance of a travel move inserted after the outer wall, to hide the Z seam better."
msgstr "Siirtoliikkeen etäisyys ulkoseinämän jälkeen Z-sauman piilottamiseksi paremmin."
-#: fdmprinter.def.json
-msgctxt "roofing_extruder_nr label"
-msgid "Top Surface Skin Extruder"
-msgstr "Yläpinnan pintakalvon suulake"
-
-#: fdmprinter.def.json
-msgctxt "roofing_extruder_nr description"
-msgid "The extruder train used for printing the top most skin. This is used in multi-extrusion."
-msgstr "Ylimmän pintakalvon tulostukseen käytettävä suulakeryhmä. Tätä käytetään monipursotuksessa."
-
-#: fdmprinter.def.json
-msgctxt "roofing_layer_count label"
-msgid "Top Surface Skin Layers"
-msgstr "Yläpinnan pintakalvokerrokset"
-
-#: fdmprinter.def.json
-msgctxt "roofing_layer_count description"
-msgid "The number of top most skin layers. Usually only one top most layer is sufficient to generate higher quality top surfaces."
-msgstr "Ylimpien pintakalvokerrosten määrä. Yleensä vain yksi ylin kerros riittää tuottamaan korkeampilaatuisia yläpintoja."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_extruder_nr label"
-msgid "Top/Bottom Extruder"
-msgstr "Ylä- ja alapuolen suulake"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_extruder_nr description"
-msgid "The extruder train used for printing the top and bottom skin. This is used in multi-extrusion."
-msgstr "Ylä- ja alapuolen pintakalvon tulostukseen käytettävä suulakeryhmä. Tätä käytetään monipursotuksessa."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_thickness label"
-msgid "Top/Bottom Thickness"
-msgstr "Ylä-/alaosan paksuus"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_thickness description"
-msgid "The thickness of the top/bottom layers in the print. This value divided by the layer height defines the number of top/bottom layers."
-msgstr "Ylä-/alakerrosten paksuus tulosteessa. Tämä arvo jaettuna kerroksen korkeusarvolla määrittää ylä-/alakerrosten lukumäärän."
-
-#: fdmprinter.def.json
-msgctxt "top_thickness label"
-msgid "Top Thickness"
-msgstr "Yläosan paksuus"
-
-#: fdmprinter.def.json
-msgctxt "top_thickness description"
-msgid "The thickness of the top layers in the print. This value divided by the layer height defines the number of top layers."
-msgstr "Yläkerrosten paksuus tulosteessa. Tämä arvo jaettuna kerroksen korkeusarvolla määrittää yläkerrosten lukumäärän."
-
-#: fdmprinter.def.json
-msgctxt "top_layers label"
-msgid "Top Layers"
-msgstr "Yläkerrokset"
-
-#: fdmprinter.def.json
-msgctxt "top_layers description"
-msgid "The number of top layers. When calculated by the top thickness, this value is rounded to a whole number."
-msgstr "Yläkerrosten lukumäärä. Kun se lasketaan yläosan paksuudesta, arvo pyöristetään kokonaislukuun."
-
-#: fdmprinter.def.json
-msgctxt "bottom_thickness label"
-msgid "Bottom Thickness"
-msgstr "Alaosan paksuus"
-
-#: fdmprinter.def.json
-msgctxt "bottom_thickness description"
-msgid "The thickness of the bottom layers in the print. This value divided by the layer height defines the number of bottom layers."
-msgstr "Alakerrosten paksuus tulosteessa. Tämä arvo jaettuna kerroksen korkeusarvolla määrittää alakerrosten lukumäärän."
-
-#: fdmprinter.def.json
-msgctxt "bottom_layers label"
-msgid "Bottom Layers"
-msgstr "Alakerrokset"
-
-#: fdmprinter.def.json
-msgctxt "bottom_layers description"
-msgid "The number of bottom layers. When calculated by the bottom thickness, this value is rounded to a whole number."
-msgstr "Alakerrosten lukumäärä. Kun se lasketaan alaosan paksuudesta, arvo pyöristetään kokonaislukuun."
-
-#: fdmprinter.def.json
-msgctxt "initial_bottom_layers label"
-msgid "Initial Bottom Layers"
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "initial_bottom_layers description"
-msgid "The number of initial bottom layers, from the build-plate upwards. When calculated by the bottom thickness, this value is rounded to a whole number."
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern label"
-msgid "Top/Bottom Pattern"
-msgstr "Ylä-/alaosan kuvio"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern description"
-msgid "The pattern of the top/bottom layers."
-msgstr "Ylä-/alakerrosten kuvio."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern option lines"
-msgid "Lines"
-msgstr "Linjat"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern option concentric"
-msgid "Concentric"
-msgstr "Samankeskinen"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern option zigzag"
-msgid "Zig Zag"
-msgstr "Siksak"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 label"
-msgid "Bottom Pattern Initial Layer"
-msgstr "Alaosan kuvio, alkukerros"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 description"
-msgid "The pattern on the bottom of the print on the first layer."
-msgstr "Tulosteen alaosan kuvio ensimmäisellä kerroksella."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 option lines"
-msgid "Lines"
-msgstr "Linjat"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 option concentric"
-msgid "Concentric"
-msgstr "Samankeskinen"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 option zigzag"
-msgid "Zig Zag"
-msgstr "Siksak"
-
-#: fdmprinter.def.json
-msgctxt "connect_skin_polygons label"
-msgid "Connect Top/Bottom Polygons"
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "connect_skin_polygons description"
-msgid "Connect top/bottom skin paths where they run next to each other. For the concentric pattern enabling this setting greatly reduces the travel time, but because the connections can happen midway over infill this feature can reduce the top surface quality."
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "skin_angles label"
-msgid "Top/Bottom Line Directions"
-msgstr "Yläosan/alaosan linjojen suunnat"
-
-#: fdmprinter.def.json
-msgctxt "skin_angles description"
-msgid "A list of integer line directions to use when the top/bottom layers use the lines or zig zag pattern. Elements from the list are used sequentially as the layers progress and when the end of the list is reached, it starts at the beginning again. The list items are separated by commas and the whole list is contained in square brackets. Default is an empty list which means use the traditional default angles (45 and 135 degrees)."
-msgstr "Luettelo käytettävistä linjojen kokonaislukusuunnista, kun ylimmällä/alimmalla kerroksella käytetään linja- tai siksak-kuviota. Tämän luettelon elementtejä käytetään järjestyksessä kerrosten edetessä, ja kun luettelon loppu saavutetaan, aloitetaan taas alusta. Luettelon kohteet on erotettu pilkuilla, ja koko luettelo on hakasulkeiden sisällä. Oletusarvo on tyhjä luettelo, jolloin käytetään perinteisiä oletuskulmia (45 ja 135 astetta)."
-
#: fdmprinter.def.json
msgctxt "wall_0_inset label"
msgid "Outer Wall Inset"
@@ -1409,6 +1269,176 @@ msgctxt "z_seam_relative description"
msgid "When enabled, the z seam coordinates are relative to each part's centre. When disabled, the coordinates define an absolute position on the build plate."
msgstr "Kun tämä on käytössä, Z-sauman koordinaatit ovat suhteessa kunkin osan keskikohtaan. Kun asetus on pois käytöstä, koordinaatit määrittävät absoluuttisen sijainnin alustalla."
+#: fdmprinter.def.json
+msgctxt "top_bottom label"
+msgid "Top/Bottom"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "top_bottom description"
+msgid "Top/Bottom"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "roofing_extruder_nr label"
+msgid "Top Surface Skin Extruder"
+msgstr "Yläpinnan pintakalvon suulake"
+
+#: fdmprinter.def.json
+msgctxt "roofing_extruder_nr description"
+msgid "The extruder train used for printing the top most skin. This is used in multi-extrusion."
+msgstr "Ylimmän pintakalvon tulostukseen käytettävä suulakeryhmä. Tätä käytetään monipursotuksessa."
+
+#: fdmprinter.def.json
+msgctxt "roofing_layer_count label"
+msgid "Top Surface Skin Layers"
+msgstr "Yläpinnan pintakalvokerrokset"
+
+#: fdmprinter.def.json
+msgctxt "roofing_layer_count description"
+msgid "The number of top most skin layers. Usually only one top most layer is sufficient to generate higher quality top surfaces."
+msgstr "Ylimpien pintakalvokerrosten määrä. Yleensä vain yksi ylin kerros riittää tuottamaan korkeampilaatuisia yläpintoja."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_extruder_nr label"
+msgid "Top/Bottom Extruder"
+msgstr "Ylä- ja alapuolen suulake"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_extruder_nr description"
+msgid "The extruder train used for printing the top and bottom skin. This is used in multi-extrusion."
+msgstr "Ylä- ja alapuolen pintakalvon tulostukseen käytettävä suulakeryhmä. Tätä käytetään monipursotuksessa."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_thickness label"
+msgid "Top/Bottom Thickness"
+msgstr "Ylä-/alaosan paksuus"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_thickness description"
+msgid "The thickness of the top/bottom layers in the print. This value divided by the layer height defines the number of top/bottom layers."
+msgstr "Ylä-/alakerrosten paksuus tulosteessa. Tämä arvo jaettuna kerroksen korkeusarvolla määrittää ylä-/alakerrosten lukumäärän."
+
+#: fdmprinter.def.json
+msgctxt "top_thickness label"
+msgid "Top Thickness"
+msgstr "Yläosan paksuus"
+
+#: fdmprinter.def.json
+msgctxt "top_thickness description"
+msgid "The thickness of the top layers in the print. This value divided by the layer height defines the number of top layers."
+msgstr "Yläkerrosten paksuus tulosteessa. Tämä arvo jaettuna kerroksen korkeusarvolla määrittää yläkerrosten lukumäärän."
+
+#: fdmprinter.def.json
+msgctxt "top_layers label"
+msgid "Top Layers"
+msgstr "Yläkerrokset"
+
+#: fdmprinter.def.json
+msgctxt "top_layers description"
+msgid "The number of top layers. When calculated by the top thickness, this value is rounded to a whole number."
+msgstr "Yläkerrosten lukumäärä. Kun se lasketaan yläosan paksuudesta, arvo pyöristetään kokonaislukuun."
+
+#: fdmprinter.def.json
+msgctxt "bottom_thickness label"
+msgid "Bottom Thickness"
+msgstr "Alaosan paksuus"
+
+#: fdmprinter.def.json
+msgctxt "bottom_thickness description"
+msgid "The thickness of the bottom layers in the print. This value divided by the layer height defines the number of bottom layers."
+msgstr "Alakerrosten paksuus tulosteessa. Tämä arvo jaettuna kerroksen korkeusarvolla määrittää alakerrosten lukumäärän."
+
+#: fdmprinter.def.json
+msgctxt "bottom_layers label"
+msgid "Bottom Layers"
+msgstr "Alakerrokset"
+
+#: fdmprinter.def.json
+msgctxt "bottom_layers description"
+msgid "The number of bottom layers. When calculated by the bottom thickness, this value is rounded to a whole number."
+msgstr "Alakerrosten lukumäärä. Kun se lasketaan alaosan paksuudesta, arvo pyöristetään kokonaislukuun."
+
+#: fdmprinter.def.json
+msgctxt "initial_bottom_layers label"
+msgid "Initial Bottom Layers"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "initial_bottom_layers description"
+msgid "The number of initial bottom layers, from the build-plate upwards. When calculated by the bottom thickness, this value is rounded to a whole number."
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern label"
+msgid "Top/Bottom Pattern"
+msgstr "Ylä-/alaosan kuvio"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern description"
+msgid "The pattern of the top/bottom layers."
+msgstr "Ylä-/alakerrosten kuvio."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern option lines"
+msgid "Lines"
+msgstr "Linjat"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern option concentric"
+msgid "Concentric"
+msgstr "Samankeskinen"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern option zigzag"
+msgid "Zig Zag"
+msgstr "Siksak"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 label"
+msgid "Bottom Pattern Initial Layer"
+msgstr "Alaosan kuvio, alkukerros"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 description"
+msgid "The pattern on the bottom of the print on the first layer."
+msgstr "Tulosteen alaosan kuvio ensimmäisellä kerroksella."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 option lines"
+msgid "Lines"
+msgstr "Linjat"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 option concentric"
+msgid "Concentric"
+msgstr "Samankeskinen"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 option zigzag"
+msgid "Zig Zag"
+msgstr "Siksak"
+
+#: fdmprinter.def.json
+msgctxt "connect_skin_polygons label"
+msgid "Connect Top/Bottom Polygons"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "connect_skin_polygons description"
+msgid "Connect top/bottom skin paths where they run next to each other. For the concentric pattern enabling this setting greatly reduces the travel time, but because the connections can happen midway over infill this feature can reduce the top surface quality."
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "skin_angles label"
+msgid "Top/Bottom Line Directions"
+msgstr "Yläosan/alaosan linjojen suunnat"
+
+#: fdmprinter.def.json
+msgctxt "skin_angles description"
+msgid "A list of integer line directions to use when the top/bottom layers use the lines or zig zag pattern. Elements from the list are used sequentially as the layers progress and when the end of the list is reached, it starts at the beginning again. The list items are separated by commas and the whole list is contained in square brackets. Default is an empty list which means use the traditional default angles (45 and 135 degrees)."
+msgstr "Luettelo käytettävistä linjojen kokonaislukusuunnista, kun ylimmällä/alimmalla kerroksella käytetään linja- tai siksak-kuviota. Tämän luettelon elementtejä käytetään järjestyksessä kerrosten edetessä, ja kun luettelon loppu saavutetaan, aloitetaan taas alusta. Luettelon kohteet on erotettu pilkuilla, ja koko luettelo on hakasulkeiden sisällä. Oletusarvo on tyhjä luettelo, jolloin käytetään perinteisiä oletuskulmia (45 ja 135 astetta)."
+
#: fdmprinter.def.json
msgctxt "skin_no_small_gaps_heuristic label"
msgid "No Skin in Z Gaps"
@@ -1549,6 +1579,86 @@ msgctxt "skin_overlap_mm description"
msgid "Adjust the amount of overlap between the walls and (the endpoints of) the skin-centerlines. A slight overlap allows the walls to connect firmly to the skin. Note that, given an equal skin and wall line-width, any value over half the width of the wall may already cause any skin to go past the wall, because at that point the position of the nozzle of the skin-extruder may already reach past the middle of the wall."
msgstr ""
+#: fdmprinter.def.json
+msgctxt "skin_preshrink label"
+msgid "Skin Removal Width"
+msgstr "Pintakalvon poistoleveys"
+
+#: fdmprinter.def.json
+msgctxt "skin_preshrink description"
+msgid "The largest width of skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top/bottom skin at slanted surfaces in the model."
+msgstr "Suurin poistettavien pintakalvoalueiden leveys. Kaikki tätä arvoa pienemmät pintakalvoalueet poistuvat. Tästä voi olla apua mallin kaltevien pintojen ylä-/alapintakalvon tulostukseen käytettävän ajan ja materiaalin rajoittamisessa."
+
+#: fdmprinter.def.json
+msgctxt "top_skin_preshrink label"
+msgid "Top Skin Removal Width"
+msgstr "Yläpintakalvon poistoleveys"
+
+#: fdmprinter.def.json
+msgctxt "top_skin_preshrink description"
+msgid "The largest width of top skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top skin at slanted surfaces in the model."
+msgstr "Suurin poistettavien yläpintakalvoalueiden leveys. Kaikki tätä arvoa pienemmät pintakalvoalueet poistuvat. Tästä voi olla apua mallin kaltevien pintojen yläpintakalvon tulostukseen käytettävän ajan ja materiaalin rajoittamisessa."
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_preshrink label"
+msgid "Bottom Skin Removal Width"
+msgstr "Alapintakalvon poistoleveys"
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_preshrink description"
+msgid "The largest width of bottom skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing bottom skin at slanted surfaces in the model."
+msgstr "Suurin poistettavien alapintakalvoalueiden leveys. Kaikki tätä arvoa pienemmät pintakalvoalueet poistuvat. Tästä voi olla apua mallin kaltevien pintojen alapintakalvon tulostukseen käytettävän ajan ja materiaalin rajoittamisessa."
+
+#: fdmprinter.def.json
+msgctxt "expand_skins_expand_distance label"
+msgid "Skin Expand Distance"
+msgstr "Pintakalvon laajennuksen etäisyys"
+
+#: fdmprinter.def.json
+msgctxt "expand_skins_expand_distance description"
+msgid "The distance the skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on neighboring layers adhere better to the skin. Lower values save amount of material used."
+msgstr "Etäisyys, jonka verran pintakalvot laajentuvat täyttöön. Suuremmat arvot saavat pintakalvon kiinnittymään paremmin täyttökuvioon ja viereisten kerrosten seinämät tarttumaan paremmin pintakalvoon. Pienemmät arvot vähentävät käytettävän materiaalin määrää."
+
+#: fdmprinter.def.json
+msgctxt "top_skin_expand_distance label"
+msgid "Top Skin Expand Distance"
+msgstr "Yläpintakalvon laajennuksen etäisyys"
+
+#: fdmprinter.def.json
+msgctxt "top_skin_expand_distance description"
+msgid "The distance the top skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on the layer above adhere better to the skin. Lower values save amount of material used."
+msgstr "Etäisyys, jonka verran yläpintakalvot laajentuvat täyttöön. Suuremmat arvot saavat pintakalvon kiinnittymään paremmin täyttökuvioon ja yllä olevan kerroksen seinämät tarttumaan paremmin pintakalvoon. Pienemmät arvot vähentävät käytettävän materiaalin määrää."
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_expand_distance label"
+msgid "Bottom Skin Expand Distance"
+msgstr "Alapintakalvon laajennuksen etäisyys"
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_expand_distance description"
+msgid "The distance the bottom skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the skin adhere better to the walls on the layer below. Lower values save amount of material used."
+msgstr "Etäisyys, jonka verran alapintakalvot laajentuvat täyttöön. Suuremmat arvot saavat pintakalvon kiinnittymään paremmin täyttökuvioon ja tarttumaan paremmin alla olevan kerroksen seinämiin. Pienemmät arvot vähentävät käytettävän materiaalin määrää."
+
+#: fdmprinter.def.json
+msgctxt "max_skin_angle_for_expansion label"
+msgid "Maximum Skin Angle for Expansion"
+msgstr "Pintakalvon maksimikulma laajennuksessa"
+
+#: fdmprinter.def.json
+msgctxt "max_skin_angle_for_expansion description"
+msgid "Top and/or bottom surfaces of your object with an angle larger than this setting, won't have their top/bottom skin expanded. This avoids expanding the narrow skin areas that are created when the model surface has a near vertical slope. An angle of 0° is horizontal and will cause no skin to be expanded, while an angle of 90° is vertical and will cause all skin to be expanded."
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "min_skin_width_for_expansion label"
+msgid "Minimum Skin Width for Expansion"
+msgstr "Pintakalvon minimileveys laajennuksessa"
+
+#: fdmprinter.def.json
+msgctxt "min_skin_width_for_expansion description"
+msgid "Skin areas narrower than this are not expanded. This avoids expanding the narrow skin areas that are created when the model surface has a slope close to the vertical."
+msgstr "Tätä kapeampia pintakalvoja ei laajenneta. Tällä vältetään laajentamasta kapeita pintakalvoja, jotka syntyvät, kun mallin pinnalla on rinne lähellä pystysuoraa osuutta."
+
#: fdmprinter.def.json
msgctxt "infill label"
msgid "Infill"
@@ -1856,86 +1966,6 @@ msgctxt "infill_support_angle description"
msgid "The minimum angle of internal overhangs for which infill is added. At a value of 0° objects are totally filled with infill, 90° will not provide any infill."
msgstr ""
-#: fdmprinter.def.json
-msgctxt "skin_preshrink label"
-msgid "Skin Removal Width"
-msgstr "Pintakalvon poistoleveys"
-
-#: fdmprinter.def.json
-msgctxt "skin_preshrink description"
-msgid "The largest width of skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top/bottom skin at slanted surfaces in the model."
-msgstr "Suurin poistettavien pintakalvoalueiden leveys. Kaikki tätä arvoa pienemmät pintakalvoalueet poistuvat. Tästä voi olla apua mallin kaltevien pintojen ylä-/alapintakalvon tulostukseen käytettävän ajan ja materiaalin rajoittamisessa."
-
-#: fdmprinter.def.json
-msgctxt "top_skin_preshrink label"
-msgid "Top Skin Removal Width"
-msgstr "Yläpintakalvon poistoleveys"
-
-#: fdmprinter.def.json
-msgctxt "top_skin_preshrink description"
-msgid "The largest width of top skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top skin at slanted surfaces in the model."
-msgstr "Suurin poistettavien yläpintakalvoalueiden leveys. Kaikki tätä arvoa pienemmät pintakalvoalueet poistuvat. Tästä voi olla apua mallin kaltevien pintojen yläpintakalvon tulostukseen käytettävän ajan ja materiaalin rajoittamisessa."
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_preshrink label"
-msgid "Bottom Skin Removal Width"
-msgstr "Alapintakalvon poistoleveys"
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_preshrink description"
-msgid "The largest width of bottom skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing bottom skin at slanted surfaces in the model."
-msgstr "Suurin poistettavien alapintakalvoalueiden leveys. Kaikki tätä arvoa pienemmät pintakalvoalueet poistuvat. Tästä voi olla apua mallin kaltevien pintojen alapintakalvon tulostukseen käytettävän ajan ja materiaalin rajoittamisessa."
-
-#: fdmprinter.def.json
-msgctxt "expand_skins_expand_distance label"
-msgid "Skin Expand Distance"
-msgstr "Pintakalvon laajennuksen etäisyys"
-
-#: fdmprinter.def.json
-msgctxt "expand_skins_expand_distance description"
-msgid "The distance the skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on neighboring layers adhere better to the skin. Lower values save amount of material used."
-msgstr "Etäisyys, jonka verran pintakalvot laajentuvat täyttöön. Suuremmat arvot saavat pintakalvon kiinnittymään paremmin täyttökuvioon ja viereisten kerrosten seinämät tarttumaan paremmin pintakalvoon. Pienemmät arvot vähentävät käytettävän materiaalin määrää."
-
-#: fdmprinter.def.json
-msgctxt "top_skin_expand_distance label"
-msgid "Top Skin Expand Distance"
-msgstr "Yläpintakalvon laajennuksen etäisyys"
-
-#: fdmprinter.def.json
-msgctxt "top_skin_expand_distance description"
-msgid "The distance the top skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on the layer above adhere better to the skin. Lower values save amount of material used."
-msgstr "Etäisyys, jonka verran yläpintakalvot laajentuvat täyttöön. Suuremmat arvot saavat pintakalvon kiinnittymään paremmin täyttökuvioon ja yllä olevan kerroksen seinämät tarttumaan paremmin pintakalvoon. Pienemmät arvot vähentävät käytettävän materiaalin määrää."
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_expand_distance label"
-msgid "Bottom Skin Expand Distance"
-msgstr "Alapintakalvon laajennuksen etäisyys"
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_expand_distance description"
-msgid "The distance the bottom skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the skin adhere better to the walls on the layer below. Lower values save amount of material used."
-msgstr "Etäisyys, jonka verran alapintakalvot laajentuvat täyttöön. Suuremmat arvot saavat pintakalvon kiinnittymään paremmin täyttökuvioon ja tarttumaan paremmin alla olevan kerroksen seinämiin. Pienemmät arvot vähentävät käytettävän materiaalin määrää."
-
-#: fdmprinter.def.json
-msgctxt "max_skin_angle_for_expansion label"
-msgid "Maximum Skin Angle for Expansion"
-msgstr "Pintakalvon maksimikulma laajennuksessa"
-
-#: fdmprinter.def.json
-msgctxt "max_skin_angle_for_expansion description"
-msgid "Top and/or bottom surfaces of your object with an angle larger than this setting, won't have their top/bottom skin expanded. This avoids expanding the narrow skin areas that are created when the model surface has a near vertical slope. An angle of 0° is horizontal, while an angle of 90° is vertical."
-msgstr "Kappaleesi ylä- ja/tai alapinnan ylä- ja alapintakalvoja ei laajenneta, jos niiden kulma on suurempi kuin tämä asetus. Tällä vältetään laajentamasta kapeita pintakalvoja, jotka syntyvät, kun mallin pinnalla on lähes pystysuora rinne. 0 °:n kulma on vaakasuora ja 90 °:n kulma on pystysuora."
-
-#: fdmprinter.def.json
-msgctxt "min_skin_width_for_expansion label"
-msgid "Minimum Skin Width for Expansion"
-msgstr "Pintakalvon minimileveys laajennuksessa"
-
-#: fdmprinter.def.json
-msgctxt "min_skin_width_for_expansion description"
-msgid "Skin areas narrower than this are not expanded. This avoids expanding the narrow skin areas that are created when the model surface has a slope close to the vertical."
-msgstr "Tätä kapeampia pintakalvoja ei laajenneta. Tällä vältetään laajentamasta kapeita pintakalvoja, jotka syntyvät, kun mallin pinnalla on rinne lähellä pystysuoraa osuutta."
-
#: fdmprinter.def.json
msgctxt "skin_edge_support_thickness label"
msgid "Skin Edge Support Thickness"
@@ -2553,8 +2583,8 @@ msgstr "Alkukerroksen nopeus"
#: fdmprinter.def.json
msgctxt "speed_layer_0 description"
-msgid "The speed for the initial layer. A lower value is advised to improve adhesion to the build plate."
-msgstr "Alkukerroksen nopeus. Alhaisempi arvo on suositeltava, jotta tarttuvuus alustaan on parempi."
+msgid "The speed for the initial layer. A lower value is advised to improve adhesion to the build plate. Does not affect the build plate adhesion structures themselves, like brim and raft."
+msgstr ""
#: fdmprinter.def.json
msgctxt "speed_print_layer_0 label"
@@ -3163,7 +3193,7 @@ msgstr ""
#: fdmprinter.def.json
msgctxt "retraction_combing_max_distance description"
-msgid "When non-zero, combing travel moves that are longer than this distance will use retraction."
+msgid "When greater than zero, combing travel moves that are longer than this distance will use retraction. If set to zero, there is no maximum and combing moves will not use retraction."
msgstr ""
#: fdmprinter.def.json
@@ -5065,7 +5095,7 @@ msgstr ""
#: fdmprinter.def.json
msgctxt "infill_mesh_order description"
-msgid "Determines the priority of this mesh when considering multiple overlapping infill meshes. Areas where multiple infill meshes overlap will take on the settings of the mesh with the lowest rank. An infill mesh with a higher order will modify the infill of infill meshes with lower order and normal meshes."
+msgid "Determines the priority of this mesh when considering multiple overlapping infill meshes. Areas where multiple infill meshes overlap will take on the settings of the mesh with the highest rank. An infill mesh with a higher rank will modify the infill of infill meshes with lower rank and normal meshes."
msgstr ""
#: fdmprinter.def.json
@@ -5413,6 +5443,16 @@ msgctxt "conical_overhang_angle description"
msgid "The maximum angle of overhangs after the they have been made printable. At a value of 0° all overhangs are replaced by a piece of model connected to the build plate, 90° will not change the model in any way."
msgstr "Ulokkeiden maksimikulma, kun niistä on tehty tulostettavia. 0 asteessa kaikki ulokkeet korvataan mallikappaleella, joka on yhdistetty alustaan. 90 asteessa mallia ei muuteta millään tavalla."
+#: fdmprinter.def.json
+msgctxt "conical_overhang_hole_size label"
+msgid "Maximum Overhang Hole Area"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "conical_overhang_hole_size description"
+msgid "The maximum area of a hole in the base of the model before it's removed by Make Overhang Printable. Holes smaller than this will be retained. A value of 0 mm² will fill all holes in the models base."
+msgstr ""
+
#: fdmprinter.def.json
msgctxt "coasting_enable label"
msgid "Enable Coasting"
@@ -6352,6 +6392,22 @@ msgctxt "mesh_rotation_matrix description"
msgid "Transformation matrix to be applied to the model when loading it from file."
msgstr "Mallissa käytettävä muunnosmatriisi, kun malli ladataan tiedostosta."
+#~ msgctxt "machine_use_extruder_offset_to_offset_coords description"
+#~ msgid "Apply the extruder offset to the coordinate system."
+#~ msgstr "Käytä suulakkeen siirtymää koordinaattijärjestelmään."
+
+#~ msgctxt "shell label"
+#~ msgid "Shell"
+#~ msgstr "Kuori"
+
+#~ msgctxt "max_skin_angle_for_expansion description"
+#~ msgid "Top and/or bottom surfaces of your object with an angle larger than this setting, won't have their top/bottom skin expanded. This avoids expanding the narrow skin areas that are created when the model surface has a near vertical slope. An angle of 0° is horizontal, while an angle of 90° is vertical."
+#~ msgstr "Kappaleesi ylä- ja/tai alapinnan ylä- ja alapintakalvoja ei laajenneta, jos niiden kulma on suurempi kuin tämä asetus. Tällä vältetään laajentamasta kapeita pintakalvoja, jotka syntyvät, kun mallin pinnalla on lähes pystysuora rinne. 0 °:n kulma on vaakasuora ja 90 °:n kulma on pystysuora."
+
+#~ msgctxt "speed_layer_0 description"
+#~ msgid "The speed for the initial layer. A lower value is advised to improve adhesion to the build plate."
+#~ msgstr "Alkukerroksen nopeus. Alhaisempi arvo on suositeltava, jotta tarttuvuus alustaan on parempi."
+
#~ msgctxt "material_bed_temperature_layer_0 description"
#~ msgid "The temperature used for the heated build plate at the first layer."
#~ msgstr "Lämmitettävän alustan lämpötila ensimmäistä kerrosta tulostettaessa."
diff --git a/resources/i18n/fr_FR/cura.po b/resources/i18n/fr_FR/cura.po
index aa443f1735..a0f3ac59cb 100644
--- a/resources/i18n/fr_FR/cura.po
+++ b/resources/i18n/fr_FR/cura.po
@@ -1,13 +1,13 @@
# Cura
-# Copyright (C) 2020 Ultimaker B.V.
+# Copyright (C) 2021 Ultimaker B.V.
# This file is distributed under the same license as the Cura package.
#
msgid ""
msgstr ""
-"Project-Id-Version: Cura 4.8\n"
+"Project-Id-Version: Cura 4.10\n"
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
-"POT-Creation-Date: 2020-10-19 13:15+0200\n"
-"PO-Revision-Date: 2020-11-09 14:02+0100\n"
+"POT-Creation-Date: 2021-06-10 17:35+0200\n"
+"PO-Revision-Date: 2021-04-16 15:16+0200\n"
"Last-Translator: Lionbridge \n"
"Language-Team: French , French \n"
"Language: fr_FR\n"
@@ -17,8 +17,12 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"X-Generator: Poedit 2.4.1\n"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/DiscoveredPrintersModel.py:83 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:110 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/QualityManagementModel.py:361 /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1581
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:130 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:171
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/DiscoveredPrintersModel.py:83
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:110
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/QualityManagementModel.py:361
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1612
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:130
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:171
msgctxt "@label"
msgid "Unknown"
msgstr "Inconnu"
@@ -44,47 +48,56 @@ msgctxt "@label {0} is the name of a printer that's about to be deleted."
msgid "Are you sure you wish to remove {0}? This cannot be undone!"
msgstr "Voulez-vous vraiment supprimer l'objet {0} ? Cette action est irréversible !"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:42 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:11 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/QualityManagementModel.py:338
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:42
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:11
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/QualityManagementModel.py:338
msgctxt "@label"
msgid "Default"
msgstr "Default"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:45 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:14
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:45
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:14
msgctxt "@label"
msgid "Visual"
msgstr "Visuel"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:46 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:15
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:46
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:15
msgctxt "@text"
msgid "The visual profile is designed to print visual prototypes and models with the intent of high visual and surface quality."
msgstr "Le profil visuel est conçu pour imprimer des prototypes et des modèles visuels dans le but d'obtenir une qualité visuelle et de surface élevée."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:49 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:18
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:49
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:18
msgctxt "@label"
msgid "Engineering"
msgstr "Engineering"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:50 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:19
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:50
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:19
msgctxt "@text"
msgid "The engineering profile is designed to print functional prototypes and end-use parts with the intent of better accuracy and for closer tolerances."
msgstr "Le profil d'ingénierie est conçu pour imprimer des prototypes fonctionnels et des pièces finales dans le but d'obtenir une meilleure précision et des tolérances plus étroites."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:53 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:22
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:53
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:22
msgctxt "@label"
msgid "Draft"
msgstr "Ébauche"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:54 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:23
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:54
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:23
msgctxt "@text"
msgid "The draft profile is designed to print initial prototypes and concept validation with the intent of significant print time reduction."
msgstr "L'ébauche du profil est conçue pour imprimer les prototypes initiaux et la validation du concept dans le but de réduire considérablement le temps d'impression."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:226
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:234
msgctxt "@label"
msgid "Custom Material"
msgstr "Matériau personnalisé"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:227 /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationMenu.qml:205
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:235
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationMenu.qml:205
msgctxt "@label"
msgid "Custom"
msgstr "Personnalisé"
@@ -105,51 +118,63 @@ msgctxt "@item:inlistbox"
msgid "All Files (*)"
msgstr "Tous les fichiers (*)"
-#: /home/trin/Gedeeld/Projects/Cura/cura/API/Account.py:178
+#: /home/trin/Gedeeld/Projects/Cura/cura/API/Account.py:181
msgctxt "@info:title"
msgid "Login failed"
msgstr "La connexion a échoué"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:67 /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:24
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:67
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:24
msgctxt "@info:status"
msgid "Finding new location for objects"
msgstr "Recherche d'un nouvel emplacement pour les objets"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:71 /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:28
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:71
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:28
msgctxt "@info:title"
msgid "Finding Location"
msgstr "Recherche d'emplacement"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:150 /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:41 /home/trin/Gedeeld/Projects/Cura/cura/MultiplyObjectsJob.py:76
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:150
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:41
+#: /home/trin/Gedeeld/Projects/Cura/cura/MultiplyObjectsJob.py:76
msgctxt "@info:status"
msgid "Unable to find a location within the build volume for all objects"
msgstr "Impossible de trouver un emplacement dans le volume d'impression pour tous les objets"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:151 /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:42
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:151
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:42
msgctxt "@info:title"
msgid "Can't Find Location"
msgstr "Impossible de trouver un emplacement"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:104
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:116
msgctxt "@info:backup_failed"
msgid "Could not create archive from user data directory: {}"
msgstr "Impossible de créer une archive à partir du répertoire de données de l'utilisateur : {}"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:110 /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:107 /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:113
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:122
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:107
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:113
msgctxt "@info:title"
msgid "Backup"
msgstr "Sauvegarde"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:123
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:135
msgctxt "@info:backup_failed"
msgid "Tried to restore a Cura backup without having proper data or meta data."
msgstr "A essayé de restaurer une sauvegarde Cura sans disposer de données ou de métadonnées appropriées."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:134
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:146
msgctxt "@info:backup_failed"
msgid "Tried to restore a Cura backup that is higher than the current version."
msgstr "A essayé de restaurer une sauvegarde Cura supérieure à la version actuelle."
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:157
+msgctxt "@info:backup_failed"
+msgid "The following error occurred while trying to restore a Cura backup:"
+msgstr "L'erreur suivante s'est produite lors de la restauration d'une sauvegarde Cura :"
+
#: /home/trin/Gedeeld/Projects/Cura/cura/BuildVolume.py:98
msgctxt "@info:status"
msgid "The build volume height has been reduced due to the value of the \"Print Sequence\" setting to prevent the gantry from colliding with printed models."
@@ -299,71 +324,77 @@ msgctxt "@action:button"
msgid "Send report"
msgstr "Envoyer rapport"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:521
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:527
msgctxt "@info:progress"
msgid "Loading machines..."
msgstr "Chargement des machines..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:528
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:534
msgctxt "@info:progress"
msgid "Setting up preferences..."
msgstr "Configuration des préférences..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:657
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:672
msgctxt "@info:progress"
msgid "Initializing Active Machine..."
msgstr "Initialisation de la machine active..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:788
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:803
msgctxt "@info:progress"
msgid "Initializing machine manager..."
msgstr "Initialisation du gestionnaire de machine..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:802
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:817
msgctxt "@info:progress"
msgid "Initializing build volume..."
msgstr "Initialisation du volume de fabrication..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:870
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:888
msgctxt "@info:progress"
msgid "Setting up scene..."
msgstr "Préparation de la scène..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:906
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:924
msgctxt "@info:progress"
msgid "Loading interface..."
msgstr "Chargement de l'interface..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:911
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:929
msgctxt "@info:progress"
msgid "Initializing engine..."
msgstr "Initialisation du moteur..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1221
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1246
#, python-format
msgctxt "@info 'width', 'depth' and 'height' are variable names that must NOT be translated; just translate the format of ##x##x## mm."
msgid "%(width).1f x %(depth).1f x %(height).1f mm"
msgstr "%(width).1f x %(depth).1f x %(height).1f mm"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1777
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1799
#, python-brace-format
msgctxt "@info:status"
msgid "Only one G-code file can be loaded at a time. Skipped importing {0}"
msgstr "Un seul fichier G-Code peut être chargé à la fois. Importation de {0} sautée"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1778 /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:188 /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:242 /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:153
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1800
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:190
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:244
+#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:153
#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:165
msgctxt "@info:title"
msgid "Warning"
msgstr "Avertissement"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1787
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1809
#, python-brace-format
msgctxt "@info:status"
msgid "Can't open any other file if G-code is loading. Skipped importing {0}"
msgstr "Impossible d'ouvrir un autre fichier si le G-Code est en cours de chargement. Importation de {0} sautée"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1788 /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:146 /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:153 /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:139
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1810
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:146
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:153
+#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:139
msgctxt "@info:title"
msgid "Error"
msgstr "Erreur"
@@ -383,7 +414,7 @@ msgctxt "@info:title"
msgid "Placing Object"
msgstr "Placement de l'objet"
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationHelpers.py:90
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationHelpers.py:92
msgctxt "@message"
msgid "Could not read response."
msgstr "Impossible de lire la réponse."
@@ -403,28 +434,31 @@ msgctxt "@message"
msgid "Something unexpected happened when trying to log in, please try again."
msgstr "Une erreur s'est produite lors de la connexion, veuillez réessayer."
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:187
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:189
msgctxt "@info"
msgid "Unable to start a new sign in process. Check if another sign in attempt is still active."
msgstr "Impossible de lancer une nouvelle procédure de connexion. Vérifiez si une autre tentative de connexion est toujours active."
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:242
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:244
msgctxt "@info"
msgid "Unable to reach the Ultimaker account server."
msgstr "Impossible d’atteindre le serveur du compte Ultimaker."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:205 /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:132
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:205
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:132
msgctxt "@title:window"
msgid "File Already Exists"
msgstr "Le fichier existe déjà"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:206 /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:133
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:206
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:133
#, python-brace-format
msgctxt "@label Don't translate the XML tag !"
msgid "The file {0} already exists. Are you sure you want to overwrite it?"
msgstr "Le fichier {0} existe déjà. Êtes-vous sûr de vouloir le remplacer ?"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:452 /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:455
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:457
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:460
msgctxt "@info:status"
msgid "Invalid file URL:"
msgstr "URL de fichier invalide :"
@@ -476,7 +510,8 @@ msgctxt "@info:status Don't translate the XML tags !"
msgid "Failed to import profile from {0}:"
msgstr "Échec de l'importation du profil depuis le fichier {0} :"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:235 /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:245
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:235
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:245
#, python-brace-format
msgctxt "@info:status Don't translate the XML tags !"
msgid "This profile {0} contains incorrect data, could not import it."
@@ -506,33 +541,33 @@ msgctxt "@info:status"
msgid "Profile {0} has an unknown file type or is corrupted."
msgstr "Le profil {0} est un type de fichier inconnu ou est corrompu."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:423
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:426
msgctxt "@label"
msgid "Custom profile"
msgstr "Personnaliser le profil"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:439
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:442
msgctxt "@info:status"
msgid "Profile is missing a quality type."
msgstr "Il manque un type de qualité au profil."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:443
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:446
msgctxt "@info:status"
-msgid "Global stack is missing."
-msgstr "Il manque la pile globale."
+msgid "There is no active printer yet."
+msgstr "Aucune imprimante n'est active pour le moment."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:449
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:452
msgctxt "@info:status"
msgid "Unable to add the profile."
msgstr "Impossible d'ajouter le profil."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:463
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:466
#, python-brace-format
msgctxt "@info:status"
msgid "Quality type '{0}' is not compatible with the current active machine definition '{1}'."
msgstr "Le type de qualité « {0} » n'est pas compatible avec la définition actuelle de la machine active « {1} »."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:468
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:471
#, python-brace-format
msgctxt "@info:status"
msgid "Warning: The profile is not visible because its quality type '{0}' is not available for the current configuration. Switch to a material/nozzle combination that can use this quality type."
@@ -548,39 +583,50 @@ msgctxt "@info:No intent profile selected"
msgid "Default"
msgstr "Default"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:712 /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:216
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:713
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:216
msgctxt "@label"
msgid "Nozzle"
msgstr "Buse"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:860
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:856
msgctxt "@info:message Followed by a list of settings."
msgid "Settings have been changed to match the current availability of extruders:"
msgstr "Les paramètres ont été modifiés pour correspondre aux extrudeuses actuellement disponibles :"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:862
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:858
msgctxt "@info:title"
msgid "Settings updated"
msgstr "Paramètres mis à jour"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1447
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1478
msgctxt "@info:title"
msgid "Extruder(s) Disabled"
msgstr "Extrudeuse(s) désactivée(s)"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:17 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:67 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:48
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:17
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:67
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:48
msgctxt "@action:button"
msgid "Add"
msgstr "Ajouter"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:26 /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:263
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:26
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:272
msgctxt "@action:button"
msgid "Finish"
msgstr "Fin"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:33 /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:441 /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:234 /home/trin/Gedeeld/Projects/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:150
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxProgressButton.qml:19 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/dialogs/ToolboxConfirmUninstallResetDialog.qml:81 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:352
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:58 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/PrintWindow.qml:42 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:87
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:33
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:445
+#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:234
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:150
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxProgressButton.qml:19
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/dialogs/ToolboxConfirmUninstallResetDialog.qml:81
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:352
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:58
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/PrintWindow.qml:42
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:82
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:292
msgctxt "@action:button"
msgid "Cancel"
@@ -592,73 +638,84 @@ msgctxt "@label"
msgid "Group #{group_nr}"
msgstr "Groupe nº {group_nr}"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:83
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:82
msgctxt "@tooltip"
msgid "Outer Wall"
msgstr "Paroi externe"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:84
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:83
msgctxt "@tooltip"
msgid "Inner Walls"
msgstr "Parois internes"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:85
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:84
msgctxt "@tooltip"
msgid "Skin"
msgstr "Couche extérieure"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:86
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:85
msgctxt "@tooltip"
msgid "Infill"
msgstr "Remplissage"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:87
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:86
msgctxt "@tooltip"
msgid "Support Infill"
msgstr "Remplissage du support"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:88
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:87
msgctxt "@tooltip"
msgid "Support Interface"
msgstr "Interface du support"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:89
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:88
msgctxt "@tooltip"
msgid "Support"
msgstr "Support"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:90
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:89
msgctxt "@tooltip"
msgid "Skirt"
msgstr "Jupe"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:91
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:90
msgctxt "@tooltip"
msgid "Prime Tower"
msgstr "Tour primaire"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:92
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:91
msgctxt "@tooltip"
msgid "Travel"
msgstr "Déplacement"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:93
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:92
msgctxt "@tooltip"
msgid "Retractions"
msgstr "Rétractions"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:94
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:93
msgctxt "@tooltip"
msgid "Other"
msgstr "Autre"
#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:56
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:259
msgctxt "@action:button"
msgid "Next"
msgstr "Suivant"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WhatsNewPagesModel.py:17 /home/trin/Gedeeld/Projects/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:185 /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:128 /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:482
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:173 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:127
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:268
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WhatsNewPagesModel.py:55
+msgctxt "@action:button"
+msgid "Skip"
+msgstr "Passer"
+
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WhatsNewPagesModel.py:60
+#: /home/trin/Gedeeld/Projects/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:185
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:128
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:485
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:174
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:127
msgctxt "@action:button"
msgid "Close"
msgstr "Fermer"
@@ -682,29 +739,36 @@ msgstr ""
"
Découvrez comment optimiser la qualité et la fiabilité de l'impression.
"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:535
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:540
#, python-brace-format
msgctxt "@info:status Don't translate the XML tags or !"
msgid "Project file {0} contains an unknown machine type {1}. Cannot import the machine. Models will be imported instead."
msgstr "Le fichier projet {0} contient un type de machine inconnu {1}. Impossible d'importer la machine. Les modèles seront importés à la place."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:538
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:543
msgctxt "@info:title"
msgid "Open Project File"
msgstr "Ouvrir un fichier de projet"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:634
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:639
#, python-brace-format
msgctxt "@info:error Don't translate the XML tags or !"
msgid "Project file {0} is suddenly inaccessible: {1}."
msgstr "Le fichier de projet {0} est soudainement inaccessible : {1}."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:635
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:640
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:647
msgctxt "@info:title"
msgid "Can't Open Project File"
msgstr "Impossible d'ouvrir le fichier de projet"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:686
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:646
+#, python-brace-format
+msgctxt "@info:error Don't translate the XML tags or !"
+msgid "Project file {0} is corrupt: {1}."
+msgstr "Le fichier de projet {0} est corrompu : {1}."
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:698
#, python-brace-format
msgctxt "@info:error Don't translate the XML tag !"
msgid "Project file {0} is made using profiles that are unknown to this version of Ultimaker Cura."
@@ -720,7 +784,8 @@ msgctxt "@title:tab"
msgid "Custom"
msgstr "Personnalisé"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/__init__.py:27 /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/__init__.py:33
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/__init__.py:27
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/__init__.py:33
msgctxt "@item:inlistbox"
msgid "3MF File"
msgstr "Fichier 3MF"
@@ -730,7 +795,8 @@ msgctxt "@error:zip"
msgid "3MF Writer plug-in is corrupt."
msgstr "Le plug-in 3MF Writer est corrompu."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:59 /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:92
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:59
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:92
msgctxt "@error:zip"
msgid "No permission to write the workspace here."
msgstr "Aucune autorisation d'écrire l'espace de travail ici."
@@ -740,7 +806,7 @@ msgctxt "@error:zip"
msgid "The operating system does not allow saving a project file to this location or with this file name."
msgstr "Le système d'exploitation ne permet pas d'enregistrer un fichier de projet à cet emplacement ou avec ce nom de fichier."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWriter.py:185
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWriter.py:206
msgctxt "@error:zip"
msgid "Error writing 3mf file."
msgstr "Erreur d'écriture du fichier 3MF."
@@ -795,7 +861,8 @@ msgctxt "@error:file_size"
msgid "The backup exceeds the maximum file size."
msgstr "La sauvegarde dépasse la taille de fichier maximale."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DriveApiService.py:82 /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/RestoreBackupJob.py:23
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DriveApiService.py:86
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/RestoreBackupJob.py:26
msgctxt "@info:backup_status"
msgid "There was an error trying to restore your backup."
msgstr "Une erreur s’est produite lors de la tentative de restauration de votre sauvegarde."
@@ -805,41 +872,45 @@ msgctxt "@item:inmenu"
msgid "Manage backups"
msgstr "Gérer les sauvegardes"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:356
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:382
msgctxt "@info:status"
msgid "Unable to slice with the current material as it is incompatible with the selected machine or configuration."
msgstr "Impossible de découper le matériau actuel, car celui-ci est incompatible avec la machine ou la configuration sélectionnée."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:356 /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:387 /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:411 /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:420
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:429 /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:441
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:382
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:413
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:437
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:446
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:455
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:467
msgctxt "@info:title"
msgid "Unable to slice"
msgstr "Impossible de découper"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:386
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:412
#, python-brace-format
msgctxt "@info:status"
msgid "Unable to slice with the current settings. The following settings have errors: {0}"
msgstr "Impossible de couper avec les paramètres actuels. Les paramètres suivants contiennent des erreurs : {0}"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:410
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:436
#, python-brace-format
msgctxt "@info:status"
msgid "Unable to slice due to some per-model settings. The following settings have errors on one or more models: {error_labels}"
msgstr "Impossible de couper en raison de certains paramètres par modèle. Les paramètres suivants contiennent des erreurs sur un ou plusieurs modèles : {error_labels}"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:419
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:445
msgctxt "@info:status"
msgid "Unable to slice because the prime tower or prime position(s) are invalid."
msgstr "Impossible de couper car la tour primaire ou la (les) position(s) d'amorçage ne sont pas valides."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:428
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:454
#, python-format
msgctxt "@info:status"
msgid "Unable to slice because there are objects associated with disabled Extruder %s."
msgstr "Impossible de couper car il existe des objets associés à l'extrudeuse désactivée %s."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:437
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:463
msgctxt "@info:status"
msgid ""
"Please review settings and check if your models:\n"
@@ -852,7 +923,8 @@ msgstr ""
"- Sont affectés à un extrudeur activé\n"
"- N sont pas tous définis comme des mailles de modificateur"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/ProcessSlicedLayersJob.py:52 /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/ProcessSlicedLayersJob.py:260
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/ProcessSlicedLayersJob.py:52
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/ProcessSlicedLayersJob.py:260
msgctxt "@info:status"
msgid "Processing Layers"
msgstr "Traitement des couches"
@@ -862,7 +934,8 @@ msgctxt "@info:title"
msgid "Information"
msgstr "Informations"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraProfileReader/__init__.py:14 /home/trin/Gedeeld/Projects/Cura/plugins/CuraProfileWriter/__init__.py:14
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraProfileReader/__init__.py:14
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraProfileWriter/__init__.py:14
msgctxt "@item:inlistbox"
msgid "Cura Profile"
msgstr "Profil Cura"
@@ -894,7 +967,8 @@ msgctxt "@action"
msgid "Update Firmware"
msgstr "Mettre à jour le firmware"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeGzReader/__init__.py:17 /home/trin/Gedeeld/Projects/Cura/plugins/GCodeGzWriter/__init__.py:17
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeGzReader/__init__.py:17
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeGzWriter/__init__.py:17
msgctxt "@item:inlistbox"
msgid "Compressed G-code File"
msgstr "Fichier G-Code compressé"
@@ -904,7 +978,9 @@ msgctxt "@error:not supported"
msgid "GCodeGzWriter does not support text mode."
msgstr "GCodeGzWriter ne prend pas en charge le mode texte."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeProfileReader/__init__.py:14 /home/trin/Gedeeld/Projects/Cura/plugins/GCodeReader/__init__.py:14 /home/trin/Gedeeld/Projects/Cura/plugins/GCodeWriter/__init__.py:16
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeProfileReader/__init__.py:14
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeReader/__init__.py:14
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeWriter/__init__.py:16
msgctxt "@item:inlistbox"
msgid "G-code File"
msgstr "Fichier GCode"
@@ -914,7 +990,8 @@ msgctxt "@info:status"
msgid "Parsing G-code"
msgstr "Analyse du G-Code"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeReader/FlavorParser.py:349 /home/trin/Gedeeld/Projects/Cura/plugins/GCodeReader/FlavorParser.py:503
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeReader/FlavorParser.py:349
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeReader/FlavorParser.py:503
msgctxt "@info:title"
msgid "G-code Details"
msgstr "Détails G-Code"
@@ -934,7 +1011,8 @@ msgctxt "@error:not supported"
msgid "GCodeWriter does not support non-text mode."
msgstr "GCodeWriter ne prend pas en charge le mode non-texte."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeWriter/GCodeWriter.py:80 /home/trin/Gedeeld/Projects/Cura/plugins/GCodeWriter/GCodeWriter.py:96
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeWriter/GCodeWriter.py:80
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeWriter/GCodeWriter.py:96
msgctxt "@warning:status"
msgid "Please prepare G-code before exporting."
msgstr "Veuillez préparer le G-Code avant d'exporter."
@@ -1020,7 +1098,8 @@ msgctxt "@item:inlistbox"
msgid "Save to Removable Drive {0}"
msgstr "Enregistrer sur un lecteur amovible {0}"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:66 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/MeshFormatHandler.py:118
+#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:66
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/MeshFormatHandler.py:118
msgctxt "@info:status"
msgid "There are no file formats available to write with!"
msgstr "Aucun format de fichier n'est disponible pour écriture !"
@@ -1036,7 +1115,8 @@ msgctxt "@info:title"
msgid "Saving"
msgstr "Enregistrement"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:106 /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:109
+#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:106
+#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:109
#, python-brace-format
msgctxt "@info:status Don't translate the XML tags or !"
msgid "Could not save to {0}: {1}"
@@ -1048,7 +1128,8 @@ msgctxt "@info:status Don't translate the tag {device}!"
msgid "Could not find a file name when trying to write to {device}."
msgstr "Impossible de trouver un nom de fichier lors d'une tentative d'écriture sur {device}."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:138 /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:153
+#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:138
+#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:153
#, python-brace-format
msgctxt "@info:status"
msgid "Could not save to removable drive {0}: {1}"
@@ -1098,27 +1179,28 @@ msgctxt "@item:intext"
msgid "Removable Drive"
msgstr "Lecteur amovible"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:121
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:128
msgctxt "@info:status"
msgid "Cura does not accurately display layers when Wire Printing is enabled."
msgstr "Cura n'affiche pas les couches avec précision lorsque l'impression filaire est activée."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:122
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:129
msgctxt "@info:title"
msgid "Simulation View"
msgstr "Vue simulation"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:123
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:130
msgctxt "@info:status"
msgid "Nothing is shown because you need to slice first."
msgstr "Rien ne s'affiche car vous devez d'abord découper."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:123
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:130
msgctxt "@info:title"
msgid "No layers to show"
msgstr "Pas de couches à afficher"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:124 /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:73
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:131
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:74
msgctxt "@info:option_text"
msgid "Do not show this message again"
msgstr "Ne plus afficher ce message"
@@ -1128,16 +1210,21 @@ msgctxt "@item:inlistbox"
msgid "Layer view"
msgstr "Vue en couches"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:70
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:71
msgctxt "@info:status"
-msgid "Your model is not manifold. The highlighted areas indicate either missing or extraneous surfaces."
-msgstr "Votre modèle n'est pas fonctionnel. Les zones surlignées indiquent que des surfaces manquent ou sont étrangères."
+msgid "The highlighted areas indicate either missing or extraneous surfaces. Fix your model and open it again into Cura."
+msgstr "Les zones surlignées indiquent que des surfaces manquent ou sont étrangères. Réparez votre modèle et ouvrez-le à nouveau dans Cura."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:72
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:73
msgctxt "@info:title"
-msgid "Model errors"
+msgid "Model Errors"
msgstr "Erreurs du modèle"
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:79
+msgctxt "@action:button"
+msgid "Learn more"
+msgstr "En savoir plus"
+
#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/__init__.py:12
msgctxt "@item:inmenu"
msgid "Solid view"
@@ -1158,12 +1245,13 @@ msgctxt "@info:generic"
msgid "Do you want to sync material and software packages with your account?"
msgstr "Vous souhaitez synchroniser du matériel et des logiciels avec votre compte ?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py:143 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/DownloadPresenter.py:93
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py:143
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/DownloadPresenter.py:93
msgctxt "@info:title"
msgid "Changes detected from your Ultimaker account"
msgstr "Changements détectés à partir de votre compte Ultimaker"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py:146
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py:145
msgctxt "@action:button"
msgid "Sync"
msgstr "Synchroniser"
@@ -1178,7 +1266,8 @@ msgctxt "@button"
msgid "Decline"
msgstr "Refuser"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/LicenseModel.py:10 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/UserAgreementContent.qml:56
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/LicenseModel.py:10
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/UserAgreementContent.qml:56
msgctxt "@button"
msgid "Agree"
msgstr "Accepter"
@@ -1198,7 +1287,7 @@ msgctxt "@info:generic"
msgid "You need to quit and restart {} before changes have effect."
msgstr "Vous devez quitter et redémarrer {} avant que les changements apportés ne prennent effet."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/SyncOrchestrator.py:76
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/SyncOrchestrator.py:79
msgctxt "@info:generic"
msgid "{} plugins failed to download"
msgstr "Échec de téléchargement des plugins {}"
@@ -1233,12 +1322,17 @@ msgctxt "@item:inlistbox"
msgid "Compressed COLLADA Digital Asset Exchange"
msgstr "COLLADA Digital Asset Exchange compressé"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPReader/__init__.py:22 /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/__init__.py:28
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPReader/__init__.py:22
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/__init__.py:28
msgctxt "@item:inlistbox"
msgid "Ultimaker Format Package"
msgstr "Ultimaker Format Package"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:146
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:57
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:72
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:94
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:149
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:159
msgctxt "@info:error"
msgid "Can't write to UFP file:"
msgstr "Impossible d'écrire dans le fichier UFP :"
@@ -1253,22 +1347,22 @@ msgctxt "@action"
msgid "Select upgrades"
msgstr "Sélectionner les mises à niveau"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:152
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:154
msgctxt "@action:button"
msgid "Print via cloud"
msgstr "Imprimer via le cloud"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:153
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:155
msgctxt "@properties:tooltip"
msgid "Print via cloud"
msgstr "Imprimer via le cloud"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:154
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:156
msgctxt "@info:status"
msgid "Connected via cloud"
msgstr "Connecté via le cloud"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:264
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:270
#, python-brace-format
msgctxt "@error:send"
msgid "Unknown error code when uploading print job: {0}"
@@ -1314,7 +1408,8 @@ msgid_plural "These printers are not linked to the Digital Factory:"
msgstr[0] "Cette imprimante n'est pas associée à Digital Factory :"
msgstr[1] "Ces imprimantes ne sont pas associées à Digital Factory :"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:329 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:419
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:329
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:419
msgctxt "info:name"
msgid "Ultimaker Digital Factory"
msgstr "Ultimaker Digital Factory"
@@ -1565,126 +1660,137 @@ msgctxt "@info:tooltip"
msgid "Some things could be problematic in this print. Click to see tips for adjustment."
msgstr "Certains éléments pourraient causer des problèmes à cette impression. Cliquez pour voir les conseils d'ajustement."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:14
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:15
msgctxt "@title:window"
msgid "Open Project"
msgstr "Ouvrir un projet"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:61
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:62
msgctxt "@action:ComboBox Update/override existing profile"
msgid "Update existing"
msgstr "Mettre à jour l'existant"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:62
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:63
msgctxt "@action:ComboBox Save settings in a new profile"
msgid "Create new"
msgstr "Créer"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:74 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:69
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:75
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:69
msgctxt "@action:title"
msgid "Summary - Cura Project"
msgstr "Résumé - Projet Cura"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:96 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:93
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:97
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:93
msgctxt "@action:label"
msgid "Printer settings"
msgstr "Paramètres de l'imprimante"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:112
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:113
msgctxt "@info:tooltip"
msgid "How should the conflict in the machine be resolved?"
msgstr "Comment le conflit de la machine doit-il être résolu ?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:165 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:102
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:167
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:102
msgctxt "@action:label"
msgid "Type"
msgstr "Type"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:181 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:117
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:183
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:117
msgctxt "@action:label"
msgid "Printer Group"
msgstr "Groupe d'imprimantes"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:203 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:218
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:205
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:218
msgctxt "@action:label"
msgid "Profile settings"
msgstr "Paramètres de profil"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:219
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:221
msgctxt "@info:tooltip"
msgid "How should the conflict in the profile be resolved?"
msgstr "Comment le conflit du profil doit-il être résolu ?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:239 /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:349 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:117 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:242
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:242
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:353
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:117
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:242
msgctxt "@action:label"
msgid "Name"
msgstr "Nom"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:255 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:259
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:258
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:259
msgctxt "@action:label"
msgid "Intent"
msgstr "Intent"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:271 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:226
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:274
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:226
msgctxt "@action:label"
msgid "Not in profile"
msgstr "Absent du profil"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:276 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:231
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:279
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:231
msgctxt "@action:label"
msgid "%1 override"
msgid_plural "%1 overrides"
msgstr[0] "%1 écrasent"
msgstr[1] "%1 écrase"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:287
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:290
msgctxt "@action:label"
msgid "Derivative from"
msgstr "Dérivé de"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:292
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:295
msgctxt "@action:label"
msgid "%1, %2 override"
msgid_plural "%1, %2 overrides"
msgstr[0] "%1, %2 écrasent"
msgstr[1] "%1, %2 écrase"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:309
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:312
msgctxt "@action:label"
msgid "Material settings"
msgstr "Paramètres du matériau"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:325
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:328
msgctxt "@info:tooltip"
msgid "How should the conflict in the material be resolved?"
msgstr "Comment le conflit du matériau doit-il être résolu ?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:369
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:373
msgctxt "@action:label"
msgid "Setting visibility"
msgstr "Visibilité des paramètres"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:378
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:382
msgctxt "@action:label"
msgid "Mode"
msgstr "Mode"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:394
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:398
msgctxt "@action:label"
msgid "Visible settings:"
msgstr "Paramètres visibles :"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:399
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:403
msgctxt "@action:label"
msgid "%1 out of %2"
msgstr "%1 sur %2"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:425
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:429
msgctxt "@action:warning"
msgid "Loading a project will clear all models on the build plate."
msgstr "Le chargement d'un projet effacera tous les modèles sur le plateau."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:453
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:457
msgctxt "@action:button"
msgid "Open"
msgstr "Ouvrir"
@@ -1784,7 +1890,10 @@ msgctxt "@description"
msgid "Backup and synchronize your Cura settings."
msgstr "Sauvegardez et synchronisez vos paramètres Cura."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/qml/pages/WelcomePage.qml:51 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/WelcomePage.qml:39 /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:68 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:125
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/qml/pages/WelcomePage.qml:51
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/WelcomePage.qml:39
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:53
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:199
msgctxt "@button"
msgid "Sign in"
msgstr "Se connecter"
@@ -1934,7 +2043,8 @@ msgctxt "@item:inlistbox"
msgid "Linear"
msgstr "Linéaire"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:161 /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:172
+#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:161
+#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:172
msgctxt "@item:inlistbox"
msgid "Translucency"
msgstr "Translucidité"
@@ -1959,7 +2069,9 @@ msgctxt "@action:label"
msgid "Smoothing"
msgstr "Lissage"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:227 /home/trin/Gedeeld/Projects/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:139 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:361
+#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:227
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:139
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:361
msgctxt "@action:button"
msgid "OK"
msgstr "OK"
@@ -1979,10 +2091,18 @@ msgctxt "@label"
msgid "Nozzle size"
msgstr "Taille de la buse"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:79 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:93 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:109
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:124 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:74 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:89
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:104 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:205 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:225
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:245 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:265 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:283
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:79
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:93
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:109
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:124
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:74
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:89
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:104
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:205
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:225
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:245
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:265
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:283
msgctxt "@label"
msgid "mm"
msgstr "mm"
@@ -2007,12 +2127,12 @@ msgctxt "@label"
msgid "Cooling Fan Number"
msgstr "Numéro du ventilateur de refroidissement"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:162
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:163
msgctxt "@title:label"
msgid "Extruder Start G-code"
msgstr "Extrudeuse G-Code de démarrage"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:176
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:177
msgctxt "@title:label"
msgid "Extruder End G-code"
msgstr "Extrudeuse G-Code de fin"
@@ -2097,12 +2217,17 @@ msgctxt "@label"
msgid "Number of Extruders"
msgstr "Nombre d'extrudeuses"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:374
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:345
+msgctxt "@label"
+msgid "Apply Extruder offsets to GCode"
+msgstr "Appliquer les décalages offset de l'extrudeuse au GCode"
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:393
msgctxt "@title:label"
msgid "Start G-code"
msgstr "G-Code de démarrage"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:385
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:404
msgctxt "@title:label"
msgid "End G-code"
msgstr "G-Code de fin"
@@ -2129,6 +2254,11 @@ msgctxt "@label link to technical assistance"
msgid "View user manuals online"
msgstr "Voir les manuels d'utilisation en ligne"
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MonitorStage/MonitorMain.qml:172
+msgctxt "@info"
+msgid "In order to monitor your print from Cura, please connect the printer."
+msgstr "Pour surveiller votre impression depuis Cura, veuillez connecter l'imprimante."
+
#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml:42
msgctxt "@label"
msgid "Mesh Type"
@@ -2174,7 +2304,8 @@ msgctxt "@title:window"
msgid "Select Settings to Customize for this model"
msgstr "Sélectionner les paramètres pour personnaliser ce modèle"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:55 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:94
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:55
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:96
msgctxt "@label:textbox"
msgid "Filter..."
msgstr "Filtrer..."
@@ -2184,114 +2315,131 @@ msgctxt "@label:checkbox"
msgid "Show all"
msgstr "Afficher tout"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:18
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:20
msgctxt "@title:window"
msgid "Post Processing Plugin"
msgstr "Plug-in de post-traitement"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:57
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:59
msgctxt "@label"
msgid "Post Processing Scripts"
msgstr "Scripts de post-traitement"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:233
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:235
msgctxt "@action"
msgid "Add a script"
msgstr "Ajouter un script"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:279
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:282
msgctxt "@label"
msgid "Settings"
msgstr "Paramètres"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:499
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:502
msgctxt "@info:tooltip"
msgid "Change active post-processing scripts."
msgstr "Modifiez les scripts de post-traitement actifs."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:503
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:506
msgctxt "@info:tooltip"
msgid "The following script is active:"
msgid_plural "The following scripts are active:"
msgstr[0] "Le script suivant est actif :"
msgstr[1] "Les scripts suivants sont actifs :"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:20 /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:49
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:20
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:49
msgctxt "@label"
msgid "Color scheme"
msgstr "Modèle de couleurs"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:107
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:110
msgctxt "@label:listbox"
msgid "Material Color"
msgstr "Couleur du matériau"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:111
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:114
msgctxt "@label:listbox"
msgid "Line Type"
msgstr "Type de ligne"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:115
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:118
msgctxt "@label:listbox"
msgid "Speed"
msgstr "Vitesse"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:119
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:122
msgctxt "@label:listbox"
-msgid "Layer thickness"
+msgid "Layer Thickness"
msgstr "Épaisseur de la couche"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:156
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:126
+msgctxt "@label:listbox"
+msgid "Line Width"
+msgstr "Largeur de ligne"
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:130
+msgctxt "@label:listbox"
+msgid "Flow"
+msgstr "Débit"
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:171
msgctxt "@label"
msgid "Compatibility Mode"
msgstr "Mode de compatibilité"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:230
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:245
msgctxt "@label"
msgid "Travels"
msgstr "Déplacements"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:236
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:251
msgctxt "@label"
msgid "Helpers"
msgstr "Aides"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:242
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:257
msgctxt "@label"
msgid "Shell"
msgstr "Coque"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:248 /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedInfillDensitySelector.qml:65
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:263
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedInfillDensitySelector.qml:65
msgctxt "@label"
msgid "Infill"
msgstr "Remplissage"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:298
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:271
+msgctxt "@label"
+msgid "Starts"
+msgstr "Démarre"
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:322
msgctxt "@label"
msgid "Only Show Top Layers"
msgstr "Afficher uniquement les couches supérieures"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:308
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:332
msgctxt "@label"
msgid "Show 5 Detailed Layers On Top"
msgstr "Afficher 5 niveaux détaillés en haut"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:322
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:346
msgctxt "@label"
msgid "Top / Bottom"
msgstr "Haut / bas"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:326
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:350
msgctxt "@label"
msgid "Inner Wall"
msgstr "Paroi interne"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:384
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:419
msgctxt "@label"
msgid "min"
msgstr "min."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:433
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:488
msgctxt "@label"
msgid "max"
msgstr "max."
@@ -2366,7 +2514,8 @@ msgctxt "@action:label"
msgid "Website"
msgstr "Site Internet"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:46 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxProgressButton.qml:20
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:46
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxProgressButton.qml:20
msgctxt "@action:button"
msgid "Installed"
msgstr "Installé"
@@ -2381,17 +2530,20 @@ msgctxt "@label:The string between and is the highlighted link"
msgid "Buy material spools"
msgstr "Acheter des bobines de matériau"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:96 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxInstalledTileActions.qml:34
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:96
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxInstalledTileActions.qml:34
msgctxt "@action:button"
msgid "Update"
msgstr "Mise à jour"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:97 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxInstalledTileActions.qml:35
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:97
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxInstalledTileActions.qml:35
msgctxt "@action:button"
msgid "Updating"
msgstr "Mise à jour"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:98 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxInstalledTileActions.qml:36
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:98
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxInstalledTileActions.qml:36
msgctxt "@action:button"
msgid "Updated"
msgstr "Mis à jour"
@@ -2401,7 +2553,8 @@ msgctxt "@label"
msgid "Premium"
msgstr "Premium"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDownloadsShowcase.qml:39 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxHeader.qml:86
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDownloadsShowcase.qml:39
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxHeader.qml:86
msgctxt "@info:tooltip"
msgid "Go to Web Marketplace"
msgstr "Aller sur le Marché en ligne"
@@ -2426,7 +2579,9 @@ msgctxt "@title:tab"
msgid "Plugins"
msgstr "Plug-ins"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxHeader.qml:44 /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:466 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:89
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxHeader.qml:44
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:457
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:89
msgctxt "@title:tab"
msgid "Materials"
msgstr "Matériaux"
@@ -2471,7 +2626,10 @@ msgctxt "@button"
msgid "Dismiss"
msgstr "Ignorer"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/dialogs/CompatibilityDialog.qml:23 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:123 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/FirstStartMachineActionsContent.qml:77
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/dialogs/CompatibilityDialog.qml:23
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:123
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/FirstStartMachineActionsContent.qml:77
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:178
msgctxt "@button"
msgid "Next"
msgstr "Suivant"
@@ -2536,7 +2694,8 @@ msgctxt "@label"
msgid "Last updated"
msgstr "Dernière mise à jour"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:103 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:138
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:103
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:138
msgctxt "@label"
msgid "Brand"
msgstr "Marque"
@@ -2666,7 +2825,9 @@ msgctxt "@action:button"
msgid "Edit"
msgstr "Modifier"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:88 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:55 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:156
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:88
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:55
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:156
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:138
msgctxt "@action:button"
msgid "Remove"
@@ -2682,17 +2843,20 @@ msgctxt "@label"
msgid "If your printer is not listed, read the network printing troubleshooting guide"
msgstr "Si votre imprimante n'apparaît pas dans la liste, lisez le guide de dépannage de l'impression en réseau"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:205 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:263
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:205
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:263
msgctxt "@label"
msgid "Type"
msgstr "Type"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:225 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:279
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:225
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:279
msgctxt "@label"
msgid "Firmware version"
msgstr "Version du firmware"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:239 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:295
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:239
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:295
msgctxt "@label"
msgid "Address"
msgstr "Adresse"
@@ -2722,7 +2886,8 @@ msgctxt "@title:window"
msgid "Invalid IP address"
msgstr "Adresse IP non valide"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:297 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:146
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:297
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:146
msgctxt "@text"
msgid "Please enter a valid IP address."
msgstr "Veuillez saisir une adresse IP valide."
@@ -2732,7 +2897,8 @@ msgctxt "@title:window"
msgid "Printer Address"
msgstr "Adresse de l'imprimante"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:331 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:102
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:331
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:102
msgctxt "@label"
msgid "Enter the IP address of your printer on the network."
msgstr "Saisissez l'adresse IP de votre imprimante sur le réseau."
@@ -2784,7 +2950,9 @@ msgctxt "@label"
msgid "Override will use the specified settings with the existing printer configuration. This may result in a failed print."
msgstr "Si vous sélectionnez « Remplacer », les paramètres de la configuration actuelle de l'imprimante seront utilisés. Cela peut entraîner l'échec de l'impression."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:153 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:191 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:184
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:153
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:191
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:184
msgctxt "@label"
msgid "Glass"
msgstr "Verre"
@@ -2804,7 +2972,8 @@ msgctxt "@label"
msgid "Delete"
msgstr "Effacer"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:100 /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:289
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:100
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:290
msgctxt "@label"
msgid "Resume"
msgstr "Reprendre"
@@ -2819,7 +2988,9 @@ msgctxt "@label"
msgid "Resuming..."
msgstr "Reprise..."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:106 /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:284 /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:293
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:106
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:285
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:294
msgctxt "@label"
msgid "Pause"
msgstr "Pause"
@@ -2859,7 +3030,8 @@ msgctxt "@label %1 is the name of a print job."
msgid "Are you sure you want to abort %1?"
msgstr "Êtes-vous sûr de vouloir annuler %1 ?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:164 /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:335
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:164
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:336
msgctxt "@window:title"
msgid "Abort print"
msgstr "Abandonner l'impression"
@@ -2869,7 +3041,9 @@ msgctxt "@label link to Connect and Cloud interfaces"
msgid "Manage printer"
msgstr "Gérer l'imprimante"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:254 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:519 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:250
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:254
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:523
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:250
msgctxt "@info"
msgid "Please update your printer's firmware to manage the queue remotely."
msgstr "Veuillez mettre à jour le Firmware de votre imprimante pour gérer la file d'attente à distance."
@@ -2894,27 +3068,34 @@ msgctxt "@label:status"
msgid "Idle"
msgstr "Inactif"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:365
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:364
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:84
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:86
+msgctxt "@label:status"
+msgid "Preparing..."
+msgstr "Préparation..."
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:369
msgctxt "@label:status"
msgid "Printing"
msgstr "Impression"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:406
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:410
msgctxt "@label"
msgid "Untitled"
msgstr "Sans titre"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:427
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:431
msgctxt "@label"
msgid "Anonymous"
msgstr "Anonyme"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:454
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:458
msgctxt "@label:status"
msgid "Requires configuration changes"
msgstr "Nécessite des modifications de configuration"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:492
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:496
msgctxt "@action:button"
msgid "Details"
msgstr "Détails"
@@ -2929,21 +3110,18 @@ msgctxt "@label"
msgid "First available"
msgstr "Premier disponible"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:78 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:90
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:78
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:90
msgctxt "@label:status"
msgid "Aborted"
msgstr "Abandonné"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:80 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:82
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:80
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:82
msgctxt "@label:status"
msgid "Finished"
msgstr "Terminé"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:84 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:86
-msgctxt "@label:status"
-msgid "Preparing..."
-msgstr "Préparation..."
-
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:88
msgctxt "@label:status"
msgid "Aborting..."
@@ -3024,26 +3202,24 @@ msgctxt "@action:button"
msgid "Sign in"
msgstr "Se connecter"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:40
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:20
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:64
msgctxt "@label"
-msgid "Your key to connected 3D printing"
-msgstr "Votre clé pour une impression 3D connectée"
+msgid "Sign in to the Ultimaker platform"
+msgstr "Connectez-vous à la plateforme Ultimaker"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:51
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:42
msgctxt "@text"
msgid ""
-"- Customize your experience with more print profiles and plugins\n"
-"- Stay flexible by syncing your setup and loading it anywhere\n"
-"- Increase efficiency with a remote workflow on Ultimaker printers"
-msgstr ""
-"- Personnalisez votre expérience avec plus de profils d'impression et de plug-ins\n"
-"- Restez flexible en synchronisant votre configuration et en la chargeant n'importe où\n"
-"- Augmentez l'efficacité grâce à un flux de travail à distance sur les imprimantes Ultimaker"
+"- Add material profiles and plug-ins from the Marketplace\n"
+"- Back-up and sync your material profiles and plug-ins\n"
+"- Share ideas and get help from 48,000+ users in the Ultimaker community"
+msgstr "- Ajoutez des profils de matériaux et des plug-ins à partir de la Marketplace - Sauvegardez et synchronisez vos profils de matériaux et vos plug-ins - Partagez vos idées et obtenez l'aide de plus de 48 000 utilisateurs de la communauté Ultimaker"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:78 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:142
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:62
msgctxt "@button"
-msgid "Create account"
-msgstr "Créer un compte"
+msgid "Create a free Ultimaker account"
+msgstr "Créez gratuitement un compte Ultimaker"
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/SyncState.qml:28
msgctxt "@label"
@@ -3150,303 +3326,308 @@ msgctxt "@button"
msgid "Cancel"
msgstr "Annuler"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:82
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:83
msgctxt "@action:inmenu"
msgid "Show Online Troubleshooting Guide"
msgstr "Afficher le guide de dépannage en ligne"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:89
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:90
msgctxt "@action:inmenu"
msgid "Toggle Full Screen"
msgstr "Passer en Plein écran"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:97
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:98
msgctxt "@action:inmenu"
msgid "Exit Full Screen"
msgstr "Quitter le mode plein écran"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:104
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:105
msgctxt "@action:inmenu menubar:edit"
msgid "&Undo"
msgstr "&Annuler"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:114
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:115
msgctxt "@action:inmenu menubar:edit"
msgid "&Redo"
msgstr "&Rétablir"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:124
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:125
msgctxt "@action:inmenu menubar:file"
msgid "&Quit"
msgstr "&Quitter"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:132
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:133
msgctxt "@action:inmenu menubar:view"
msgid "3D View"
msgstr "Vue 3D"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:139
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:140
msgctxt "@action:inmenu menubar:view"
msgid "Front View"
msgstr "Vue de face"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:146
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:147
msgctxt "@action:inmenu menubar:view"
msgid "Top View"
msgstr "Vue du dessus"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:153
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:154
+msgctxt "@action:inmenu menubar:view"
+msgid "Bottom View"
+msgstr "Vue de dessous"
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:161
msgctxt "@action:inmenu menubar:view"
msgid "Left Side View"
msgstr "Vue latérale gauche"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:160
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:168
msgctxt "@action:inmenu menubar:view"
msgid "Right Side View"
msgstr "Vue latérale droite"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:167
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:175
msgctxt "@action:inmenu"
msgid "Configure Cura..."
msgstr "Configurer Cura..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:174
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:182
msgctxt "@action:inmenu menubar:printer"
msgid "&Add Printer..."
msgstr "&Ajouter une imprimante..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:180
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:188
msgctxt "@action:inmenu menubar:printer"
msgid "Manage Pr&inters..."
msgstr "Gérer les &imprimantes..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:187
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:195
msgctxt "@action:inmenu"
msgid "Manage Materials..."
msgstr "Gérer les matériaux..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:195
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:203
msgctxt "@action:inmenu"
msgid "Add more materials from Marketplace"
msgstr "Ajouter d'autres matériaux du Marketplace"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:202
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:210
msgctxt "@action:inmenu menubar:profile"
msgid "&Update profile with current settings/overrides"
msgstr "&Mettre à jour le profil à l'aide des paramètres / forçages actuels"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:210
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:218
msgctxt "@action:inmenu menubar:profile"
msgid "&Discard current changes"
msgstr "&Ignorer les modifications actuelles"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:222
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:230
msgctxt "@action:inmenu menubar:profile"
msgid "&Create profile from current settings/overrides..."
msgstr "&Créer un profil à partir des paramètres / forçages actuels..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:228
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:236
msgctxt "@action:inmenu menubar:profile"
msgid "Manage Profiles..."
msgstr "Gérer les profils..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:236
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:244
msgctxt "@action:inmenu menubar:help"
msgid "Show Online &Documentation"
msgstr "Afficher la &documentation en ligne"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:244
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:252
msgctxt "@action:inmenu menubar:help"
msgid "Report a &Bug"
msgstr "Notifier un &bug"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:252
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:260
msgctxt "@action:inmenu menubar:help"
msgid "What's New"
msgstr "Quoi de neuf"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:258
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:266
msgctxt "@action:inmenu menubar:help"
msgid "About..."
msgstr "À propos de..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:265
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:273
msgctxt "@action:inmenu menubar:edit"
-msgid "Delete Selected Model"
-msgid_plural "Delete Selected Models"
-msgstr[0] "Supprimer le modèle sélectionné"
-msgstr[1] "Supprimer les modèles sélectionnés"
+msgid "Delete Selected"
+msgstr "Supprimer la sélection"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:275
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:283
msgctxt "@action:inmenu menubar:edit"
-msgid "Center Selected Model"
-msgid_plural "Center Selected Models"
-msgstr[0] "Centrer le modèle sélectionné"
-msgstr[1] "Centrer les modèles sélectionnés"
+msgid "Center Selected"
+msgstr "Centrer la sélection"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:284
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:292
msgctxt "@action:inmenu menubar:edit"
-msgid "Multiply Selected Model"
-msgid_plural "Multiply Selected Models"
-msgstr[0] "Multiplier le modèle sélectionné"
-msgstr[1] "Multiplier les modèles sélectionnés"
+msgid "Multiply Selected"
+msgstr "Multiplier la sélection"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:293
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:301
msgctxt "@action:inmenu"
msgid "Delete Model"
msgstr "Supprimer le modèle"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:301
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:309
msgctxt "@action:inmenu"
msgid "Ce&nter Model on Platform"
msgstr "Ce&ntrer le modèle sur le plateau"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:307
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:315
msgctxt "@action:inmenu menubar:edit"
msgid "&Group Models"
msgstr "&Grouper les modèles"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:327
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:335
msgctxt "@action:inmenu menubar:edit"
msgid "Ungroup Models"
msgstr "Dégrouper les modèles"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:337
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:345
msgctxt "@action:inmenu menubar:edit"
msgid "&Merge Models"
msgstr "&Fusionner les modèles"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:347
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:355
msgctxt "@action:inmenu"
msgid "&Multiply Model..."
msgstr "&Multiplier le modèle..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:354
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:362
msgctxt "@action:inmenu menubar:edit"
msgid "Select All Models"
msgstr "Sélectionner tous les modèles"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:364
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:372
msgctxt "@action:inmenu menubar:edit"
msgid "Clear Build Plate"
msgstr "Supprimer les objets du plateau"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:374
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:382
msgctxt "@action:inmenu menubar:file"
msgid "Reload All Models"
msgstr "Recharger tous les modèles"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:383
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:391
msgctxt "@action:inmenu menubar:edit"
msgid "Arrange All Models To All Build Plates"
msgstr "Réorganiser tous les modèles sur tous les plateaux"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:390
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:398
msgctxt "@action:inmenu menubar:edit"
msgid "Arrange All Models"
msgstr "Réorganiser tous les modèles"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:398
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:406
msgctxt "@action:inmenu menubar:edit"
msgid "Arrange Selection"
msgstr "Réorganiser la sélection"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:405
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:413
msgctxt "@action:inmenu menubar:edit"
msgid "Reset All Model Positions"
msgstr "Réinitialiser toutes les positions des modèles"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:412
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:420
msgctxt "@action:inmenu menubar:edit"
msgid "Reset All Model Transformations"
msgstr "Réinitialiser tous les modèles et transformations"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:419
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:429
msgctxt "@action:inmenu menubar:file"
msgid "&Open File(s)..."
msgstr "&Ouvrir le(s) fichier(s)..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:427
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:439
msgctxt "@action:inmenu menubar:file"
msgid "&New Project..."
msgstr "&Nouveau projet..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:434
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:446
msgctxt "@action:inmenu menubar:help"
msgid "Show Configuration Folder"
msgstr "Afficher le dossier de configuration"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:441 /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:538
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:453
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:550
msgctxt "@action:menu"
msgid "Configure setting visibility..."
msgstr "Configurer la visibilité des paramètres..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:448
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:460
msgctxt "@action:menu"
msgid "&Marketplace"
msgstr "&Marché en ligne"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:266
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:257
msgctxt "@label"
msgid "This package will be installed after restarting."
msgstr "Ce paquet sera installé après le redémarrage."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:459 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:15
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:450
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:17
msgctxt "@title:tab"
msgid "General"
msgstr "Général"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:462
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:453
msgctxt "@title:tab"
msgid "Settings"
msgstr "Paramètres"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:464 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:16
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:455
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:16
msgctxt "@title:tab"
msgid "Printers"
msgstr "Imprimantes"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:468 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:34
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:459
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:34
msgctxt "@title:tab"
msgid "Profiles"
msgstr "Profils"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:587
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:576
msgctxt "@title:window %1 is the application name"
msgid "Closing %1"
msgstr "Fermeture de %1"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:588 /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:600
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:577
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:589
msgctxt "@label %1 is the application name"
msgid "Are you sure you want to exit %1?"
msgstr "Voulez-vous vraiment quitter %1 ?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:638 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:19
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:627
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:19
msgctxt "@title:window"
msgid "Open file(s)"
msgstr "Ouvrir le(s) fichier(s)"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:744
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:737
msgctxt "@window:title"
msgid "Install Package"
msgstr "Installer le paquet"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:752
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:745
msgctxt "@title:window"
msgid "Open File(s)"
msgstr "Ouvrir le(s) fichier(s)"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:755
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:748
msgctxt "@text:window"
msgid "We have found one or more G-Code files within the files you have selected. You can only open one G-Code file at a time. If you want to open a G-Code file, please just select only one."
msgstr "Nous avons trouvé au moins un fichier G-Code parmi les fichiers que vous avez sélectionné. Vous ne pouvez ouvrir qu'un seul fichier G-Code à la fois. Si vous souhaitez ouvrir un fichier G-Code, veuillez ne sélectionner qu'un seul fichier de ce type."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:858
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:857
msgctxt "@title:window"
msgid "Add Printer"
msgstr "Ajouter une imprimante"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:866
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:865
msgctxt "@title:window"
msgid "What's New"
msgstr "Quoi de neuf"
@@ -3575,7 +3756,8 @@ msgctxt "@Label"
msgid "Static type checker for Python"
msgstr "Vérificateur de type statique pour Python"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:156 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:157
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:156
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:157
msgctxt "@Label"
msgid "Root Certificates for validating SSL trustworthiness"
msgstr "Certificats racines pour valider la fiabilité SSL"
@@ -3595,17 +3777,27 @@ msgctxt "@label"
msgid "Python bindings for libnest2d"
msgstr "Liens en python pour libnest2d"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:161
+msgctxt "@label"
+msgid "Support library for system keyring access"
+msgstr "Bibliothèque de support pour l'accès au trousseau de clés du système"
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:162
msgctxt "@label"
+msgid "Python extensions for Microsoft Windows"
+msgstr "Extensions Python pour Microsoft Windows"
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:163
+msgctxt "@label"
msgid "Font"
msgstr "Police"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:163
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:164
msgctxt "@label"
msgid "SVG icons"
msgstr "Icônes SVG"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:164
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:165
msgctxt "@label"
msgid "Linux cross-distribution application deployment"
msgstr "Déploiement d'applications sur multiples distributions Linux"
@@ -3615,22 +3807,22 @@ msgctxt "@title:window"
msgid "Open project file"
msgstr "Ouvrir un fichier de projet"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:93
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:88
msgctxt "@text:window"
msgid "This is a Cura project file. Would you like to open it as a project or import the models from it?"
msgstr "Ceci est un fichier de projet Cura. Souhaitez-vous l'ouvrir comme projet ou en importer les modèles ?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:103
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:98
msgctxt "@text:window"
msgid "Remember my choice"
msgstr "Se souvenir de mon choix"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:122
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:117
msgctxt "@action:button"
msgid "Open as project"
msgstr "Ouvrir comme projet"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:131
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:126
msgctxt "@action:button"
msgid "Import models"
msgstr "Importer les modèles"
@@ -3661,7 +3853,8 @@ msgctxt "@title:column"
msgid "Current changes"
msgstr "Modifications actuelles"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:158 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:747
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:158
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:733
msgctxt "@option:discardOrKeep"
msgid "Always ask me this"
msgstr "Toujours me demander"
@@ -3686,12 +3879,12 @@ msgctxt "@action:button"
msgid "Keep changes"
msgstr "Conserver les modifications"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:64
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:59
msgctxt "@text:window"
msgid "We have found one or more project file(s) within the files you have selected. You can open only one project file at a time. We suggest to only import models from those files. Would you like to proceed?"
msgstr "Nous avons trouvé au moins un fichier de projet parmi les fichiers que vous avez sélectionnés. Vous ne pouvez ouvrir qu'un seul fichier de projet à la fois. Nous vous conseillons de n'importer que les modèles de ces fichiers. Souhaitez-vous continuer ?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:99
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:94
msgctxt "@action:button"
msgid "Import all as models"
msgstr "Importer tout comme modèles"
@@ -3738,7 +3931,8 @@ msgctxt "@text Print job name"
msgid "Untitled"
msgstr "Sans titre"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MainWindow/ApplicationMenu.qml:27 /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:13
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MainWindow/ApplicationMenu.qml:27
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:13
msgctxt "@title:menu menubar:toplevel"
msgid "&File"
msgstr "&Fichier"
@@ -3748,12 +3942,14 @@ msgctxt "@title:menu menubar:toplevel"
msgid "&Edit"
msgstr "&Modifier"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MainWindow/ApplicationMenu.qml:49 /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:12
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MainWindow/ApplicationMenu.qml:49
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:12
msgctxt "@title:menu menubar:toplevel"
msgid "&View"
msgstr "&Visualisation"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MainWindow/ApplicationMenu.qml:51 /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingsMenu.qml:13
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MainWindow/ApplicationMenu.qml:51
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingsMenu.qml:13
msgctxt "@title:menu menubar:toplevel"
msgid "&Settings"
msgstr "&Paramètres"
@@ -3843,7 +4039,7 @@ msgctxt "@label"
msgid "Material"
msgstr "Matériau"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/CustomConfiguration.qml:394
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/CustomConfiguration.qml:407
msgctxt "@label"
msgid "Use glue for better adhesion with this material combination."
msgstr "Utiliser de la colle pour une meilleure adhérence avec cette combinaison de matériaux."
@@ -3867,17 +4063,17 @@ msgctxt "@label"
msgid "Number of Copies"
msgstr "Nombre de copies"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:33
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:41
msgctxt "@title:menu menubar:file"
msgid "&Save Project..."
msgstr "&Enregistrer le projet..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:54
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:74
msgctxt "@title:menu menubar:file"
msgid "&Export..."
msgstr "E&xporter..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:65
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:85
msgctxt "@action:inmenu menubar:file"
msgid "Export Selection..."
msgstr "Exporter la sélection..."
@@ -3897,6 +4093,11 @@ msgctxt "@label:category menu label"
msgid "Generic"
msgstr "Générique"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/OpenFilesMenu.qml:15
+msgctxt "@title:menu menubar:file"
+msgid "Open File(s)..."
+msgstr "Ouvrir le(s) fichier(s)..."
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/PrinterMenu.qml:25
msgctxt "@label:category menu label"
msgid "Network enabled printers"
@@ -3912,6 +4113,11 @@ msgctxt "@title:menu menubar:file"
msgid "Open &Recent"
msgstr "Ouvrir un fichier &récent"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SaveProjectMenu.qml:15
+msgctxt "@title:menu menubar:file"
+msgid "Save Project..."
+msgstr "Sauvegarder le projet..."
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingsMenu.qml:15
msgctxt "@title:menu menubar:settings"
msgid "&Printer"
@@ -3937,17 +4143,17 @@ msgctxt "@action:inmenu"
msgid "Disable Extruder"
msgstr "Désactiver l'extrudeuse"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:13
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:16
msgctxt "@action:inmenu"
msgid "Visible Settings"
msgstr "Paramètres visibles"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:42
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:45
msgctxt "@action:inmenu"
msgid "Collapse All Categories"
msgstr "Réduire toutes les catégories"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:51
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:54
msgctxt "@action:inmenu"
msgid "Manage Setting Visibility..."
msgstr "Gérer la visibilité des paramètres..."
@@ -3957,22 +4163,22 @@ msgctxt "@action:inmenu menubar:view"
msgid "&Camera position"
msgstr "Position de la &caméra"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:44
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:45
msgctxt "@action:inmenu menubar:view"
msgid "Camera view"
msgstr "Vue de la caméra"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:47
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:48
msgctxt "@action:inmenu menubar:view"
msgid "Perspective"
msgstr "Perspective"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:59
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:60
msgctxt "@action:inmenu menubar:view"
msgid "Orthographic"
msgstr "Orthographique"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:80
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:81
msgctxt "@action:inmenu menubar:view"
msgid "&Build plate"
msgstr "&Plateau"
@@ -4017,12 +4223,12 @@ msgctxt "@label:MonitorStatus"
msgid "Please remove the print"
msgstr "Supprimez l'imprimante"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:325
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:326
msgctxt "@label"
msgid "Abort Print"
msgstr "Abandonner l'impression"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:337
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:338
msgctxt "@label"
msgid "Are you sure you want to abort the print?"
msgstr "Êtes-vous sûr(e) de vouloir abandonner l'impression ?"
@@ -4064,310 +4270,314 @@ msgctxt "@label"
msgid "Interface"
msgstr "Interface"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:216
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:209
msgctxt "@label"
msgid "Currency:"
msgstr "Devise :"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:229
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:222
msgctxt "@label"
msgid "Theme:"
msgstr "Thème :"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:285
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:267
msgctxt "@label"
msgid "You will need to restart the application for these changes to have effect."
msgstr "Vous devez redémarrer l'application pour que ces changements prennent effet."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:302
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:284
msgctxt "@info:tooltip"
msgid "Slice automatically when changing settings."
msgstr "Découper automatiquement si les paramètres sont modifiés."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:310
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:292
msgctxt "@option:check"
msgid "Slice automatically"
msgstr "Découper automatiquement"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:324
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:306
msgctxt "@label"
msgid "Viewport behavior"
msgstr "Comportement Viewport"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:332
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:314
msgctxt "@info:tooltip"
msgid "Highlight unsupported areas of the model in red. Without support these areas will not print properly."
msgstr "Surligne les parties non supportées du modèle en rouge. Sans ajouter de support, ces zones ne s'imprimeront pas correctement."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:341
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:323
msgctxt "@option:check"
msgid "Display overhang"
msgstr "Mettre en surbrillance les porte-à-faux"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:351
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:333
msgctxt "@info:tooltip"
msgid "Highlight missing or extraneous surfaces of the model using warning signs. The toolpaths will often be missing parts of the intended geometry."
msgstr "Surlignez les surfaces du modèle manquantes ou étrangères en utilisant les signes d'avertissement. Les Toolpaths seront souvent les parties manquantes de la géométrie prévue."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:360
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:342
msgctxt "@option:check"
msgid "Display model errors"
msgstr "Afficher les erreurs du modèle"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:368
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:350
msgctxt "@info:tooltip"
msgid "Moves the camera so the model is in the center of the view when a model is selected"
msgstr "Déplace la caméra afin que le modèle sélectionné se trouve au centre de la vue"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:373
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:355
msgctxt "@action:button"
msgid "Center camera when item is selected"
msgstr "Centrer la caméra lorsqu'un élément est sélectionné"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:383
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:365
msgctxt "@info:tooltip"
msgid "Should the default zoom behavior of cura be inverted?"
msgstr "Le comportement de zoom par défaut de Cura doit-il être inversé ?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:388
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:370
msgctxt "@action:button"
msgid "Invert the direction of camera zoom."
msgstr "Inverser la direction du zoom de la caméra."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:404
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:386
msgctxt "@info:tooltip"
msgid "Should zooming move in the direction of the mouse?"
msgstr "Le zoom doit-il se faire dans la direction de la souris ?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:404
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:386
msgctxt "@info:tooltip"
msgid "Zooming towards the mouse is not supported in the orthographic perspective."
msgstr "Le zoom vers la souris n'est pas pris en charge dans la perspective orthographique."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:409
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:391
msgctxt "@action:button"
msgid "Zoom toward mouse direction"
msgstr "Zoomer vers la direction de la souris"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:435
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:417
msgctxt "@info:tooltip"
msgid "Should models on the platform be moved so that they no longer intersect?"
msgstr "Les modèles dans la zone d'impression doivent-ils être déplacés afin de ne plus se croiser ?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:440
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:422
msgctxt "@option:check"
msgid "Ensure models are kept apart"
msgstr "Veillez à ce que les modèles restent séparés"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:449
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:431
msgctxt "@info:tooltip"
msgid "Should models on the platform be moved down to touch the build plate?"
msgstr "Les modèles dans la zone d'impression doivent-ils être abaissés afin de toucher le plateau ?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:454
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:436
msgctxt "@option:check"
msgid "Automatically drop models to the build plate"
msgstr "Abaisser automatiquement les modèles sur le plateau"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:466
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:448
msgctxt "@info:tooltip"
msgid "Show caution message in g-code reader."
msgstr "Afficher le message d'avertissement dans le lecteur G-Code."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:475
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:457
msgctxt "@option:check"
msgid "Caution message in g-code reader"
msgstr "Message d'avertissement dans le lecteur G-Code"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:483
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:465
msgctxt "@info:tooltip"
msgid "Should layer be forced into compatibility mode?"
msgstr "La couche doit-elle être forcée en mode de compatibilité ?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:488
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:470
msgctxt "@option:check"
msgid "Force layer view compatibility mode (restart required)"
msgstr "Forcer l'affichage de la couche en mode de compatibilité (redémarrage requis)"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:498
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:480
msgctxt "@info:tooltip"
msgid "Should Cura open at the location it was closed?"
msgstr "Est-ce que Cura devrait ouvrir à l'endroit où il a été fermé ?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:503
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:485
msgctxt "@option:check"
msgid "Restore window position on start"
msgstr "Restaurer la position de la fenêtre au démarrage"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:513
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:495
msgctxt "@info:tooltip"
msgid "What type of camera rendering should be used?"
msgstr "Quel type de rendu de la caméra doit-il être utilisé?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:520
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:502
msgctxt "@window:text"
msgid "Camera rendering:"
msgstr "Rendu caméra :"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:531
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:509
msgid "Perspective"
msgstr "Perspective"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:532
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:510
msgid "Orthographic"
msgstr "Orthographique"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:563
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:548
msgctxt "@label"
msgid "Opening and saving files"
msgstr "Ouvrir et enregistrer des fichiers"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:570
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:555
msgctxt "@info:tooltip"
msgid "Should opening files from the desktop or external applications open in the same instance of Cura?"
msgstr "L'ouverture de fichiers à partir du bureau ou d'applications externes doit-elle se faire dans la même instance de Cura ?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:575
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:560
msgctxt "@option:check"
msgid "Use a single instance of Cura"
msgstr "Utiliser une seule instance de Cura"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:585
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:570
msgctxt "@info:tooltip"
msgid "Should models be scaled to the build volume if they are too large?"
msgstr "Les modèles doivent-ils être mis à l'échelle du volume d'impression s'ils sont trop grands ?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:590
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:575
msgctxt "@option:check"
msgid "Scale large models"
msgstr "Réduire la taille des modèles trop grands"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:600
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:585
msgctxt "@info:tooltip"
msgid "An model may appear extremely small if its unit is for example in meters rather than millimeters. Should these models be scaled up?"
msgstr "Un modèle peut apparaître en tout petit si son unité est par exemple en mètres plutôt qu'en millimètres. Ces modèles doivent-ils être agrandis ?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:605
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:590
msgctxt "@option:check"
msgid "Scale extremely small models"
msgstr "Mettre à l'échelle les modèles extrêmement petits"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:615
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:600
msgctxt "@info:tooltip"
msgid "Should models be selected after they are loaded?"
msgstr "Les modèles doivent-ils être sélectionnés après leur chargement ?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:620
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:605
msgctxt "@option:check"
msgid "Select models when loaded"
msgstr "Sélectionner les modèles lorsqu'ils sont chargés"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:630
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:615
msgctxt "@info:tooltip"
msgid "Should a prefix based on the printer name be added to the print job name automatically?"
msgstr "Un préfixe basé sur le nom de l'imprimante doit-il être automatiquement ajouté au nom de la tâche d'impression ?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:635
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:620
msgctxt "@option:check"
msgid "Add machine prefix to job name"
msgstr "Ajouter le préfixe de la machine au nom de la tâche"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:645
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:630
msgctxt "@info:tooltip"
msgid "Should a summary be shown when saving a project file?"
msgstr "Un résumé doit-il être affiché lors de l'enregistrement d'un fichier de projet ?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:649
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:634
msgctxt "@option:check"
msgid "Show summary dialog when saving project"
msgstr "Afficher la boîte de dialogue du résumé lors de l'enregistrement du projet"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:659
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:644
msgctxt "@info:tooltip"
msgid "Default behavior when opening a project file"
msgstr "Comportement par défaut lors de l'ouverture d'un fichier de projet"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:667
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:652
msgctxt "@window:text"
msgid "Default behavior when opening a project file: "
msgstr "Comportement par défaut lors de l'ouverture d'un fichier de projet : "
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:681
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:666
msgctxt "@option:openProject"
msgid "Always ask me this"
msgstr "Toujours me demander"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:682
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:667
msgctxt "@option:openProject"
msgid "Always open as a project"
msgstr "Toujours ouvrir comme projet"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:683
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:668
msgctxt "@option:openProject"
msgid "Always import models"
msgstr "Toujours importer les modèles"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:719
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:705
msgctxt "@info:tooltip"
msgid "When you have made changes to a profile and switched to a different one, a dialog will be shown asking whether you want to keep your modifications or not, or you can choose a default behaviour and never show that dialog again."
msgstr "Lorsque vous apportez des modifications à un profil puis passez à un autre profil, une boîte de dialogue apparaît, vous demandant si vous souhaitez conserver les modifications. Vous pouvez aussi choisir une option par défaut, et le dialogue ne s'affichera plus."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:728 /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedQualityProfileSelector.qml:52
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:714
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedQualityProfileSelector.qml:52
msgctxt "@label"
msgid "Profiles"
msgstr "Profils"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:733
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:719
msgctxt "@window:text"
msgid "Default behavior for changed setting values when switching to a different profile: "
msgstr "Comportement par défaut pour les valeurs de paramètres modifiées lors du passage à un profil différent : "
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:748
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:734
msgctxt "@option:discardOrKeep"
msgid "Always discard changed settings"
msgstr "Toujours rejeter les paramètres modifiés"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:749
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:735
msgctxt "@option:discardOrKeep"
msgid "Always transfer changed settings to new profile"
msgstr "Toujours transférer les paramètres modifiés dans le nouveau profil"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:783
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:770
msgctxt "@label"
msgid "Privacy"
msgstr "Confidentialité"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:790
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:777
msgctxt "@info:tooltip"
msgid "Should Cura check for updates when the program is started?"
msgstr "Cura doit-il vérifier les mises à jour au démarrage du programme ?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:795
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:782
msgctxt "@option:check"
msgid "Check for updates on start"
msgstr "Vérifier les mises à jour au démarrage"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:805
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:792
msgctxt "@info:tooltip"
msgid "Should anonymous data about your print be sent to Ultimaker? Note, no models, IP addresses or other personally identifiable information is sent or stored."
msgstr "Les données anonymes de votre impression doivent-elles être envoyées à Ultimaker ? Notez qu'aucun modèle, aucune adresse IP ni aucune autre information permettant de vous identifier personnellement ne seront envoyés ou stockés."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:810
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:797
msgctxt "@option:check"
msgid "Send (anonymous) print information"
msgstr "Envoyer des informations (anonymes) sur l'impression"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:819
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:806
msgctxt "@action:button"
msgid "More information"
msgstr "Plus d'informations"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:40 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:108 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:84
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:40
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:108
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:84
msgctxt "@action:button"
msgid "Activate"
msgstr "Activer"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:63 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:152
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:63
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:152
msgctxt "@action:button"
msgid "Rename"
msgstr "Renommer"
@@ -4382,61 +4592,77 @@ msgctxt "@action:button"
msgid "Duplicate"
msgstr "Dupliquer"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:171 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:167
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:171
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:167
msgctxt "@action:button"
msgid "Import"
msgstr "Importer"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:185 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:179
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:185
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:179
msgctxt "@action:button"
msgid "Export"
msgstr "Exporter"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:234
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:199
+msgctxt "@action:button Sending materials to printers"
+msgid "Sync with Printers"
+msgstr "Synchroniser les imprimantes"
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:248
msgctxt "@action:label"
msgid "Printer"
msgstr "Imprimante"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:298 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:274
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:312
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:277
msgctxt "@title:window"
msgid "Confirm Remove"
msgstr "Confirmer la suppression"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:301 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:275
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:315
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:278
msgctxt "@label (%1 is object name)"
msgid "Are you sure you wish to remove %1? This cannot be undone!"
msgstr "Êtes-vous sûr de vouloir supprimer l'objet %1 ? Vous ne pourrez pas revenir en arrière !"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:315 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:323
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:329
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:337
msgctxt "@title:window"
msgid "Import Material"
msgstr "Importer un matériau"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:324
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:338
msgctxt "@info:status Don't translate the XML tags or !"
msgid "Could not import material %1: %2"
msgstr "Impossible d'importer le matériau %1 : %2"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:328
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:342
msgctxt "@info:status Don't translate the XML tag !"
msgid "Successfully imported material %1"
msgstr "Matériau %1 importé avec succès"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:346 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:354
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:360
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:368
msgctxt "@title:window"
msgid "Export Material"
msgstr "Exporter un matériau"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:358
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:372
msgctxt "@info:status Don't translate the XML tags and !"
msgid "Failed to export material to %1: %2"
msgstr "Échec de l'exportation de matériau vers %1 : %2"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:364
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:378
msgctxt "@info:status Don't translate the XML tag !"
msgid "Successfully exported material to %1"
msgstr "Matériau exporté avec succès vers %1"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:388
+msgctxt "@title:window"
+msgid "Export All Materials"
+msgstr "Exporter tous les matériaux"
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:72
msgctxt "@title"
msgid "Information"
@@ -4522,7 +4748,8 @@ msgctxt "@label"
msgid "Adhesion Information"
msgstr "Informations d'adhérence"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:374 /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/PrintSetupSelector.qml:19
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:374
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/PrintSetupSelector.qml:19
msgctxt "@label"
msgid "Print settings"
msgstr "Paramètres d'impression"
@@ -4547,52 +4774,53 @@ msgctxt "@info"
msgid "Please provide a name for this profile."
msgstr "Veuillez fournir un nom pour ce profil."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:260
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:263
msgctxt "@title:window"
msgid "Duplicate Profile"
msgstr "Dupliquer un profil"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:291
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:294
msgctxt "@title:window"
msgid "Rename Profile"
msgstr "Renommer le profil"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:304
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:307
msgctxt "@title:window"
msgid "Import Profile"
msgstr "Importer un profil"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:333
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:336
msgctxt "@title:window"
msgid "Export Profile"
msgstr "Exporter un profil"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:396
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:399
msgctxt "@label %1 is printer name"
msgid "Printer: %1"
msgstr "Imprimante : %1"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:554
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:557
msgctxt "@action:button"
msgid "Update profile with current settings/overrides"
msgstr "Mettre à jour le profil à l'aide des paramètres / forçages actuels"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:561 /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Custom/QualitiesWithIntentMenu.qml:244
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:564
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Custom/QualitiesWithIntentMenu.qml:244
msgctxt "@action:button"
msgid "Discard current changes"
msgstr "Ignorer les modifications actuelles"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:580
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:583
msgctxt "@action:label"
msgid "This profile uses the defaults specified by the printer, so it has no settings/overrides in the list below."
msgstr "Ce profil utilise les paramètres par défaut spécifiés par l'imprimante, de sorte qu'aucun paramètre / forçage n'apparaît dans la liste ci-dessous."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:588
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:591
msgctxt "@action:label"
msgid "Your current settings match the selected profile."
msgstr "Vos paramètres actuels correspondent au profil sélectionné."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:606
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:609
msgctxt "@title:tab"
msgid "Global Settings"
msgstr "Paramètres généraux"
@@ -4622,12 +4850,12 @@ msgctxt "@title:column"
msgid "Unit"
msgstr "Unité"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:14
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:16
msgctxt "@title:tab"
msgid "Setting Visibility"
msgstr "Visibilité des paramètres"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:46
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:48
msgctxt "@label:textbox"
msgid "Check all"
msgstr "Vérifier tout"
@@ -4652,12 +4880,14 @@ msgctxt "@tooltip of temperature input"
msgid "The temperature to pre-heat the hotend to."
msgstr "Température jusqu'à laquelle préchauffer l'extrémité chauffante."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:341 /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:332
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:341
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:332
msgctxt "@button Cancel pre-heating"
msgid "Cancel"
msgstr "Annuler"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:344 /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:335
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:344
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:335
msgctxt "@button"
msgid "Pre-heat"
msgstr "Préchauffer"
@@ -4963,27 +5193,27 @@ msgctxt "@label:textbox"
msgid "Search settings"
msgstr "Paramètres de recherche"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:456
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:468
msgctxt "@action:menu"
msgid "Copy value to all extruders"
msgstr "Copier la valeur vers tous les extrudeurs"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:465
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:477
msgctxt "@action:menu"
msgid "Copy all changed values to all extruders"
msgstr "Copier toutes les valeurs modifiées vers toutes les extrudeuses"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:502
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:514
msgctxt "@action:menu"
msgid "Hide this setting"
msgstr "Masquer ce paramètre"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:515
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:527
msgctxt "@action:menu"
msgid "Don't show this setting"
msgstr "Masquer ce paramètre"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:519
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:531
msgctxt "@action:menu"
msgid "Keep this setting visible"
msgstr "Afficher ce paramètre"
@@ -5043,11 +5273,6 @@ msgctxt "@button"
msgid "Add printer manually"
msgstr "Ajouter l'imprimante manuellement"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddCloudPrintersView.qml:218
-msgctxt "@button"
-msgid "Finish"
-msgstr "Fin"
-
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddLocalPrinterScrollView.qml:230
msgctxt "@label"
msgid "Manufacturer"
@@ -5128,7 +5353,8 @@ msgctxt "@label"
msgid "Could not connect to device."
msgstr "Impossible de se connecter à l'appareil."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:207 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:212
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:207
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:212
msgctxt "@label"
msgid "Can't connect to your Ultimaker printer?"
msgstr "Impossible de vous connecter à votre imprimante Ultimaker ?"
@@ -5153,32 +5379,32 @@ msgctxt "@button"
msgid "Connect"
msgstr "Se connecter"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:43
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/ChangelogContent.qml:24
msgctxt "@label"
-msgid "Ultimaker Account"
-msgstr "Compte Ultimaker"
+msgid "Release Notes"
+msgstr "Notes de version"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:84
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:124
msgctxt "@text"
-msgid "Your key to connected 3D printing"
-msgstr "Votre clé pour une impression 3D connectée"
+msgid "Add material settings and plugins from the Marketplace"
+msgstr "Ajoutez des paramètres de matériaux et des plug-ins depuis la Marketplace"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:101
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:154
msgctxt "@text"
-msgid "- Customize your experience with more print profiles and plugins"
-msgstr "- Personnalisez votre expérience avec plus de profils d'impression et de plug-ins"
+msgid "Backup and sync your material settings and plugins"
+msgstr "Sauvegardez et synchronisez vos paramètres de matériaux et vos plug-ins"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:104
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:184
msgctxt "@text"
-msgid "- Stay flexible by syncing your setup and loading it anywhere"
-msgstr "- Restez flexible en synchronisant votre configuration et en la chargeant n'importe où"
+msgid "Share ideas and get help from 48,000+ users in the Ultimaker Community"
+msgstr "Partagez vos idées et obtenez l'aide de plus de 48 000 utilisateurs de la communauté Ultimaker"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:107
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:217
msgctxt "@text"
-msgid "- Increase efficiency with a remote workflow on Ultimaker printers"
-msgstr "- Augmentez l'efficacité avec un flux de travail à distance sur les imprimantes Ultimaker"
+msgid "Create a free Ultimaker Account"
+msgstr "Créez gratuitement un compte Ultimaker"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:157
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:230
msgctxt "@button"
msgid "Skip"
msgstr "Ignorer"
@@ -5238,29 +5464,32 @@ msgctxt "@button"
msgid "Decline and close"
msgstr "Décliner et fermer"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:29
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:56
msgctxt "@label"
msgid "Welcome to Ultimaker Cura"
msgstr "Bienvenue dans Ultimaker Cura"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:47
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:68
msgctxt "@text"
-msgid ""
-"Please follow these steps to set up\n"
-"Ultimaker Cura. This will only take a few moments."
+msgid "Please follow these steps to set up Ultimaker Cura. This will only take a few moments."
msgstr ""
"Veuillez suivre ces étapes pour configurer\n"
"Ultimaker Cura. Cela ne prendra que quelques instants."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:58
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:86
msgctxt "@button"
msgid "Get started"
msgstr "Prise en main"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:24
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:28
msgctxt "@label"
-msgid "What's new in Ultimaker Cura"
-msgstr "Quoi de neuf dans Ultimaker Cura"
+msgid "What's New"
+msgstr "Nouveautés"
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Widgets/ComboBox.qml:24
+msgctxt "@label"
+msgid "No items to select from"
+msgstr "Aucun élément à sélectionner"
#: ModelChecker/plugin.json
msgctxt "description"
@@ -5342,6 +5571,16 @@ msgctxt "name"
msgid "Cura Profile Writer"
msgstr "Générateur de profil Cura"
+#: DigitalLibrary/plugin.json
+msgctxt "description"
+msgid "Connects to the Digital Library, allowing Cura to open files from and save files to the Digital Library."
+msgstr "Se connecte à la Digital Library, permettant à Cura d'ouvrir des fichiers à partir de cette dernière et d'y enregistrer des fichiers."
+
+#: DigitalLibrary/plugin.json
+msgctxt "name"
+msgid "Ultimaker Digital Library"
+msgstr "Ultimaker Digital Library"
+
#: FirmwareUpdateChecker/plugin.json
msgctxt "description"
msgid "Checks for firmware updates."
@@ -5812,6 +6051,26 @@ msgctxt "name"
msgid "Version Upgrade 4.7 to 4.8"
msgstr "Mise à niveau de 4.7 vers 4.8"
+#: VersionUpgrade/VersionUpgrade48to49/plugin.json
+msgctxt "description"
+msgid "Upgrades configurations from Cura 4.8 to Cura 4.9."
+msgstr "Mises à niveau des configurations de Cura 4.8 vers Cura 4.9."
+
+#: VersionUpgrade/VersionUpgrade48to49/plugin.json
+msgctxt "name"
+msgid "Version Upgrade 4.8 to 4.9"
+msgstr "Mise à niveau de 4.8 vers 4.9"
+
+#: VersionUpgrade/VersionUpgrade49to410/plugin.json
+msgctxt "description"
+msgid "Upgrades configurations from Cura 4.9 to Cura 4.10."
+msgstr "Mises à niveau des configurations de Cura 4.9 vers Cura 4.10."
+
+#: VersionUpgrade/VersionUpgrade49to410/plugin.json
+msgctxt "name"
+msgid "Version Upgrade 4.9 to 4.10"
+msgstr "Mise à niveau de 4.9 vers 4.10"
+
#: X3DReader/plugin.json
msgctxt "description"
msgid "Provides support for reading X3D files."
@@ -5842,6 +6101,94 @@ msgctxt "name"
msgid "X-Ray View"
msgstr "Vue Rayon-X"
+#~ msgctxt "@info:status"
+#~ msgid "Global stack is missing."
+#~ msgstr "Il manque la pile globale."
+
+#~ msgctxt "@info:status"
+#~ msgid "Your model is not manifold. The highlighted areas indicate either missing or extraneous surfaces."
+#~ msgstr "Votre modèle n'est pas fonctionnel. Les zones surlignées indiquent que des surfaces manquent ou sont étrangères."
+
+#~ msgctxt "@info:title"
+#~ msgid "Model errors"
+#~ msgstr "Erreurs du modèle"
+
+#~ msgctxt "@label:listbox"
+#~ msgid "Layer thickness"
+#~ msgstr "Épaisseur de la couche"
+
+#~ msgctxt "@label"
+#~ msgid "Your key to connected 3D printing"
+#~ msgstr "Votre clé pour une impression 3D connectée"
+
+#~ msgctxt "@text"
+#~ msgid ""
+#~ "- Customize your experience with more print profiles and plugins\n"
+#~ "- Stay flexible by syncing your setup and loading it anywhere\n"
+#~ "- Increase efficiency with a remote workflow on Ultimaker printers"
+#~ msgstr ""
+#~ "- Personnalisez votre expérience avec plus de profils d'impression et de plug-ins\n"
+#~ "- Restez flexible en synchronisant votre configuration et en la chargeant n'importe où\n"
+#~ "- Augmentez l'efficacité grâce à un flux de travail à distance sur les imprimantes Ultimaker"
+
+#~ msgctxt "@button"
+#~ msgid "Create account"
+#~ msgstr "Créer un compte"
+
+#~ msgctxt "@action:inmenu menubar:edit"
+#~ msgid "Delete Selected Model"
+#~ msgid_plural "Delete Selected Models"
+#~ msgstr[0] "Supprimer le modèle sélectionné"
+#~ msgstr[1] "Supprimer les modèles sélectionnés"
+
+#~ msgctxt "@action:inmenu menubar:edit"
+#~ msgid "Center Selected Model"
+#~ msgid_plural "Center Selected Models"
+#~ msgstr[0] "Centrer le modèle sélectionné"
+#~ msgstr[1] "Centrer les modèles sélectionnés"
+
+#~ msgctxt "@action:inmenu menubar:edit"
+#~ msgid "Multiply Selected Model"
+#~ msgid_plural "Multiply Selected Models"
+#~ msgstr[0] "Multiplier le modèle sélectionné"
+#~ msgstr[1] "Multiplier les modèles sélectionnés"
+
+#~ msgctxt "@button"
+#~ msgid "Finish"
+#~ msgstr "Fin"
+
+#~ msgctxt "@label"
+#~ msgid "Ultimaker Account"
+#~ msgstr "Compte Ultimaker"
+
+#~ msgctxt "@text"
+#~ msgid "Your key to connected 3D printing"
+#~ msgstr "Votre clé pour une impression 3D connectée"
+
+#~ msgctxt "@text"
+#~ msgid "- Customize your experience with more print profiles and plugins"
+#~ msgstr "- Personnalisez votre expérience avec plus de profils d'impression et de plug-ins"
+
+#~ msgctxt "@text"
+#~ msgid "- Stay flexible by syncing your setup and loading it anywhere"
+#~ msgstr "- Restez flexible en synchronisant votre configuration et en la chargeant n'importe où"
+
+#~ msgctxt "@text"
+#~ msgid "- Increase efficiency with a remote workflow on Ultimaker printers"
+#~ msgstr "- Augmentez l'efficacité avec un flux de travail à distance sur les imprimantes Ultimaker"
+
+#~ msgctxt "@text"
+#~ msgid ""
+#~ "Please follow these steps to set up\n"
+#~ "Ultimaker Cura. This will only take a few moments."
+#~ msgstr ""
+#~ "Veuillez suivre ces étapes pour configurer\n"
+#~ "Ultimaker Cura. Cela ne prendra que quelques instants."
+
+#~ msgctxt "@label"
+#~ msgid "What's new in Ultimaker Cura"
+#~ msgstr "Quoi de neuf dans Ultimaker Cura"
+
#~ msgctxt "@label ({} is object name)"
#~ msgid "Are you sure you wish to remove {}? This cannot be undone!"
#~ msgstr "Êtes-vous sûr de vouloir supprimer l'objet {} ? Cette action est irréversible !"
diff --git a/resources/i18n/fr_FR/fdmextruder.def.json.po b/resources/i18n/fr_FR/fdmextruder.def.json.po
index a683a21495..88eef3e0b5 100644
--- a/resources/i18n/fr_FR/fdmextruder.def.json.po
+++ b/resources/i18n/fr_FR/fdmextruder.def.json.po
@@ -1,19 +1,20 @@
# Cura
-# Copyright (C) 2020 Ultimaker B.V.
+# Copyright (C) 2021 Ultimaker B.V.
# This file is distributed under the same license as the Cura package.
#
msgid ""
msgstr ""
-"Project-Id-Version: Cura 4.8\n"
+"Project-Id-Version: Cura 4.10\n"
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
-"POT-Creation-Date: 2020-10-19 13:15+0000\n"
-"PO-Revision-Date: 2019-03-13 14:00+0200\n"
+"POT-Creation-Date: 2021-06-10 17:35+0000\n"
+"PO-Revision-Date: 2021-04-16 15:16+0200\n"
"Last-Translator: Bothof \n"
"Language-Team: French\n"
"Language: fr_FR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 2.4.1\n"
#: fdmextruder.def.json
msgctxt "machine_settings label"
diff --git a/resources/i18n/fr_FR/fdmprinter.def.json.po b/resources/i18n/fr_FR/fdmprinter.def.json.po
index 646c0c9af8..b9a95fdedb 100644
--- a/resources/i18n/fr_FR/fdmprinter.def.json.po
+++ b/resources/i18n/fr_FR/fdmprinter.def.json.po
@@ -1,20 +1,20 @@
# Cura
-# Copyright (C) 2020 Ultimaker B.V.
+# Copyright (C) 2021 Ultimaker B.V.
# This file is distributed under the same license as the Cura package.
#
msgid ""
msgstr ""
-"Project-Id-Version: Cura 4.8\n"
+"Project-Id-Version: Cura 4.10\n"
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
-"POT-Creation-Date: 2020-10-19 13:15+0000\n"
-"PO-Revision-Date: 2020-08-21 13:40+0200\n"
+"POT-Creation-Date: 2021-06-10 17:35+0000\n"
+"PO-Revision-Date: 2021-04-16 15:16+0200\n"
"Last-Translator: Lionbridge \n"
"Language-Team: French , French \n"
"Language: fr_FR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: Poedit 2.0.6\n"
+"X-Generator: Poedit 2.4.1\n"
#: fdmprinter.def.json
msgctxt "machine_settings label"
@@ -419,6 +419,26 @@ msgctxt "machine_extruders_share_heater description"
msgid "Whether the extruders share a single heater rather than each extruder having its own heater."
msgstr "Si les extrudeurs partagent un seul chauffage au lieu que chaque extrudeur ait son propre chauffage."
+#: fdmprinter.def.json
+msgctxt "machine_extruders_share_nozzle label"
+msgid "Extruders Share Nozzle"
+msgstr "Les extrudeuses partagent la buse"
+
+#: fdmprinter.def.json
+msgctxt "machine_extruders_share_nozzle description"
+msgid "Whether the extruders share a single nozzle rather than each extruder having its own nozzle. When set to true, it is expected that the printer-start gcode script properly sets up all extruders in an initial retraction state that is known and mutually compatible (either zero or one filament not retracted); in that case the initial retraction status is described, per extruder, by the 'machine_extruders_shared_nozzle_initial_retraction' parameter."
+msgstr "Lorsque les extrudeuses partagent une seule buse au lieu que chaque extrudeuse ait sa propre buse. Lorsqu'il est défini à true, le script gcode de démarrage de l'imprimante doit configurer correctement toutes les extrudeuses dans un état de rétraction initial connu et mutuellement compatible (zéro ou un filament non rétracté) ; dans ce cas, l'état de rétraction initial est décrit, par extrudeuse, par le paramètre 'machine_extruders_shared_nozzle_initial_retraction'."
+
+#: fdmprinter.def.json
+msgctxt "machine_extruders_shared_nozzle_initial_retraction label"
+msgid "Shared Nozzle Initial Retraction"
+msgstr "Rétraction initiale de la buse partagée"
+
+#: fdmprinter.def.json
+msgctxt "machine_extruders_shared_nozzle_initial_retraction description"
+msgid "How much the filament of each extruder is assumed to have been retracted from the shared nozzle tip at the completion of the printer-start gcode script; the value should be equal to or greater than the length of the common part of the nozzle's ducts."
+msgstr "La quantité de filament de chaque extrudeuse qui est supposée avoir été rétractée de l'extrémité de la buse partagée à la fin du script gcode de démarrage de l'imprimante ; la valeur doit être égale ou supérieure à la longueur de la partie commune des conduits de la buse."
+
#: fdmprinter.def.json
msgctxt "machine_disallowed_areas label"
msgid "Disallowed Areas"
@@ -486,8 +506,8 @@ msgstr "Décalage avec extrudeuse"
#: fdmprinter.def.json
msgctxt "machine_use_extruder_offset_to_offset_coords description"
-msgid "Apply the extruder offset to the coordinate system."
-msgstr "Appliquer le décalage de l'extrudeuse au système de coordonnées."
+msgid "Apply the extruder offset to the coordinate system. Affects all extruders."
+msgstr "Appliquez le décalage de l'extrudeuse au système de coordonnées. Affecte toutes les extrudeuses."
#: fdmprinter.def.json
msgctxt "extruder_prime_pos_z label"
@@ -881,8 +901,8 @@ msgstr "Multiplicateur de la largeur de la ligne sur la première couche. Augmen
#: fdmprinter.def.json
msgctxt "shell label"
-msgid "Shell"
-msgstr "Coque"
+msgid "Walls"
+msgstr "Parois"
#: fdmprinter.def.json
msgctxt "shell description"
@@ -949,166 +969,6 @@ msgctxt "wall_0_wipe_dist description"
msgid "Distance of a travel move inserted after the outer wall, to hide the Z seam better."
msgstr "Distance d'un déplacement inséré après la paroi extérieure, pour mieux masquer la jointure en Z."
-#: fdmprinter.def.json
-msgctxt "roofing_extruder_nr label"
-msgid "Top Surface Skin Extruder"
-msgstr "Extrudeuse de couche extérieure de la surface supérieure"
-
-#: fdmprinter.def.json
-msgctxt "roofing_extruder_nr description"
-msgid "The extruder train used for printing the top most skin. This is used in multi-extrusion."
-msgstr "Le train d'extrudeuse utilisé pour l'impression de la couche extérieure supérieure. Cela est utilisé en multi-extrusion."
-
-#: fdmprinter.def.json
-msgctxt "roofing_layer_count label"
-msgid "Top Surface Skin Layers"
-msgstr "Couches extérieures de la surface supérieure"
-
-#: fdmprinter.def.json
-msgctxt "roofing_layer_count description"
-msgid "The number of top most skin layers. Usually only one top most layer is sufficient to generate higher quality top surfaces."
-msgstr "Nombre de couches extérieures supérieures. En général, une seule couche supérieure est suffisante pour générer des surfaces supérieures de qualité."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_extruder_nr label"
-msgid "Top/Bottom Extruder"
-msgstr "Extrudeuse du dessus/dessous"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_extruder_nr description"
-msgid "The extruder train used for printing the top and bottom skin. This is used in multi-extrusion."
-msgstr "Le train d'extrudeuse utilisé pour l'impression de la couche extérieure du haut et du bas. Cela est utilisé en multi-extrusion."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_thickness label"
-msgid "Top/Bottom Thickness"
-msgstr "Épaisseur du dessus/dessous"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_thickness description"
-msgid "The thickness of the top/bottom layers in the print. This value divided by the layer height defines the number of top/bottom layers."
-msgstr "L’épaisseur des couches du dessus/dessous dans l'impression. Cette valeur divisée par la hauteur de la couche définit le nombre de couches du dessus/dessous."
-
-#: fdmprinter.def.json
-msgctxt "top_thickness label"
-msgid "Top Thickness"
-msgstr "Épaisseur du dessus"
-
-#: fdmprinter.def.json
-msgctxt "top_thickness description"
-msgid "The thickness of the top layers in the print. This value divided by the layer height defines the number of top layers."
-msgstr "L’épaisseur des couches du dessus dans l'impression. Cette valeur divisée par la hauteur de la couche définit le nombre de couches du dessus."
-
-#: fdmprinter.def.json
-msgctxt "top_layers label"
-msgid "Top Layers"
-msgstr "Couches supérieures"
-
-#: fdmprinter.def.json
-msgctxt "top_layers description"
-msgid "The number of top layers. When calculated by the top thickness, this value is rounded to a whole number."
-msgstr "Le nombre de couches supérieures. Lorsqu'elle est calculée par l'épaisseur du dessus, cette valeur est arrondie à un nombre entier."
-
-#: fdmprinter.def.json
-msgctxt "bottom_thickness label"
-msgid "Bottom Thickness"
-msgstr "Épaisseur du dessous"
-
-#: fdmprinter.def.json
-msgctxt "bottom_thickness description"
-msgid "The thickness of the bottom layers in the print. This value divided by the layer height defines the number of bottom layers."
-msgstr "L’épaisseur des couches du dessous dans l'impression. Cette valeur divisée par la hauteur de la couche définit le nombre de couches du dessous."
-
-#: fdmprinter.def.json
-msgctxt "bottom_layers label"
-msgid "Bottom Layers"
-msgstr "Couches inférieures"
-
-#: fdmprinter.def.json
-msgctxt "bottom_layers description"
-msgid "The number of bottom layers. When calculated by the bottom thickness, this value is rounded to a whole number."
-msgstr "Le nombre de couches inférieures. Lorsqu'elle est calculée par l'épaisseur du dessous, cette valeur est arrondie à un nombre entier."
-
-#: fdmprinter.def.json
-msgctxt "initial_bottom_layers label"
-msgid "Initial Bottom Layers"
-msgstr "Couches inférieures initiales"
-
-#: fdmprinter.def.json
-msgctxt "initial_bottom_layers description"
-msgid "The number of initial bottom layers, from the build-plate upwards. When calculated by the bottom thickness, this value is rounded to a whole number."
-msgstr "Le nombre de couches inférieures initiales à partir du haut du plateau. Lorsqu'elle est calculée par l'épaisseur du dessous, cette valeur est arrondie à un nombre entier."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern label"
-msgid "Top/Bottom Pattern"
-msgstr "Motif du dessus/dessous"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern description"
-msgid "The pattern of the top/bottom layers."
-msgstr "Le motif des couches du dessus/dessous."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern option lines"
-msgid "Lines"
-msgstr "Lignes"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern option concentric"
-msgid "Concentric"
-msgstr "Concentrique"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern option zigzag"
-msgid "Zig Zag"
-msgstr "Zig Zag"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 label"
-msgid "Bottom Pattern Initial Layer"
-msgstr "Couche initiale du motif du dessous"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 description"
-msgid "The pattern on the bottom of the print on the first layer."
-msgstr "Motif au bas de l'impression sur la première couche."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 option lines"
-msgid "Lines"
-msgstr "Lignes"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 option concentric"
-msgid "Concentric"
-msgstr "Concentrique"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 option zigzag"
-msgid "Zig Zag"
-msgstr "Zig Zag"
-
-#: fdmprinter.def.json
-msgctxt "connect_skin_polygons label"
-msgid "Connect Top/Bottom Polygons"
-msgstr "Relier les polygones supérieurs / inférieurs"
-
-#: fdmprinter.def.json
-msgctxt "connect_skin_polygons description"
-msgid "Connect top/bottom skin paths where they run next to each other. For the concentric pattern enabling this setting greatly reduces the travel time, but because the connections can happen midway over infill this feature can reduce the top surface quality."
-msgstr "Relier les voies de couche extérieure supérieures / inférieures lorsqu'elles sont côte à côte. Pour le motif concentrique, ce paramètre réduit considérablement le temps de parcours, mais comme les liens peuvent se trouver à mi-chemin sur le remplissage, cette fonctionnalité peut réduire la qualité de la surface supérieure."
-
-#: fdmprinter.def.json
-msgctxt "skin_angles label"
-msgid "Top/Bottom Line Directions"
-msgstr "Sens de la ligne du dessus / dessous"
-
-#: fdmprinter.def.json
-msgctxt "skin_angles description"
-msgid "A list of integer line directions to use when the top/bottom layers use the lines or zig zag pattern. Elements from the list are used sequentially as the layers progress and when the end of the list is reached, it starts at the beginning again. The list items are separated by commas and the whole list is contained in square brackets. Default is an empty list which means use the traditional default angles (45 and 135 degrees)."
-msgstr "Une liste de sens de ligne (exprimés en nombres entiers) à utiliser lorsque les couches du haut / bas utilisent le motif en lignes ou en zig zag. Les éléments de la liste sont utilisés de manière séquentielle à mesure de l'avancement des couches. La liste reprend depuis le début lorsque la fin est atteinte. Les éléments de la liste sont séparés par des virgules et la liste entière est encadrée entre crochets. La valeur par défaut est une liste vide, ce qui signifie que les angles traditionnels par défaut seront utilisés (45 et 135 degrés)."
-
#: fdmprinter.def.json
msgctxt "wall_0_inset label"
msgid "Outer Wall Inset"
@@ -1414,6 +1274,176 @@ msgctxt "z_seam_relative description"
msgid "When enabled, the z seam coordinates are relative to each part's centre. When disabled, the coordinates define an absolute position on the build plate."
msgstr "Si cette option est activée, les coordonnées de la jointure z sont relatives au centre de chaque partie. Si elle est désactivée, les coordonnées définissent une position absolue sur le plateau."
+#: fdmprinter.def.json
+msgctxt "top_bottom label"
+msgid "Top/Bottom"
+msgstr "Haut / bas"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom description"
+msgid "Top/Bottom"
+msgstr "Haut / bas"
+
+#: fdmprinter.def.json
+msgctxt "roofing_extruder_nr label"
+msgid "Top Surface Skin Extruder"
+msgstr "Extrudeuse de couche extérieure de la surface supérieure"
+
+#: fdmprinter.def.json
+msgctxt "roofing_extruder_nr description"
+msgid "The extruder train used for printing the top most skin. This is used in multi-extrusion."
+msgstr "Le train d'extrudeuse utilisé pour l'impression de la couche extérieure supérieure. Cela est utilisé en multi-extrusion."
+
+#: fdmprinter.def.json
+msgctxt "roofing_layer_count label"
+msgid "Top Surface Skin Layers"
+msgstr "Couches extérieures de la surface supérieure"
+
+#: fdmprinter.def.json
+msgctxt "roofing_layer_count description"
+msgid "The number of top most skin layers. Usually only one top most layer is sufficient to generate higher quality top surfaces."
+msgstr "Nombre de couches extérieures supérieures. En général, une seule couche supérieure est suffisante pour générer des surfaces supérieures de qualité."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_extruder_nr label"
+msgid "Top/Bottom Extruder"
+msgstr "Extrudeuse du dessus/dessous"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_extruder_nr description"
+msgid "The extruder train used for printing the top and bottom skin. This is used in multi-extrusion."
+msgstr "Le train d'extrudeuse utilisé pour l'impression de la couche extérieure du haut et du bas. Cela est utilisé en multi-extrusion."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_thickness label"
+msgid "Top/Bottom Thickness"
+msgstr "Épaisseur du dessus/dessous"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_thickness description"
+msgid "The thickness of the top/bottom layers in the print. This value divided by the layer height defines the number of top/bottom layers."
+msgstr "L’épaisseur des couches du dessus/dessous dans l'impression. Cette valeur divisée par la hauteur de la couche définit le nombre de couches du dessus/dessous."
+
+#: fdmprinter.def.json
+msgctxt "top_thickness label"
+msgid "Top Thickness"
+msgstr "Épaisseur du dessus"
+
+#: fdmprinter.def.json
+msgctxt "top_thickness description"
+msgid "The thickness of the top layers in the print. This value divided by the layer height defines the number of top layers."
+msgstr "L’épaisseur des couches du dessus dans l'impression. Cette valeur divisée par la hauteur de la couche définit le nombre de couches du dessus."
+
+#: fdmprinter.def.json
+msgctxt "top_layers label"
+msgid "Top Layers"
+msgstr "Couches supérieures"
+
+#: fdmprinter.def.json
+msgctxt "top_layers description"
+msgid "The number of top layers. When calculated by the top thickness, this value is rounded to a whole number."
+msgstr "Le nombre de couches supérieures. Lorsqu'elle est calculée par l'épaisseur du dessus, cette valeur est arrondie à un nombre entier."
+
+#: fdmprinter.def.json
+msgctxt "bottom_thickness label"
+msgid "Bottom Thickness"
+msgstr "Épaisseur du dessous"
+
+#: fdmprinter.def.json
+msgctxt "bottom_thickness description"
+msgid "The thickness of the bottom layers in the print. This value divided by the layer height defines the number of bottom layers."
+msgstr "L’épaisseur des couches du dessous dans l'impression. Cette valeur divisée par la hauteur de la couche définit le nombre de couches du dessous."
+
+#: fdmprinter.def.json
+msgctxt "bottom_layers label"
+msgid "Bottom Layers"
+msgstr "Couches inférieures"
+
+#: fdmprinter.def.json
+msgctxt "bottom_layers description"
+msgid "The number of bottom layers. When calculated by the bottom thickness, this value is rounded to a whole number."
+msgstr "Le nombre de couches inférieures. Lorsqu'elle est calculée par l'épaisseur du dessous, cette valeur est arrondie à un nombre entier."
+
+#: fdmprinter.def.json
+msgctxt "initial_bottom_layers label"
+msgid "Initial Bottom Layers"
+msgstr "Couches inférieures initiales"
+
+#: fdmprinter.def.json
+msgctxt "initial_bottom_layers description"
+msgid "The number of initial bottom layers, from the build-plate upwards. When calculated by the bottom thickness, this value is rounded to a whole number."
+msgstr "Le nombre de couches inférieures initiales à partir du haut du plateau. Lorsqu'elle est calculée par l'épaisseur du dessous, cette valeur est arrondie à un nombre entier."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern label"
+msgid "Top/Bottom Pattern"
+msgstr "Motif du dessus/dessous"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern description"
+msgid "The pattern of the top/bottom layers."
+msgstr "Le motif des couches du dessus/dessous."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern option lines"
+msgid "Lines"
+msgstr "Lignes"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern option concentric"
+msgid "Concentric"
+msgstr "Concentrique"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern option zigzag"
+msgid "Zig Zag"
+msgstr "Zig Zag"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 label"
+msgid "Bottom Pattern Initial Layer"
+msgstr "Couche initiale du motif du dessous"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 description"
+msgid "The pattern on the bottom of the print on the first layer."
+msgstr "Motif au bas de l'impression sur la première couche."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 option lines"
+msgid "Lines"
+msgstr "Lignes"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 option concentric"
+msgid "Concentric"
+msgstr "Concentrique"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 option zigzag"
+msgid "Zig Zag"
+msgstr "Zig Zag"
+
+#: fdmprinter.def.json
+msgctxt "connect_skin_polygons label"
+msgid "Connect Top/Bottom Polygons"
+msgstr "Relier les polygones supérieurs / inférieurs"
+
+#: fdmprinter.def.json
+msgctxt "connect_skin_polygons description"
+msgid "Connect top/bottom skin paths where they run next to each other. For the concentric pattern enabling this setting greatly reduces the travel time, but because the connections can happen midway over infill this feature can reduce the top surface quality."
+msgstr "Relier les voies de couche extérieure supérieures / inférieures lorsqu'elles sont côte à côte. Pour le motif concentrique, ce paramètre réduit considérablement le temps de parcours, mais comme les liens peuvent se trouver à mi-chemin sur le remplissage, cette fonctionnalité peut réduire la qualité de la surface supérieure."
+
+#: fdmprinter.def.json
+msgctxt "skin_angles label"
+msgid "Top/Bottom Line Directions"
+msgstr "Sens de la ligne du dessus / dessous"
+
+#: fdmprinter.def.json
+msgctxt "skin_angles description"
+msgid "A list of integer line directions to use when the top/bottom layers use the lines or zig zag pattern. Elements from the list are used sequentially as the layers progress and when the end of the list is reached, it starts at the beginning again. The list items are separated by commas and the whole list is contained in square brackets. Default is an empty list which means use the traditional default angles (45 and 135 degrees)."
+msgstr "Une liste de sens de ligne (exprimés en nombres entiers) à utiliser lorsque les couches du haut / bas utilisent le motif en lignes ou en zig zag. Les éléments de la liste sont utilisés de manière séquentielle à mesure de l'avancement des couches. La liste reprend depuis le début lorsque la fin est atteinte. Les éléments de la liste sont séparés par des virgules et la liste entière est encadrée entre crochets. La valeur par défaut est une liste vide, ce qui signifie que les angles traditionnels par défaut seront utilisés (45 et 135 degrés)."
+
#: fdmprinter.def.json
msgctxt "skin_no_small_gaps_heuristic label"
msgid "No Skin in Z Gaps"
@@ -1554,6 +1584,86 @@ msgctxt "skin_overlap_mm description"
msgid "Adjust the amount of overlap between the walls and (the endpoints of) the skin-centerlines. A slight overlap allows the walls to connect firmly to the skin. Note that, given an equal skin and wall line-width, any value over half the width of the wall may already cause any skin to go past the wall, because at that point the position of the nozzle of the skin-extruder may already reach past the middle of the wall."
msgstr "Ajuster le degré de chevauchement entre les parois et les (extrémités des) lignes centrales de la couche extérieure. Un chevauchement léger permet de relier fermement les parois à la couche extérieure. Notez que, si la largeur de la couche extérieure est égale à celle de la ligne de la paroi, une valeur supérieure à la moitié de la largeur de la paroi peut déjà faire dépasser la couche extérieure de la paroi, car dans ce cas la position de la buse de l'extrudeuse peut déjà atteindre le milieu de la paroi."
+#: fdmprinter.def.json
+msgctxt "skin_preshrink label"
+msgid "Skin Removal Width"
+msgstr "Largeur de retrait de la couche extérieure"
+
+#: fdmprinter.def.json
+msgctxt "skin_preshrink description"
+msgid "The largest width of skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top/bottom skin at slanted surfaces in the model."
+msgstr "La plus grande largeur des zones de la couche extérieure à faire disparaître. Toute zone de la couche extérieure plus étroite que cette valeur disparaîtra. Ceci peut aider à limiter le temps et la quantité de matière utilisés pour imprimer la couche extérieure supérieure/inférieure sur les surfaces obliques du modèle."
+
+#: fdmprinter.def.json
+msgctxt "top_skin_preshrink label"
+msgid "Top Skin Removal Width"
+msgstr "Largeur de retrait de la couche extérieure supérieure"
+
+#: fdmprinter.def.json
+msgctxt "top_skin_preshrink description"
+msgid "The largest width of top skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top skin at slanted surfaces in the model."
+msgstr "La plus grande largeur des zones de la couche extérieure supérieure à faire disparaître. Toute zone de la couche extérieure plus étroite que cette valeur disparaîtra. Ceci peut aider à limiter le temps et la quantité de matière utilisés pour imprimer la couche extérieure supérieure sur les surfaces obliques du modèle."
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_preshrink label"
+msgid "Bottom Skin Removal Width"
+msgstr "Largeur de retrait de la couche extérieure inférieure"
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_preshrink description"
+msgid "The largest width of bottom skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing bottom skin at slanted surfaces in the model."
+msgstr "La plus grande largeur des zones de la couche extérieure inférieure à faire disparaître. Toute zone de la couche extérieure plus étroite que cette valeur disparaîtra. Ceci peut aider à limiter le temps et la quantité de matière utilisés pour imprimer la couche extérieure inférieure sur les surfaces obliques du modèle."
+
+#: fdmprinter.def.json
+msgctxt "expand_skins_expand_distance label"
+msgid "Skin Expand Distance"
+msgstr "Distance d'expansion de la couche extérieure"
+
+#: fdmprinter.def.json
+msgctxt "expand_skins_expand_distance description"
+msgid "The distance the skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on neighboring layers adhere better to the skin. Lower values save amount of material used."
+msgstr "La distance à laquelle les couches extérieures s'étendent à l'intérieur du remplissage. Des valeurs élevées lient mieux la couche extérieure au motif de remplissage et font mieux adhérer à cette couche les parois des couches voisines. Des valeurs faibles économisent la quantité de matériau utilisé."
+
+#: fdmprinter.def.json
+msgctxt "top_skin_expand_distance label"
+msgid "Top Skin Expand Distance"
+msgstr "Distance d'expansion de la couche extérieure supérieure"
+
+#: fdmprinter.def.json
+msgctxt "top_skin_expand_distance description"
+msgid "The distance the top skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on the layer above adhere better to the skin. Lower values save amount of material used."
+msgstr "La distance à laquelle les couches extérieures supérieures s'étendent à l'intérieur du remplissage. Des valeurs élevées lient mieux la couche extérieure au motif de remplissage et font mieux adhérer à cette couche les parois de la couche supérieure. Des valeurs faibles économisent la quantité de matériau utilisé."
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_expand_distance label"
+msgid "Bottom Skin Expand Distance"
+msgstr "Distance d'expansion de la couche extérieure inférieure"
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_expand_distance description"
+msgid "The distance the bottom skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the skin adhere better to the walls on the layer below. Lower values save amount of material used."
+msgstr "La distance à laquelle les couches extérieures inférieures s'étendent à l'intérieur du remplissage. Des valeurs élevées lient mieux la couche extérieure au motif de remplissage et font mieux adhérer à cette couche les parois de la couche inférieure. Des valeurs faibles économisent la quantité de matériau utilisé."
+
+#: fdmprinter.def.json
+msgctxt "max_skin_angle_for_expansion label"
+msgid "Maximum Skin Angle for Expansion"
+msgstr "Angle maximum de la couche extérieure pour l'expansion"
+
+#: fdmprinter.def.json
+msgctxt "max_skin_angle_for_expansion description"
+msgid "Top and/or bottom surfaces of your object with an angle larger than this setting, won't have their top/bottom skin expanded. This avoids expanding the narrow skin areas that are created when the model surface has a near vertical slope. An angle of 0° is horizontal and will cause no skin to be expanded, while an angle of 90° is vertical and will cause all skin to be expanded."
+msgstr "Les couches extérieures supérieures / inférieures des surfaces supérieures et / ou inférieures de votre objet possédant un angle supérieur à ce paramètre ne seront pas étendues. Cela permet d'éviter d'étendre les zones de couche extérieure étroites qui sont créées lorsque la surface du modèle possède une pente proche de la verticale. Un angle de 0° est horizontal et évitera l'extension des couches ; un angle de 90° est vertical et entraînera l'extension de toutes les couches."
+
+#: fdmprinter.def.json
+msgctxt "min_skin_width_for_expansion label"
+msgid "Minimum Skin Width for Expansion"
+msgstr "Largeur minimum de la couche extérieure pour l'expansion"
+
+#: fdmprinter.def.json
+msgctxt "min_skin_width_for_expansion description"
+msgid "Skin areas narrower than this are not expanded. This avoids expanding the narrow skin areas that are created when the model surface has a slope close to the vertical."
+msgstr "Les zones de couche extérieure plus étroites que cette valeur ne seront pas étendues. Cela permet d'éviter d'étendre les zones de couche extérieure étroites qui sont créées lorsque la surface du modèle possède une pente proche de la verticale."
+
#: fdmprinter.def.json
msgctxt "infill label"
msgid "Infill"
@@ -1863,86 +1973,6 @@ msgctxt "infill_support_angle description"
msgid "The minimum angle of internal overhangs for which infill is added. At a value of 0° objects are totally filled with infill, 90° will not provide any infill."
msgstr "Angle minimal des porte-à-faux internes pour lesquels le remplissage est ajouté. À une valeur de 0°, les objets sont totalement remplis, 90° ne fournira aucun remplissage."
-#: fdmprinter.def.json
-msgctxt "skin_preshrink label"
-msgid "Skin Removal Width"
-msgstr "Largeur de retrait de la couche extérieure"
-
-#: fdmprinter.def.json
-msgctxt "skin_preshrink description"
-msgid "The largest width of skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top/bottom skin at slanted surfaces in the model."
-msgstr "La plus grande largeur des zones de la couche extérieure à faire disparaître. Toute zone de la couche extérieure plus étroite que cette valeur disparaîtra. Ceci peut aider à limiter le temps et la quantité de matière utilisés pour imprimer la couche extérieure supérieure/inférieure sur les surfaces obliques du modèle."
-
-#: fdmprinter.def.json
-msgctxt "top_skin_preshrink label"
-msgid "Top Skin Removal Width"
-msgstr "Largeur de retrait de la couche extérieure supérieure"
-
-#: fdmprinter.def.json
-msgctxt "top_skin_preshrink description"
-msgid "The largest width of top skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top skin at slanted surfaces in the model."
-msgstr "La plus grande largeur des zones de la couche extérieure supérieure à faire disparaître. Toute zone de la couche extérieure plus étroite que cette valeur disparaîtra. Ceci peut aider à limiter le temps et la quantité de matière utilisés pour imprimer la couche extérieure supérieure sur les surfaces obliques du modèle."
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_preshrink label"
-msgid "Bottom Skin Removal Width"
-msgstr "Largeur de retrait de la couche extérieure inférieure"
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_preshrink description"
-msgid "The largest width of bottom skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing bottom skin at slanted surfaces in the model."
-msgstr "La plus grande largeur des zones de la couche extérieure inférieure à faire disparaître. Toute zone de la couche extérieure plus étroite que cette valeur disparaîtra. Ceci peut aider à limiter le temps et la quantité de matière utilisés pour imprimer la couche extérieure inférieure sur les surfaces obliques du modèle."
-
-#: fdmprinter.def.json
-msgctxt "expand_skins_expand_distance label"
-msgid "Skin Expand Distance"
-msgstr "Distance d'expansion de la couche extérieure"
-
-#: fdmprinter.def.json
-msgctxt "expand_skins_expand_distance description"
-msgid "The distance the skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on neighboring layers adhere better to the skin. Lower values save amount of material used."
-msgstr "La distance à laquelle les couches extérieures s'étendent à l'intérieur du remplissage. Des valeurs élevées lient mieux la couche extérieure au motif de remplissage et font mieux adhérer à cette couche les parois des couches voisines. Des valeurs faibles économisent la quantité de matériau utilisé."
-
-#: fdmprinter.def.json
-msgctxt "top_skin_expand_distance label"
-msgid "Top Skin Expand Distance"
-msgstr "Distance d'expansion de la couche extérieure supérieure"
-
-#: fdmprinter.def.json
-msgctxt "top_skin_expand_distance description"
-msgid "The distance the top skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on the layer above adhere better to the skin. Lower values save amount of material used."
-msgstr "La distance à laquelle les couches extérieures supérieures s'étendent à l'intérieur du remplissage. Des valeurs élevées lient mieux la couche extérieure au motif de remplissage et font mieux adhérer à cette couche les parois de la couche supérieure. Des valeurs faibles économisent la quantité de matériau utilisé."
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_expand_distance label"
-msgid "Bottom Skin Expand Distance"
-msgstr "Distance d'expansion de la couche extérieure inférieure"
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_expand_distance description"
-msgid "The distance the bottom skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the skin adhere better to the walls on the layer below. Lower values save amount of material used."
-msgstr "La distance à laquelle les couches extérieures inférieures s'étendent à l'intérieur du remplissage. Des valeurs élevées lient mieux la couche extérieure au motif de remplissage et font mieux adhérer à cette couche les parois de la couche inférieure. Des valeurs faibles économisent la quantité de matériau utilisé."
-
-#: fdmprinter.def.json
-msgctxt "max_skin_angle_for_expansion label"
-msgid "Maximum Skin Angle for Expansion"
-msgstr "Angle maximum de la couche extérieure pour l'expansion"
-
-#: fdmprinter.def.json
-msgctxt "max_skin_angle_for_expansion description"
-msgid "Top and/or bottom surfaces of your object with an angle larger than this setting, won't have their top/bottom skin expanded. This avoids expanding the narrow skin areas that are created when the model surface has a near vertical slope. An angle of 0° is horizontal, while an angle of 90° is vertical."
-msgstr "Les couches extérieures supérieures / inférieures des surfaces supérieures et / ou inférieures de votre objet possédant un angle supérieur à ce paramètre ne seront pas étendues. Cela permet d'éviter d'étendre les zones de couche extérieure étroites qui sont créées lorsque la surface du modèle possède une pente proche de la verticale. Un angle de 0° est horizontal, et un angle de 90° est vertical."
-
-#: fdmprinter.def.json
-msgctxt "min_skin_width_for_expansion label"
-msgid "Minimum Skin Width for Expansion"
-msgstr "Largeur minimum de la couche extérieure pour l'expansion"
-
-#: fdmprinter.def.json
-msgctxt "min_skin_width_for_expansion description"
-msgid "Skin areas narrower than this are not expanded. This avoids expanding the narrow skin areas that are created when the model surface has a slope close to the vertical."
-msgstr "Les zones de couche extérieure plus étroites que cette valeur ne seront pas étendues. Cela permet d'éviter d'étendre les zones de couche extérieure étroites qui sont créées lorsque la surface du modèle possède une pente proche de la verticale."
-
#: fdmprinter.def.json
msgctxt "skin_edge_support_thickness label"
msgid "Skin Edge Support Thickness"
@@ -2071,8 +2101,7 @@ msgstr "Température du plateau couche initiale"
#: fdmprinter.def.json
msgctxt "material_bed_temperature_layer_0 description"
msgid "The temperature used for the heated build plate at the first layer. If this is 0, the build plate is left unheated during the first layer."
-msgstr "Température utilisée pour le plateau de fabrication chauffé à la première couche. Si elle est définie sur 0, le plateau de fabrication ne sera pas chauffé"
-" lors de la première couche."
+msgstr "Température utilisée pour le plateau de fabrication chauffé à la première couche. Si elle est définie sur 0, le plateau de fabrication ne sera pas chauffé lors de la première couche."
#: fdmprinter.def.json
msgctxt "material_adhesion_tendency label"
@@ -2561,8 +2590,8 @@ msgstr "Vitesse de la couche initiale"
#: fdmprinter.def.json
msgctxt "speed_layer_0 description"
-msgid "The speed for the initial layer. A lower value is advised to improve adhesion to the build plate."
-msgstr "La vitesse de la couche initiale. Une valeur plus faible est recommandée pour améliorer l'adhérence au plateau."
+msgid "The speed for the initial layer. A lower value is advised to improve adhesion to the build plate. Does not affect the build plate adhesion structures themselves, like brim and raft."
+msgstr "La vitesse de la couche initiale. Une valeur plus faible est recommandée pour améliorer l'adhérence au plateau de fabrication. N'affecte pas les structures d'adhérence au plateau, comme la bordure et le radeau."
#: fdmprinter.def.json
msgctxt "speed_print_layer_0 label"
@@ -3171,8 +3200,9 @@ msgstr "Distance de détour max. sans rétraction"
#: fdmprinter.def.json
msgctxt "retraction_combing_max_distance description"
-msgid "When non-zero, combing travel moves that are longer than this distance will use retraction."
-msgstr "Lorsque cette distance n'est pas nulle, les déplacements de détour qui sont plus longs que cette distance utiliseront la rétraction."
+msgid "When greater than zero, combing travel moves that are longer than this distance will use retraction. If set to zero, there is no maximum and combing moves will not use retraction."
+msgstr "Lorsque cette distance est supérieure à zéro, les déplacements de détour qui sont plus longs que cette distance utiliseront la rétraction. Si elle est"
+" définie sur zéro, il n'y a pas de maximum et les mouvements de détour n'utiliseront pas la rétraction."
#: fdmprinter.def.json
msgctxt "travel_retract_before_outer_wall label"
@@ -5075,10 +5105,8 @@ msgstr "Rang de traitement du maillage"
#: fdmprinter.def.json
msgctxt "infill_mesh_order description"
-msgid "Determines the priority of this mesh when considering multiple overlapping infill meshes. Areas where multiple infill meshes overlap will take on the settings of the mesh with the lowest rank. An infill mesh with a higher order will modify the infill of infill meshes with lower order and normal meshes."
-msgstr "Détermine la priorité de cette maille lorsque plusieurs chevauchements de mailles de remplissage sont pris en considération. Les zones comportant plusieurs"
-" chevauchements de mailles de remplissage prendront en compte les paramètres du maillage ayant l'ordre le plus bas. Une maille de remplissage possédant"
-" un ordre plus élevé modifiera le remplissage des mailles de remplissage ayant un ordre plus bas et des mailles normales."
+msgid "Determines the priority of this mesh when considering multiple overlapping infill meshes. Areas where multiple infill meshes overlap will take on the settings of the mesh with the highest rank. An infill mesh with a higher rank will modify the infill of infill meshes with lower rank and normal meshes."
+msgstr "Détermine la priorité de cette maille lorsque plusieurs chevauchements de mailles de remplissage sont pris en considération. Les zones comportant plusieurs chevauchements de mailles de remplissage prendront en compte les paramètres du maillage ayant l'ordre le plus élevé. Une maille de remplissage possédant un ordre plus élevé modifiera le remplissage des mailles de remplissage ayant un ordre plus bas et des mailles normales."
#: fdmprinter.def.json
msgctxt "cutting_mesh label"
@@ -5425,6 +5453,16 @@ msgctxt "conical_overhang_angle description"
msgid "The maximum angle of overhangs after the they have been made printable. At a value of 0° all overhangs are replaced by a piece of model connected to the build plate, 90° will not change the model in any way."
msgstr "L'angle maximal des porte-à-faux après qu'ils aient été rendus imprimables. À une valeur de 0°, tous les porte-à-faux sont remplacés par une pièce de modèle rattachée au plateau, tandis que 90° ne changera en rien le modèle."
+#: fdmprinter.def.json
+msgctxt "conical_overhang_hole_size label"
+msgid "Maximum Overhang Hole Area"
+msgstr "Surface maximale du trou en porte-à-faux"
+
+#: fdmprinter.def.json
+msgctxt "conical_overhang_hole_size description"
+msgid "The maximum area of a hole in the base of the model before it's removed by Make Overhang Printable. Holes smaller than this will be retained. A value of 0 mm² will fill all holes in the models base."
+msgstr "Zone maximale d'un trou dans la base du modèle avant d'être retirée par l'outil Rendre le porte-à-faux imprimable. Les trous plus petits seront conservés. Une valeur de 0 mm² remplira tous les trous dans la base des modèles."
+
#: fdmprinter.def.json
msgctxt "coasting_enable label"
msgid "Enable Coasting"
@@ -6364,6 +6402,30 @@ msgctxt "mesh_rotation_matrix description"
msgid "Transformation matrix to be applied to the model when loading it from file."
msgstr "Matrice de transformation à appliquer au modèle lors de son chargement depuis le fichier."
+#~ msgctxt "retraction_combing_max_distance description"
+#~ msgid "When non-zero, combing travel moves that are longer than this distance will use retraction."
+#~ msgstr "Lorsque cette distance n'est pas nulle, les déplacements de détour qui sont plus longs que cette distance utiliseront la rétraction."
+
+#~ msgctxt "machine_use_extruder_offset_to_offset_coords description"
+#~ msgid "Apply the extruder offset to the coordinate system."
+#~ msgstr "Appliquer le décalage de l'extrudeuse au système de coordonnées."
+
+#~ msgctxt "shell label"
+#~ msgid "Shell"
+#~ msgstr "Coque"
+
+#~ msgctxt "max_skin_angle_for_expansion description"
+#~ msgid "Top and/or bottom surfaces of your object with an angle larger than this setting, won't have their top/bottom skin expanded. This avoids expanding the narrow skin areas that are created when the model surface has a near vertical slope. An angle of 0° is horizontal, while an angle of 90° is vertical."
+#~ msgstr "Les couches extérieures supérieures / inférieures des surfaces supérieures et / ou inférieures de votre objet possédant un angle supérieur à ce paramètre ne seront pas étendues. Cela permet d'éviter d'étendre les zones de couche extérieure étroites qui sont créées lorsque la surface du modèle possède une pente proche de la verticale. Un angle de 0° est horizontal, et un angle de 90° est vertical."
+
+#~ msgctxt "speed_layer_0 description"
+#~ msgid "The speed for the initial layer. A lower value is advised to improve adhesion to the build plate."
+#~ msgstr "La vitesse de la couche initiale. Une valeur plus faible est recommandée pour améliorer l'adhérence au plateau."
+
+#~ msgctxt "infill_mesh_order description"
+#~ msgid "Determines the priority of this mesh when considering multiple overlapping infill meshes. Areas where multiple infill meshes overlap will take on the settings of the mesh with the lowest rank. An infill mesh with a higher order will modify the infill of infill meshes with lower order and normal meshes."
+#~ msgstr "Détermine la priorité de cette maille lorsque plusieurs chevauchements de mailles de remplissage sont pris en considération. Les zones comportant plusieurs chevauchements de mailles de remplissage prendront en compte les paramètres du maillage ayant l'ordre le plus bas. Une maille de remplissage possédant un ordre plus élevé modifiera le remplissage des mailles de remplissage ayant un ordre plus bas et des mailles normales."
+
#~ msgctxt "material_bed_temperature description"
#~ msgid "The temperature used for the heated build plate. If this is 0, the bed temperature will not be adjusted."
#~ msgstr "Température utilisée pour le plateau chauffant. Si elle est définie sur 0, la température du plateau ne sera pas ajustée."
diff --git a/resources/i18n/hu_HU/cura.po b/resources/i18n/hu_HU/cura.po
index 8d33d009f0..f21a32653d 100644
--- a/resources/i18n/hu_HU/cura.po
+++ b/resources/i18n/hu_HU/cura.po
@@ -1,12 +1,12 @@
# Cura
-# Copyright (C) 2020 Ultimaker B.V.
+# Copyright (C) 2021 Ultimaker B.V.
# This file is distributed under the same license as the Cura package.
#
msgid ""
msgstr ""
-"Project-Id-Version: Cura 4.8\n"
+"Project-Id-Version: Cura 4.10\n"
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
-"POT-Creation-Date: 2020-10-19 13:15+0200\n"
+"POT-Creation-Date: 2021-06-10 17:35+0200\n"
"PO-Revision-Date: 2020-03-24 09:36+0100\n"
"Last-Translator: Nagy Attila \n"
"Language-Team: ATI-SZOFT\n"
@@ -20,7 +20,7 @@ msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/DiscoveredPrintersModel.py:83
#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:110
#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/QualityManagementModel.py:361
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1581
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1612
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:130
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:171
msgctxt "@label"
@@ -91,12 +91,12 @@ msgctxt "@text"
msgid "The draft profile is designed to print initial prototypes and concept validation with the intent of significant print time reduction."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:226
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:234
msgctxt "@label"
msgid "Custom Material"
msgstr "Egyedi anyag"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:227
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:235
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationMenu.qml:205
msgctxt "@label"
msgid "Custom"
@@ -118,7 +118,7 @@ msgctxt "@item:inlistbox"
msgid "All Files (*)"
msgstr "Minden fájl (*)"
-#: /home/trin/Gedeeld/Projects/Cura/cura/API/Account.py:178
+#: /home/trin/Gedeeld/Projects/Cura/cura/API/Account.py:181
msgctxt "@info:title"
msgid "Login failed"
msgstr "Sikertelen bejelentkezés"
@@ -148,28 +148,33 @@ msgctxt "@info:title"
msgid "Can't Find Location"
msgstr "Nem találok helyet"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:104
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:116
msgctxt "@info:backup_failed"
msgid "Could not create archive from user data directory: {}"
msgstr "Nem sikerült archívumot létrehozni a felhasználói adatkönyvtárból: {}"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:110
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:122
#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:107
#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:113
msgctxt "@info:title"
msgid "Backup"
msgstr "Biztonsági mentés"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:123
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:135
msgctxt "@info:backup_failed"
msgid "Tried to restore a Cura backup without having proper data or meta data."
msgstr "Megpróbált visszaállítani egy Cura biztonsági másolatot anélkül, hogy megfelelő adatok vagy meta adatok lennének."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:134
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:146
msgctxt "@info:backup_failed"
msgid "Tried to restore a Cura backup that is higher than the current version."
msgstr "Egy olyan Cura biztonsági mentést próbált visszaállítani, amelyiknek a verziója magasabb a jelenlegitől."
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:157
+msgctxt "@info:backup_failed"
+msgid "The following error occurred while trying to restore a Cura backup:"
+msgstr ""
+
#: /home/trin/Gedeeld/Projects/Cura/cura/BuildVolume.py:98
msgctxt "@info:status"
msgid "The build volume height has been reduced due to the value of the \"Print Sequence\" setting to prevent the gantry from colliding with printed models."
@@ -319,74 +324,74 @@ msgctxt "@action:button"
msgid "Send report"
msgstr "Jelentés küldés"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:521
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:527
msgctxt "@info:progress"
msgid "Loading machines..."
msgstr "Gépek betöltése ..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:528
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:534
msgctxt "@info:progress"
msgid "Setting up preferences..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:657
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:672
msgctxt "@info:progress"
msgid "Initializing Active Machine..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:788
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:803
msgctxt "@info:progress"
msgid "Initializing machine manager..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:802
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:817
msgctxt "@info:progress"
msgid "Initializing build volume..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:870
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:888
msgctxt "@info:progress"
msgid "Setting up scene..."
msgstr "Felület beállítása..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:906
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:924
msgctxt "@info:progress"
msgid "Loading interface..."
msgstr "Interfészek betöltése..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:911
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:929
msgctxt "@info:progress"
msgid "Initializing engine..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1221
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1246
#, python-format
msgctxt "@info 'width', 'depth' and 'height' are variable names that must NOT be translated; just translate the format of ##x##x## mm."
msgid "%(width).1f x %(depth).1f x %(height).1f mm"
msgstr "%(width).1f x %(depth).1f x %(height).1f mm"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1777
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1799
#, python-brace-format
msgctxt "@info:status"
msgid "Only one G-code file can be loaded at a time. Skipped importing {0}"
msgstr "Egyszerre csak egy G-kód fájlt lehet betölteni. Az importálás kihagyva {0}"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1778
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:188
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:242
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1800
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:190
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:244
#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:153
#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:165
msgctxt "@info:title"
msgid "Warning"
msgstr "Figyelem"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1787
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1809
#, python-brace-format
msgctxt "@info:status"
msgid "Can't open any other file if G-code is loading. Skipped importing {0}"
msgstr "Nem nyitható meg más fájl, ha a G-kód betöltődik. Az importálás kihagyva {0}"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1788
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1810
#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:146
#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:153
#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:139
@@ -409,7 +414,7 @@ msgctxt "@info:title"
msgid "Placing Object"
msgstr "Tárgy elhelyezése"
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationHelpers.py:90
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationHelpers.py:92
msgctxt "@message"
msgid "Could not read response."
msgstr "Nincs olvasható válasz."
@@ -429,12 +434,12 @@ msgctxt "@message"
msgid "Something unexpected happened when trying to log in, please try again."
msgstr "Valami váratlan esemény történt a bejelentkezéskor, próbálkozzon újra."
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:187
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:189
msgctxt "@info"
msgid "Unable to start a new sign in process. Check if another sign in attempt is still active."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:242
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:244
msgctxt "@info"
msgid "Unable to reach the Ultimaker account server."
msgstr "Az Ultimaker fiókkiszolgáló elérhetetlen."
@@ -452,8 +457,8 @@ msgctxt "@label Don't translate the XML tag !"
msgid "The file {0} already exists. Are you sure you want to overwrite it?"
msgstr "A {0} fájl már létezik. Biztosan szeretnéd, hogy felülírjuk?"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:452
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:455
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:457
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:460
msgctxt "@info:status"
msgid "Invalid file URL:"
msgstr "Érvénytelen fájl URL:"
@@ -536,33 +541,33 @@ msgctxt "@info:status"
msgid "Profile {0} has an unknown file type or is corrupted."
msgstr "A(z) {0} profil ismeretlen fájltípusú vagy sérült."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:423
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:426
msgctxt "@label"
msgid "Custom profile"
msgstr "Egyedi profil"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:439
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:442
msgctxt "@info:status"
msgid "Profile is missing a quality type."
msgstr "Hiányzik a profil minőségi típusa."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:443
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:446
msgctxt "@info:status"
-msgid "Global stack is missing."
+msgid "There is no active printer yet."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:449
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:452
msgctxt "@info:status"
msgid "Unable to add the profile."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:463
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:466
#, python-brace-format
msgctxt "@info:status"
msgid "Quality type '{0}' is not compatible with the current active machine definition '{1}'."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:468
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:471
#, python-brace-format
msgctxt "@info:status"
msgid "Warning: The profile is not visible because its quality type '{0}' is not available for the current configuration. Switch to a material/nozzle combination that can use this quality type."
@@ -578,23 +583,23 @@ msgctxt "@info:No intent profile selected"
msgid "Default"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:712
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:713
#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:216
msgctxt "@label"
msgid "Nozzle"
msgstr "Fúvóka"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:860
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:856
msgctxt "@info:message Followed by a list of settings."
msgid "Settings have been changed to match the current availability of extruders:"
msgstr "A beállításokat megváltoztattuk, hogy azok megfeleljenek az jelenleg elérhető extrudereknek:"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:862
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:858
msgctxt "@info:title"
msgid "Settings updated"
msgstr "Beállítások frissítve"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1447
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1478
msgctxt "@info:title"
msgid "Extruder(s) Disabled"
msgstr "Extruder(ek) kikapcsolva"
@@ -607,13 +612,13 @@ msgid "Add"
msgstr "Hozzáad"
#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:26
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:263
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:272
msgctxt "@action:button"
msgid "Finish"
msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:33
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:441
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:445
#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:234
#: /home/trin/Gedeeld/Projects/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:150
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxProgressButton.qml:19
@@ -621,7 +626,7 @@ msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:352
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:58
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/PrintWindow.qml:42
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:87
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:82
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:292
msgctxt "@action:button"
msgid "Cancel"
@@ -633,76 +638,83 @@ msgctxt "@label"
msgid "Group #{group_nr}"
msgstr "Csoport #{group_nr}"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:83
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:82
msgctxt "@tooltip"
msgid "Outer Wall"
msgstr "Külső fal"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:84
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:83
msgctxt "@tooltip"
msgid "Inner Walls"
msgstr "Belső falak"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:85
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:84
msgctxt "@tooltip"
msgid "Skin"
msgstr "Héj"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:86
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:85
msgctxt "@tooltip"
msgid "Infill"
msgstr "Kitöltés"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:87
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:86
msgctxt "@tooltip"
msgid "Support Infill"
msgstr "Támasz kitöltés"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:88
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:87
msgctxt "@tooltip"
msgid "Support Interface"
msgstr "Támasz interface"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:89
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:88
msgctxt "@tooltip"
msgid "Support"
msgstr "Támasz"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:90
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:89
msgctxt "@tooltip"
msgid "Skirt"
msgstr "Szoknya"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:91
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:90
msgctxt "@tooltip"
msgid "Prime Tower"
msgstr "Elsődleges torony"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:92
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:91
msgctxt "@tooltip"
msgid "Travel"
msgstr "Átmozgás"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:93
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:92
msgctxt "@tooltip"
msgid "Retractions"
msgstr "Visszahúzás"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:94
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:93
msgctxt "@tooltip"
msgid "Other"
msgstr "Egyéb"
#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:56
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:259
msgctxt "@action:button"
msgid "Next"
msgstr "Következő"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WhatsNewPagesModel.py:17
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:268
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WhatsNewPagesModel.py:55
+msgctxt "@action:button"
+msgid "Skip"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WhatsNewPagesModel.py:60
#: /home/trin/Gedeeld/Projects/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:185
#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:128
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:482
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:173
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:485
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:174
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:127
msgctxt "@action:button"
msgid "Close"
@@ -727,29 +739,36 @@ msgstr ""
"
Itt Megtudhatja, hogyan lehet a lehető legjobb nyomtatási minőséget és megbízhatóságot biztosítani.
"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:535
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:540
#, python-brace-format
msgctxt "@info:status Don't translate the XML tags or !"
msgid "Project file {0} contains an unknown machine type {1}. Cannot import the machine. Models will be imported instead."
msgstr "A projekt fájl {0} egy ismeretlen {1} géptípust tartalmaz.Gépet nem lehet importálni. Importálj helyette modelleket."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:538
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:543
msgctxt "@info:title"
msgid "Open Project File"
msgstr "Projekt fájl megnyitása"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:634
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:639
#, python-brace-format
msgctxt "@info:error Don't translate the XML tags or !"
msgid "Project file {0} is suddenly inaccessible: {1}."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:635
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:640
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:647
msgctxt "@info:title"
msgid "Can't Open Project File"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:686
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:646
+#, python-brace-format
+msgctxt "@info:error Don't translate the XML tags or !"
+msgid "Project file {0} is corrupt: {1}."
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:698
#, python-brace-format
msgctxt "@info:error Don't translate the XML tag !"
msgid "Project file {0} is made using profiles that are unknown to this version of Ultimaker Cura."
@@ -787,7 +806,7 @@ msgctxt "@error:zip"
msgid "The operating system does not allow saving a project file to this location or with this file name."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWriter.py:185
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWriter.py:206
msgctxt "@error:zip"
msgid "Error writing 3mf file."
msgstr "Hiba a 3mf fájl írásakor."
@@ -842,8 +861,8 @@ msgctxt "@error:file_size"
msgid "The backup exceeds the maximum file size."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DriveApiService.py:82
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/RestoreBackupJob.py:23
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DriveApiService.py:86
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/RestoreBackupJob.py:26
msgctxt "@info:backup_status"
msgid "There was an error trying to restore your backup."
msgstr "Hiba történt a biztonsági másolat visszaállításakor."
@@ -853,45 +872,45 @@ msgctxt "@item:inmenu"
msgid "Manage backups"
msgstr "Bitonsági mentések kezelése"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:356
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:382
msgctxt "@info:status"
msgid "Unable to slice with the current material as it is incompatible with the selected machine or configuration."
msgstr "Nem lehet szeletelni a jelenlegi alapanyaggal, mert nem kompatibilis a kiválasztott nyomtatóval, vagy a beállításaival."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:356
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:387
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:411
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:420
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:429
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:441
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:382
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:413
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:437
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:446
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:455
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:467
msgctxt "@info:title"
msgid "Unable to slice"
msgstr "Nem lehet szeletelni"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:386
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:412
#, python-brace-format
msgctxt "@info:status"
msgid "Unable to slice with the current settings. The following settings have errors: {0}"
msgstr "Nem lehet szeletelni ezekkel a beállításokkal. Ezek a beállítások okoznak hibát: {0}"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:410
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:436
#, python-brace-format
msgctxt "@info:status"
msgid "Unable to slice due to some per-model settings. The following settings have errors on one or more models: {error_labels}"
msgstr "Nem lehet szeletelni pár modell beállítás miatt. A következő beállításokokoznak hibát egy vagy több modellnél: {error_labels}"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:419
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:445
msgctxt "@info:status"
msgid "Unable to slice because the prime tower or prime position(s) are invalid."
msgstr "Nem lehet szeletelni, mert az elsődleges torony, vagy az elsődleges pozíció érvénytelen."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:428
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:454
#, python-format
msgctxt "@info:status"
msgid "Unable to slice because there are objects associated with disabled Extruder %s."
msgstr "Nem lehet szeletelni, mert vannak olyan objektumok, amelyek a letiltott Extruderhez vannak társítva.%s."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:437
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:463
msgctxt "@info:status"
msgid ""
"Please review settings and check if your models:\n"
@@ -1156,28 +1175,28 @@ msgctxt "@item:intext"
msgid "Removable Drive"
msgstr "Cserélhető meghajtó"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:121
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:128
msgctxt "@info:status"
msgid "Cura does not accurately display layers when Wire Printing is enabled."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:122
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:129
msgctxt "@info:title"
msgid "Simulation View"
msgstr "Szimuláció nézet"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:123
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:130
msgctxt "@info:status"
msgid "Nothing is shown because you need to slice first."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:123
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:130
msgctxt "@info:title"
msgid "No layers to show"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:124
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:73
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:131
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:74
msgctxt "@info:option_text"
msgid "Do not show this message again"
msgstr ""
@@ -1187,14 +1206,19 @@ msgctxt "@item:inlistbox"
msgid "Layer view"
msgstr "Réteg nézet"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:70
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:71
msgctxt "@info:status"
-msgid "Your model is not manifold. The highlighted areas indicate either missing or extraneous surfaces."
+msgid "The highlighted areas indicate either missing or extraneous surfaces. Fix your model and open it again into Cura."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:72
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:73
msgctxt "@info:title"
-msgid "Model errors"
+msgid "Model Errors"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:79
+msgctxt "@action:button"
+msgid "Learn more"
msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/__init__.py:12
@@ -1223,7 +1247,7 @@ msgctxt "@info:title"
msgid "Changes detected from your Ultimaker account"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py:146
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py:145
msgctxt "@action:button"
msgid "Sync"
msgstr ""
@@ -1259,7 +1283,7 @@ msgctxt "@info:generic"
msgid "You need to quit and restart {} before changes have effect."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/SyncOrchestrator.py:76
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/SyncOrchestrator.py:79
msgctxt "@info:generic"
msgid "{} plugins failed to download"
msgstr ""
@@ -1300,7 +1324,11 @@ msgctxt "@item:inlistbox"
msgid "Ultimaker Format Package"
msgstr "Ultimaker formátumcsomag"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:146
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:57
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:72
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:94
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:149
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:159
msgctxt "@info:error"
msgid "Can't write to UFP file:"
msgstr ""
@@ -1315,22 +1343,22 @@ msgctxt "@action"
msgid "Select upgrades"
msgstr "Válassz frissítést"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:152
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:154
msgctxt "@action:button"
msgid "Print via cloud"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:153
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:155
msgctxt "@properties:tooltip"
msgid "Print via cloud"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:154
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:156
msgctxt "@info:status"
msgid "Connected via cloud"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:264
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:270
#, python-brace-format
msgctxt "@error:send"
msgid "Unknown error code when uploading print job: {0}"
@@ -1622,82 +1650,82 @@ msgctxt "@info:tooltip"
msgid "Some things could be problematic in this print. Click to see tips for adjustment."
msgstr "Néhány dolog problémát jelenthet ebben a nyomtatásban.Kattintson ide a beállítási tippek megtekintéséhez."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:14
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:15
msgctxt "@title:window"
msgid "Open Project"
msgstr "Projekt megnyitása"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:61
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:62
msgctxt "@action:ComboBox Update/override existing profile"
msgid "Update existing"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:62
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:63
msgctxt "@action:ComboBox Save settings in a new profile"
msgid "Create new"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:74
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:75
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:69
msgctxt "@action:title"
msgid "Summary - Cura Project"
msgstr "Összegzés - Cura Project"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:96
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:97
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:93
msgctxt "@action:label"
msgid "Printer settings"
msgstr "Nyomtató beállítások"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:112
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:113
msgctxt "@info:tooltip"
msgid "How should the conflict in the machine be resolved?"
msgstr "Hogyan lehet megoldani a gépet érintő konfliktust?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:165
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:167
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:102
msgctxt "@action:label"
msgid "Type"
msgstr "Típus"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:181
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:183
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:117
msgctxt "@action:label"
msgid "Printer Group"
msgstr "Nyomtató csoport"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:203
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:205
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:218
msgctxt "@action:label"
msgid "Profile settings"
msgstr "Profil beállítások"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:219
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:221
msgctxt "@info:tooltip"
msgid "How should the conflict in the profile be resolved?"
msgstr "Hogyan lehet megoldani a profilt érintő konfliktust?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:239
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:349
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:242
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:353
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:117
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:242
msgctxt "@action:label"
msgid "Name"
msgstr "Név"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:255
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:258
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:259
msgctxt "@action:label"
msgid "Intent"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:271
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:274
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:226
msgctxt "@action:label"
msgid "Not in profile"
msgstr "Nincs a profilban"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:276
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:279
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:231
msgctxt "@action:label"
msgid "%1 override"
@@ -1705,54 +1733,54 @@ msgid_plural "%1 overrides"
msgstr[0] "%1 felülírás"
msgstr[1] "%1 felülírás"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:287
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:290
msgctxt "@action:label"
msgid "Derivative from"
msgstr "Származék"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:292
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:295
msgctxt "@action:label"
msgid "%1, %2 override"
msgid_plural "%1, %2 overrides"
msgstr[0] "%1, %2 felülírás"
msgstr[1] "%1, %2 felülírás"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:309
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:312
msgctxt "@action:label"
msgid "Material settings"
msgstr "Alapanyag beállítások"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:325
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:328
msgctxt "@info:tooltip"
msgid "How should the conflict in the material be resolved?"
msgstr "Hogyan lehet megoldani az alapanyaggal kapcsolatos konfliktust?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:369
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:373
msgctxt "@action:label"
msgid "Setting visibility"
msgstr "Beállítások láthatósága"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:378
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:382
msgctxt "@action:label"
msgid "Mode"
msgstr "Mód"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:394
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:398
msgctxt "@action:label"
msgid "Visible settings:"
msgstr "Látható beállítások:"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:399
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:403
msgctxt "@action:label"
msgid "%1 out of %2"
msgstr "%1 %2 -ből"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:425
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:429
msgctxt "@action:warning"
msgid "Loading a project will clear all models on the build plate."
msgstr "A projekt betöltésekor minden modell törlődik a tárgyasztalról."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:453
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:457
msgctxt "@action:button"
msgid "Open"
msgstr "Megnyitás"
@@ -1854,8 +1882,8 @@ msgstr "A Cura beállítások biztonsági mentése és szinkronizálása."
#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/qml/pages/WelcomePage.qml:51
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/WelcomePage.qml:39
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:68
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:125
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:53
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:199
msgctxt "@button"
msgid "Sign in"
msgstr "Bejelentkezés"
@@ -2089,12 +2117,12 @@ msgctxt "@label"
msgid "Cooling Fan Number"
msgstr "Hűtőventilátorok száma"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:162
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:163
msgctxt "@title:label"
msgid "Extruder Start G-code"
msgstr "Extruder G-kód kezdés"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:176
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:177
msgctxt "@title:label"
msgid "Extruder End G-code"
msgstr "Extruder G-kód zárás"
@@ -2179,12 +2207,17 @@ msgctxt "@label"
msgid "Number of Extruders"
msgstr "Extruderek száma"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:374
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:345
+msgctxt "@label"
+msgid "Apply Extruder offsets to GCode"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:393
msgctxt "@title:label"
msgid "Start G-code"
msgstr "G-kód kezdés"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:385
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:404
msgctxt "@title:label"
msgid "End G-code"
msgstr "G-kód zárás"
@@ -2212,6 +2245,11 @@ msgctxt "@label link to technical assistance"
msgid "View user manuals online"
msgstr "Nézd meg az online felhasználói kézikönyvet"
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MonitorStage/MonitorMain.qml:172
+msgctxt "@info"
+msgid "In order to monitor your print from Cura, please connect the printer."
+msgstr ""
+
#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml:42
msgctxt "@label"
msgid "Mesh Type"
@@ -2258,7 +2296,7 @@ msgid "Select Settings to Customize for this model"
msgstr "A modellek egyéni beállításainak kiválasztása"
#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:55
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:94
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:96
msgctxt "@label:textbox"
msgid "Filter..."
msgstr "Szűrés..."
@@ -2268,32 +2306,32 @@ msgctxt "@label:checkbox"
msgid "Show all"
msgstr "Mindent mutat"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:18
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:20
msgctxt "@title:window"
msgid "Post Processing Plugin"
msgstr "Utó művelet beépülő"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:57
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:59
msgctxt "@label"
msgid "Post Processing Scripts"
msgstr "Utó művelet szkript"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:233
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:235
msgctxt "@action"
msgid "Add a script"
msgstr "Adjon hozzá egy szkriptet"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:279
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:282
msgctxt "@label"
msgid "Settings"
msgstr "Beállítások"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:499
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:502
msgctxt "@info:tooltip"
msgid "Change active post-processing scripts."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:503
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:506
msgctxt "@info:tooltip"
msgid "The following script is active:"
msgid_plural "The following scripts are active:"
@@ -2306,78 +2344,93 @@ msgctxt "@label"
msgid "Color scheme"
msgstr "Szín séma"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:107
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:110
msgctxt "@label:listbox"
msgid "Material Color"
msgstr "Alapanyag szín"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:111
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:114
msgctxt "@label:listbox"
msgid "Line Type"
msgstr "Vonal típus"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:115
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:118
msgctxt "@label:listbox"
msgid "Speed"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:119
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:122
msgctxt "@label:listbox"
-msgid "Layer thickness"
-msgstr "Réteg vastagság"
+msgid "Layer Thickness"
+msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:156
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:126
+msgctxt "@label:listbox"
+msgid "Line Width"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:130
+msgctxt "@label:listbox"
+msgid "Flow"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:171
msgctxt "@label"
msgid "Compatibility Mode"
msgstr "Kompatibilis mód"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:230
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:245
msgctxt "@label"
msgid "Travels"
msgstr "Átmozgás"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:236
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:251
msgctxt "@label"
msgid "Helpers"
msgstr "Segítők"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:242
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:257
msgctxt "@label"
msgid "Shell"
msgstr "Héj"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:248
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:263
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedInfillDensitySelector.qml:65
msgctxt "@label"
msgid "Infill"
msgstr "Kitöltés"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:298
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:271
+msgctxt "@label"
+msgid "Starts"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:322
msgctxt "@label"
msgid "Only Show Top Layers"
msgstr "Csak a felső rétegek megjelenítése"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:308
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:332
msgctxt "@label"
msgid "Show 5 Detailed Layers On Top"
msgstr "Mutasson 5 felső réteget részletesen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:322
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:346
msgctxt "@label"
msgid "Top / Bottom"
msgstr "Felső / Alsó"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:326
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:350
msgctxt "@label"
msgid "Inner Wall"
msgstr "Belső fal"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:384
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:419
msgctxt "@label"
msgid "min"
msgstr "min"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:433
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:488
msgctxt "@label"
msgid "max"
msgstr "max"
@@ -2518,7 +2571,7 @@ msgid "Plugins"
msgstr "Kiegészítők"
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxHeader.qml:44
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:466
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:457
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:89
msgctxt "@title:tab"
msgid "Materials"
@@ -2567,6 +2620,7 @@ msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/dialogs/CompatibilityDialog.qml:23
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:123
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/FirstStartMachineActionsContent.qml:77
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:178
msgctxt "@button"
msgid "Next"
msgstr "Következő"
@@ -2910,7 +2964,7 @@ msgid "Delete"
msgstr "Törlés"
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:100
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:289
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:290
msgctxt "@label"
msgid "Resume"
msgstr "Folytat"
@@ -2926,8 +2980,8 @@ msgid "Resuming..."
msgstr "Folytatás..."
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:106
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:284
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:293
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:285
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:294
msgctxt "@label"
msgid "Pause"
msgstr "Várakozás"
@@ -2968,7 +3022,7 @@ msgid "Are you sure you want to abort %1?"
msgstr "Biztosan meg akarod szakítani %1?"
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:164
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:335
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:336
msgctxt "@window:title"
msgid "Abort print"
msgstr "Nyomtatás megszakítás"
@@ -2979,7 +3033,7 @@ msgid "Manage printer"
msgstr "Nyomtató kezelés"
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:254
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:519
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:523
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:250
msgctxt "@info"
msgid "Please update your printer's firmware to manage the queue remotely."
@@ -3005,27 +3059,34 @@ msgctxt "@label:status"
msgid "Idle"
msgstr "Készenlét"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:365
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:364
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:84
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:86
+msgctxt "@label:status"
+msgid "Preparing..."
+msgstr "Előkészítés..."
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:369
msgctxt "@label:status"
msgid "Printing"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:406
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:410
msgctxt "@label"
msgid "Untitled"
msgstr "Felirat nélküli"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:427
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:431
msgctxt "@label"
msgid "Anonymous"
msgstr "Névtelen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:454
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:458
msgctxt "@label:status"
msgid "Requires configuration changes"
msgstr "A konfiguráció változtatásokat igényel"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:492
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:496
msgctxt "@action:button"
msgid "Details"
msgstr "Részletek"
@@ -3052,12 +3113,6 @@ msgctxt "@label:status"
msgid "Finished"
msgstr "Befejezve"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:84
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:86
-msgctxt "@label:status"
-msgid "Preparing..."
-msgstr "Előkészítés..."
-
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:88
msgctxt "@label:status"
msgid "Aborting..."
@@ -3138,24 +3193,24 @@ msgctxt "@action:button"
msgid "Sign in"
msgstr "Bejelentkezés"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:40
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:20
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:64
msgctxt "@label"
-msgid "Your key to connected 3D printing"
+msgid "Sign in to the Ultimaker platform"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:51
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:42
msgctxt "@text"
msgid ""
-"- Customize your experience with more print profiles and plugins\n"
-"- Stay flexible by syncing your setup and loading it anywhere\n"
-"- Increase efficiency with a remote workflow on Ultimaker printers"
+"- Add material profiles and plug-ins from the Marketplace\n"
+"- Back-up and sync your material profiles and plug-ins\n"
+"- Share ideas and get help from 48,000+ users in the Ultimaker community"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:78
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:142
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:62
msgctxt "@button"
-msgid "Create account"
-msgstr "Fiók létrehozása"
+msgid "Create a free Ultimaker account"
+msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/SyncState.qml:28
msgctxt "@label"
@@ -3262,309 +3317,308 @@ msgctxt "@button"
msgid "Cancel"
msgstr "Elvet"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:82
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:83
msgctxt "@action:inmenu"
msgid "Show Online Troubleshooting Guide"
msgstr "Mutassa az online hibaelhárítási útmutatót"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:89
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:90
msgctxt "@action:inmenu"
msgid "Toggle Full Screen"
msgstr "Teljes képernyőre váltás"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:97
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:98
msgctxt "@action:inmenu"
msgid "Exit Full Screen"
msgstr "Kilépés a teljes képernyőn"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:104
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:105
msgctxt "@action:inmenu menubar:edit"
msgid "&Undo"
msgstr "&Visszavon"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:114
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:115
msgctxt "@action:inmenu menubar:edit"
msgid "&Redo"
msgstr "&Újra"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:124
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:125
msgctxt "@action:inmenu menubar:file"
msgid "&Quit"
msgstr "Kilép"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:132
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:133
msgctxt "@action:inmenu menubar:view"
msgid "3D View"
msgstr "3D nézet"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:139
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:140
msgctxt "@action:inmenu menubar:view"
msgid "Front View"
msgstr "Előlnézet"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:146
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:147
msgctxt "@action:inmenu menubar:view"
msgid "Top View"
msgstr "Felülnézet"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:153
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:154
+msgctxt "@action:inmenu menubar:view"
+msgid "Bottom View"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:161
msgctxt "@action:inmenu menubar:view"
msgid "Left Side View"
msgstr "Bal oldalnézet"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:160
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:168
msgctxt "@action:inmenu menubar:view"
msgid "Right Side View"
msgstr "Jobb oldalnézet"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:167
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:175
msgctxt "@action:inmenu"
msgid "Configure Cura..."
msgstr "Cura beállítása..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:174
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:182
msgctxt "@action:inmenu menubar:printer"
msgid "&Add Printer..."
msgstr "&Nyomtató hozzáadása..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:180
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:188
msgctxt "@action:inmenu menubar:printer"
msgid "Manage Pr&inters..."
msgstr "Nyomtatók kezelése..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:187
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:195
msgctxt "@action:inmenu"
msgid "Manage Materials..."
msgstr "Anyagok kezelése..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:195
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:203
msgctxt "@action:inmenu"
msgid "Add more materials from Marketplace"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:202
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:210
msgctxt "@action:inmenu menubar:profile"
msgid "&Update profile with current settings/overrides"
msgstr "Profil &frissítése a jelenlegi beállításokkal/felülírásokkal"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:210
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:218
msgctxt "@action:inmenu menubar:profile"
msgid "&Discard current changes"
msgstr "&Jelenlegi változtatások eldobása"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:222
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:230
msgctxt "@action:inmenu menubar:profile"
msgid "&Create profile from current settings/overrides..."
msgstr "Profil &létrehozása a jelenlegi beállításokkal/felülírásokkal..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:228
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:236
msgctxt "@action:inmenu menubar:profile"
msgid "Manage Profiles..."
msgstr "Profilok kezelése..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:236
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:244
msgctxt "@action:inmenu menubar:help"
msgid "Show Online &Documentation"
msgstr "Online &Dokumentumok megjelenítése"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:244
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:252
msgctxt "@action:inmenu menubar:help"
msgid "Report a &Bug"
msgstr "Hibajelentés"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:252
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:260
msgctxt "@action:inmenu menubar:help"
msgid "What's New"
msgstr "Újdonságok"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:258
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:266
msgctxt "@action:inmenu menubar:help"
msgid "About..."
msgstr "Rólunk..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:265
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:273
msgctxt "@action:inmenu menubar:edit"
-msgid "Delete Selected Model"
-msgid_plural "Delete Selected Models"
-msgstr[0] "Kiválasztott modell törlése"
-msgstr[1] "Kiválasztott modellek törlése"
+msgid "Delete Selected"
+msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:275
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:283
msgctxt "@action:inmenu menubar:edit"
-msgid "Center Selected Model"
-msgid_plural "Center Selected Models"
-msgstr[0] "A kijelölt modellt középre"
-msgstr[1] "A kijelölt modelleket középre"
+msgid "Center Selected"
+msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:284
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:292
msgctxt "@action:inmenu menubar:edit"
-msgid "Multiply Selected Model"
-msgid_plural "Multiply Selected Models"
-msgstr[0] "A kijelölt modell többszörözése"
-msgstr[1] "A kijelölt modellek többszörözése"
+msgid "Multiply Selected"
+msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:293
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:301
msgctxt "@action:inmenu"
msgid "Delete Model"
msgstr "Modell törlés"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:301
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:309
msgctxt "@action:inmenu"
msgid "Ce&nter Model on Platform"
msgstr "&Középső modell a platformon"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:307
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:315
msgctxt "@action:inmenu menubar:edit"
msgid "&Group Models"
msgstr "&Csoportosítás"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:327
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:335
msgctxt "@action:inmenu menubar:edit"
msgid "Ungroup Models"
msgstr "Csoport bontása"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:337
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:345
msgctxt "@action:inmenu menubar:edit"
msgid "&Merge Models"
msgstr "&Modellek keverése"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:347
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:355
msgctxt "@action:inmenu"
msgid "&Multiply Model..."
msgstr "&Modell többszörözés..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:354
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:362
msgctxt "@action:inmenu menubar:edit"
msgid "Select All Models"
msgstr "Mindent kijelöl"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:364
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:372
msgctxt "@action:inmenu menubar:edit"
msgid "Clear Build Plate"
msgstr "Tárgyasztal törlése"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:374
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:382
msgctxt "@action:inmenu menubar:file"
msgid "Reload All Models"
msgstr "Mindent újratölt"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:383
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:391
msgctxt "@action:inmenu menubar:edit"
msgid "Arrange All Models To All Build Plates"
msgstr "Minden modell elrendezése a tárgyasztalon"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:390
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:398
msgctxt "@action:inmenu menubar:edit"
msgid "Arrange All Models"
msgstr "Minden modell rendezése"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:398
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:406
msgctxt "@action:inmenu menubar:edit"
msgid "Arrange Selection"
msgstr "Kijelöltek rendezése"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:405
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:413
msgctxt "@action:inmenu menubar:edit"
msgid "Reset All Model Positions"
msgstr "Minden modellpozíció visszaállítása"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:412
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:420
msgctxt "@action:inmenu menubar:edit"
msgid "Reset All Model Transformations"
msgstr "Minden modelltranszformáció visszaállítása"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:419
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:429
msgctxt "@action:inmenu menubar:file"
msgid "&Open File(s)..."
msgstr "Fájl(ok) megnyitása..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:427
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:439
msgctxt "@action:inmenu menubar:file"
msgid "&New Project..."
msgstr "Új projekt..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:434
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:446
msgctxt "@action:inmenu menubar:help"
msgid "Show Configuration Folder"
msgstr "Konfigurációs mappa megjelenítése"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:441
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:538
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:453
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:550
msgctxt "@action:menu"
msgid "Configure setting visibility..."
msgstr "Beállítások láthatóságának beállítása..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:448
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:460
msgctxt "@action:menu"
msgid "&Marketplace"
msgstr "&Piactér"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:266
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:257
msgctxt "@label"
msgid "This package will be installed after restarting."
msgstr "Ez a csomag újraindítás után fog települni."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:459
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:15
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:450
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:17
msgctxt "@title:tab"
msgid "General"
msgstr "Általános"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:462
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:453
msgctxt "@title:tab"
msgid "Settings"
msgstr "Beállítások"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:464
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:455
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:16
msgctxt "@title:tab"
msgid "Printers"
msgstr "Nyomtatók"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:468
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:459
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:34
msgctxt "@title:tab"
msgid "Profiles"
msgstr "Profilok"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:587
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:576
msgctxt "@title:window %1 is the application name"
msgid "Closing %1"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:588
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:600
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:577
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:589
msgctxt "@label %1 is the application name"
msgid "Are you sure you want to exit %1?"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:638
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:627
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:19
msgctxt "@title:window"
msgid "Open file(s)"
msgstr "Fájl(ok) megnyitása"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:744
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:737
msgctxt "@window:title"
msgid "Install Package"
msgstr "Csomag telepítése"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:752
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:745
msgctxt "@title:window"
msgid "Open File(s)"
msgstr "Fájl(ok) megnyitása"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:755
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:748
msgctxt "@text:window"
msgid "We have found one or more G-Code files within the files you have selected. You can only open one G-Code file at a time. If you want to open a G-Code file, please just select only one."
msgstr "A kiválasztott fájlok között több G-kód fájl is található.Egyszerre csak egy G-kód fájlt nyithat meg, ezért csak egy ilyen fájlt válasszon ki."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:858
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:857
msgctxt "@title:window"
msgid "Add Printer"
msgstr "Nyomtató hozzáadása"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:866
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:865
msgctxt "@title:window"
msgid "What's New"
msgstr "Újdonságok"
@@ -3712,17 +3766,27 @@ msgctxt "@label"
msgid "Python bindings for libnest2d"
msgstr ""
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:161
+msgctxt "@label"
+msgid "Support library for system keyring access"
+msgstr ""
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:162
msgctxt "@label"
+msgid "Python extensions for Microsoft Windows"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:163
+msgctxt "@label"
msgid "Font"
msgstr "Betűtípus"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:163
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:164
msgctxt "@label"
msgid "SVG icons"
msgstr "SVG ikonok"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:164
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:165
msgctxt "@label"
msgid "Linux cross-distribution application deployment"
msgstr "Linux kereszt-disztribúciós alkalmazás telepítése"
@@ -3732,22 +3796,22 @@ msgctxt "@title:window"
msgid "Open project file"
msgstr "Projekt fájl megnyitása"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:93
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:88
msgctxt "@text:window"
msgid "This is a Cura project file. Would you like to open it as a project or import the models from it?"
msgstr "Ez egy Cura projekt fájl. Szeretné projektként megnyitni, vagy importálni a modelleket?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:103
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:98
msgctxt "@text:window"
msgid "Remember my choice"
msgstr "Emlékezzen a választásra"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:122
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:117
msgctxt "@action:button"
msgid "Open as project"
msgstr "Megnyitás projektként"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:131
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:126
msgctxt "@action:button"
msgid "Import models"
msgstr "Modellek importálása"
@@ -3776,7 +3840,7 @@ msgid "Current changes"
msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:158
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:747
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:733
msgctxt "@option:discardOrKeep"
msgid "Always ask me this"
msgstr "Mindig kérdezz"
@@ -3801,12 +3865,12 @@ msgctxt "@action:button"
msgid "Keep changes"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:64
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:59
msgctxt "@text:window"
msgid "We have found one or more project file(s) within the files you have selected. You can open only one project file at a time. We suggest to only import models from those files. Would you like to proceed?"
msgstr "Egy vagy több projekt fájlt találtunk a kiválasztott fájlokban.Egyszerre csak egy projekt fájlt nyithat meg. Javasoljuk, hogy csak a modelleket importálja ezekből a fájlokból. Szeretné folytatni?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:99
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:94
msgctxt "@action:button"
msgid "Import all as models"
msgstr "Importáljunk mindent modellekként"
@@ -3961,7 +4025,7 @@ msgctxt "@label"
msgid "Material"
msgstr "Alapanyag"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/CustomConfiguration.qml:394
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/CustomConfiguration.qml:407
msgctxt "@label"
msgid "Use glue for better adhesion with this material combination."
msgstr "Használj ragasztót a jobb tapadás érdekében, ennél az alapanyag kombinációnál."
@@ -3985,17 +4049,17 @@ msgctxt "@label"
msgid "Number of Copies"
msgstr "Másolatok száma"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:33
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:41
msgctxt "@title:menu menubar:file"
msgid "&Save Project..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:54
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:74
msgctxt "@title:menu menubar:file"
msgid "&Export..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:65
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:85
msgctxt "@action:inmenu menubar:file"
msgid "Export Selection..."
msgstr "Kiválasztás exportálása..."
@@ -4015,6 +4079,11 @@ msgctxt "@label:category menu label"
msgid "Generic"
msgstr "Generikus"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/OpenFilesMenu.qml:15
+msgctxt "@title:menu menubar:file"
+msgid "Open File(s)..."
+msgstr ""
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/PrinterMenu.qml:25
msgctxt "@label:category menu label"
msgid "Network enabled printers"
@@ -4030,6 +4099,11 @@ msgctxt "@title:menu menubar:file"
msgid "Open &Recent"
msgstr "Legutóbbi fájlok"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SaveProjectMenu.qml:15
+msgctxt "@title:menu menubar:file"
+msgid "Save Project..."
+msgstr ""
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingsMenu.qml:15
msgctxt "@title:menu menubar:settings"
msgid "&Printer"
@@ -4055,17 +4129,17 @@ msgctxt "@action:inmenu"
msgid "Disable Extruder"
msgstr "Extruder letiltása"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:13
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:16
msgctxt "@action:inmenu"
msgid "Visible Settings"
msgstr "Láthatósági beállítások"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:42
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:45
msgctxt "@action:inmenu"
msgid "Collapse All Categories"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:51
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:54
msgctxt "@action:inmenu"
msgid "Manage Setting Visibility..."
msgstr "Beállítások láthatóságának kezelése..."
@@ -4075,22 +4149,22 @@ msgctxt "@action:inmenu menubar:view"
msgid "&Camera position"
msgstr "&Kamera helyzet"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:44
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:45
msgctxt "@action:inmenu menubar:view"
msgid "Camera view"
msgstr "Kamera nézet"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:47
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:48
msgctxt "@action:inmenu menubar:view"
msgid "Perspective"
msgstr "Perspektívikus"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:59
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:60
msgctxt "@action:inmenu menubar:view"
msgid "Orthographic"
msgstr "Merőleges"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:80
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:81
msgctxt "@action:inmenu menubar:view"
msgid "&Build plate"
msgstr "&Tárgyasztal"
@@ -4135,12 +4209,12 @@ msgctxt "@label:MonitorStatus"
msgid "Please remove the print"
msgstr "Távolítsa el a tárgyat"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:325
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:326
msgctxt "@label"
msgid "Abort Print"
msgstr "Nyomtatás megszakítás"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:337
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:338
msgctxt "@label"
msgid "Are you sure you want to abort the print?"
msgstr "Biztosan meg akarod szakítani a nyomtatást?"
@@ -4182,301 +4256,301 @@ msgctxt "@label"
msgid "Interface"
msgstr "Interfész"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:216
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:209
msgctxt "@label"
msgid "Currency:"
msgstr "Pénznem:"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:229
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:222
msgctxt "@label"
msgid "Theme:"
msgstr "Téma:"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:285
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:267
msgctxt "@label"
msgid "You will need to restart the application for these changes to have effect."
msgstr "A módosítások érvénybe lépéséhez újra kell indítania az alkalmazást."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:302
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:284
msgctxt "@info:tooltip"
msgid "Slice automatically when changing settings."
msgstr "Automatikus újraszeletelés, ha a beállítások megváltoznak."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:310
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:292
msgctxt "@option:check"
msgid "Slice automatically"
msgstr "Automatikus szeletelés"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:324
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:306
msgctxt "@label"
msgid "Viewport behavior"
msgstr "A nézetablak viselkedése"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:332
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:314
msgctxt "@info:tooltip"
msgid "Highlight unsupported areas of the model in red. Without support these areas will not print properly."
msgstr "Jelölje meg pirossal azokat a területeket, amiket szükséges alátámasztani.Ha ezeket a részeket nem támasztjuk alá, a nyomtatás nem lesz hibátlan."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:341
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:323
msgctxt "@option:check"
msgid "Display overhang"
msgstr "Túlnyúlás kijelzése"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:351
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:333
msgctxt "@info:tooltip"
msgid "Highlight missing or extraneous surfaces of the model using warning signs. The toolpaths will often be missing parts of the intended geometry."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:360
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:342
msgctxt "@option:check"
msgid "Display model errors"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:368
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:350
msgctxt "@info:tooltip"
msgid "Moves the camera so the model is in the center of the view when a model is selected"
msgstr "A kamerát úgy mozgatja, hogy a modell kiválasztásakor, az a nézet középpontjában legyen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:373
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:355
msgctxt "@action:button"
msgid "Center camera when item is selected"
msgstr "Kamera középre, mikor az elem ki van választva"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:383
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:365
msgctxt "@info:tooltip"
msgid "Should the default zoom behavior of cura be inverted?"
msgstr "Megfordítsuk-e az alapértelmezett Zoom viselkedését?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:388
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:370
msgctxt "@action:button"
msgid "Invert the direction of camera zoom."
msgstr "Fordítsa meg a kamera zoom irányát."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:404
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:386
msgctxt "@info:tooltip"
msgid "Should zooming move in the direction of the mouse?"
msgstr "A nagyítás az egér mozgatásának irányában mozogjon?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:404
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:386
msgctxt "@info:tooltip"
msgid "Zooming towards the mouse is not supported in the orthographic perspective."
msgstr "Az egér felé történő nagyítás ortográfiai szempontból nem támogatott."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:409
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:391
msgctxt "@action:button"
msgid "Zoom toward mouse direction"
msgstr "Nagyítás az egér mozgás irányában"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:435
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:417
msgctxt "@info:tooltip"
msgid "Should models on the platform be moved so that they no longer intersect?"
msgstr "Az alapsíkon lévő modelleket elmozgassuk úgy, hogy ne keresztezzék egymást?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:440
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:422
msgctxt "@option:check"
msgid "Ensure models are kept apart"
msgstr "A modellek egymástól való távtartásának biztosítása"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:449
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:431
msgctxt "@info:tooltip"
msgid "Should models on the platform be moved down to touch the build plate?"
msgstr "A modelleket mozgatni kell lefelé, hogy érintsék a tárgyasztalt?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:454
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:436
msgctxt "@option:check"
msgid "Automatically drop models to the build plate"
msgstr "Modellek automatikus tárgyasztalra illesztése"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:466
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:448
msgctxt "@info:tooltip"
msgid "Show caution message in g-code reader."
msgstr "Figyelmeztető üzenet megjelenítése g-kód olvasóban."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:475
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:457
msgctxt "@option:check"
msgid "Caution message in g-code reader"
msgstr "Figyelmeztető üzenet a g-code olvasóban"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:483
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:465
msgctxt "@info:tooltip"
msgid "Should layer be forced into compatibility mode?"
msgstr "Kényszerítsük a réteget kompatibilitási módba ?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:488
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:470
msgctxt "@option:check"
msgid "Force layer view compatibility mode (restart required)"
msgstr "A rétegnézet kompatibilis módjának kényszerítése (újraindítás szükséges)"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:498
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:480
msgctxt "@info:tooltip"
msgid "Should Cura open at the location it was closed?"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:503
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:485
msgctxt "@option:check"
msgid "Restore window position on start"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:513
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:495
msgctxt "@info:tooltip"
msgid "What type of camera rendering should be used?"
msgstr "Milyen fípusú fényképezőgépet használunk?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:520
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:502
msgctxt "@window:text"
msgid "Camera rendering:"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:531
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:509
msgid "Perspective"
msgstr "Perspetívikus"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:532
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:510
msgid "Orthographic"
msgstr "Merőleges"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:563
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:548
msgctxt "@label"
msgid "Opening and saving files"
msgstr "Fájlok megnyitása és mentése"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:570
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:555
msgctxt "@info:tooltip"
msgid "Should opening files from the desktop or external applications open in the same instance of Cura?"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:575
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:560
msgctxt "@option:check"
msgid "Use a single instance of Cura"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:585
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:570
msgctxt "@info:tooltip"
msgid "Should models be scaled to the build volume if they are too large?"
msgstr "A modelleket átméretezzük a maximális építési méretre, ha azok túl nagyok?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:590
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:575
msgctxt "@option:check"
msgid "Scale large models"
msgstr "Nagy modellek átméretezése"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:600
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:585
msgctxt "@info:tooltip"
msgid "An model may appear extremely small if its unit is for example in meters rather than millimeters. Should these models be scaled up?"
msgstr "Egy adott modell rendkívül kicsinek tűnhet, ha mértékegysége például méterben van, nem pedig milliméterben. Ezeket a modelleket átméretezzük?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:605
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:590
msgctxt "@option:check"
msgid "Scale extremely small models"
msgstr "Extrém kicsi modellek átméretezése"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:615
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:600
msgctxt "@info:tooltip"
msgid "Should models be selected after they are loaded?"
msgstr "Betöltés után a modellek legyenek kiválasztva?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:620
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:605
msgctxt "@option:check"
msgid "Select models when loaded"
msgstr "Modell kiválasztása betöltés után"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:630
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:615
msgctxt "@info:tooltip"
msgid "Should a prefix based on the printer name be added to the print job name automatically?"
msgstr "A nyomtató nevét, mint előtagot, hozzáadjuk a nyomtatási feladat nevéhez?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:635
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:620
msgctxt "@option:check"
msgid "Add machine prefix to job name"
msgstr "Gépnév előtagként a feladatnévben"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:645
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:630
msgctxt "@info:tooltip"
msgid "Should a summary be shown when saving a project file?"
msgstr "Mutassuk az összegzést a projekt mentésekor?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:649
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:634
msgctxt "@option:check"
msgid "Show summary dialog when saving project"
msgstr "Összegzés megjelenítése projekt mentésekor"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:659
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:644
msgctxt "@info:tooltip"
msgid "Default behavior when opening a project file"
msgstr "Alapértelmezett viselkedés a projektfájl megnyitásakor"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:667
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:652
msgctxt "@window:text"
msgid "Default behavior when opening a project file: "
msgstr "Alapértelmezett viselkedés a projektfájl megnyitásakor: "
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:681
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:666
msgctxt "@option:openProject"
msgid "Always ask me this"
msgstr "Mindig kérdezz"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:682
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:667
msgctxt "@option:openProject"
msgid "Always open as a project"
msgstr "Projektként való megnyitás"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:683
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:668
msgctxt "@option:openProject"
msgid "Always import models"
msgstr "Importálja a modelleket"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:719
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:705
msgctxt "@info:tooltip"
msgid "When you have made changes to a profile and switched to a different one, a dialog will be shown asking whether you want to keep your modifications or not, or you can choose a default behaviour and never show that dialog again."
msgstr "Ha módosított egy profilt, és váltott egy másikra, akkor megjelenik egy párbeszédpanel, amelyben megkérdezi, hogy meg kívánja-e tartani a módosításokat, vagy nem. Vagy választhat egy alapértelmezett viselkedést, és soha többé nem jeleníti meg ezt a párbeszédablakot."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:728
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:714
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedQualityProfileSelector.qml:52
msgctxt "@label"
msgid "Profiles"
msgstr "Profilok"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:733
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:719
msgctxt "@window:text"
msgid "Default behavior for changed setting values when switching to a different profile: "
msgstr "Alapértelmezett viselkedés a megváltozott beállítási értékeknél, ha másik profilra vált: "
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:748
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:734
msgctxt "@option:discardOrKeep"
msgid "Always discard changed settings"
msgstr "Megváltozott beállítások elvetése"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:749
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:735
msgctxt "@option:discardOrKeep"
msgid "Always transfer changed settings to new profile"
msgstr "Megváltozott beállítások alkalmazása az új profilba"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:783
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:770
msgctxt "@label"
msgid "Privacy"
msgstr "Magán"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:790
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:777
msgctxt "@info:tooltip"
msgid "Should Cura check for updates when the program is started?"
msgstr "A Cura-nak ellenőriznie kell-e a frissítéseket a program indításakor?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:795
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:782
msgctxt "@option:check"
msgid "Check for updates on start"
msgstr "Keressen frissítéseket az induláskor"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:805
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:792
msgctxt "@info:tooltip"
msgid "Should anonymous data about your print be sent to Ultimaker? Note, no models, IP addresses or other personally identifiable information is sent or stored."
msgstr "Elküldjük a nyomtatott adatokat név nélkül az Ultimaker-nek?Semmilyen személyes infromáció, IP cím vagy azonosító nem kerül elküldésre."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:810
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:797
msgctxt "@option:check"
msgid "Send (anonymous) print information"
msgstr "Név nélküli információ küldés"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:819
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:806
msgctxt "@action:button"
msgid "More information"
msgstr "Több információ"
@@ -4516,55 +4590,65 @@ msgctxt "@action:button"
msgid "Export"
msgstr "Export"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:234
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:199
+msgctxt "@action:button Sending materials to printers"
+msgid "Sync with Printers"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:248
msgctxt "@action:label"
msgid "Printer"
msgstr "Nyomtató"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:298
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:274
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:312
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:277
msgctxt "@title:window"
msgid "Confirm Remove"
msgstr "Eltávolítás megerősítése"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:301
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:275
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:315
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:278
msgctxt "@label (%1 is object name)"
msgid "Are you sure you wish to remove %1? This cannot be undone!"
msgstr "Biztosan el akarod távolítani %1 -et? Ez nem vonható vissza!"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:315
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:323
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:329
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:337
msgctxt "@title:window"
msgid "Import Material"
msgstr "Alapanyag importálás"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:324
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:338
msgctxt "@info:status Don't translate the XML tags or !"
msgid "Could not import material %1: %2"
msgstr "Nem sikerült importálni az alapanyagot %1: %2"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:328
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:342
msgctxt "@info:status Don't translate the XML tag !"
msgid "Successfully imported material %1"
msgstr "Sikeres alapanyag import %1"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:346
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:354
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:360
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:368
msgctxt "@title:window"
msgid "Export Material"
msgstr "Alapanyag export"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:358
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:372
msgctxt "@info:status Don't translate the XML tags and !"
msgid "Failed to export material to %1: %2"
msgstr "Sikertelen alapanyag export %1: %2"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:364
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:378
msgctxt "@info:status Don't translate the XML tag !"
msgid "Successfully exported material to %1"
msgstr "Sikeres alapanyag export %1 -ba"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:388
+msgctxt "@title:window"
+msgid "Export All Materials"
+msgstr ""
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:72
msgctxt "@title"
msgid "Information"
@@ -4676,53 +4760,53 @@ msgctxt "@info"
msgid "Please provide a name for this profile."
msgstr "Adjon nevet ehhez a profilhoz."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:260
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:263
msgctxt "@title:window"
msgid "Duplicate Profile"
msgstr "Profil másolása"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:291
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:294
msgctxt "@title:window"
msgid "Rename Profile"
msgstr "Profil átnevezés"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:304
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:307
msgctxt "@title:window"
msgid "Import Profile"
msgstr "Profil importálás"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:333
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:336
msgctxt "@title:window"
msgid "Export Profile"
msgstr "Profil exportálás"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:396
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:399
msgctxt "@label %1 is printer name"
msgid "Printer: %1"
msgstr "Nyomtató: %1"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:554
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:557
msgctxt "@action:button"
msgid "Update profile with current settings/overrides"
msgstr "Frissítse a profilt az aktuális beállításokkal/felülbírálásokkal"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:561
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:564
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Custom/QualitiesWithIntentMenu.qml:244
msgctxt "@action:button"
msgid "Discard current changes"
msgstr "A jelenlegi változások elvetése"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:580
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:583
msgctxt "@action:label"
msgid "This profile uses the defaults specified by the printer, so it has no settings/overrides in the list below."
msgstr "Ez a profil a nyomtató által megadott alapértelmezéseket használja, tehát az alábbi listában nincs egyetlen beállítás módosítás sem."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:588
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:591
msgctxt "@action:label"
msgid "Your current settings match the selected profile."
msgstr "Az Ön aktuális beállításai megegyeznek a kiválasztott profillal."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:606
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:609
msgctxt "@title:tab"
msgid "Global Settings"
msgstr "Általános beállítások"
@@ -4752,12 +4836,12 @@ msgctxt "@title:column"
msgid "Unit"
msgstr "Egység"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:14
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:16
msgctxt "@title:tab"
msgid "Setting Visibility"
msgstr "Láthatóság beállítása"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:46
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:48
msgctxt "@label:textbox"
msgid "Check all"
msgstr "Mindent ellenőrizni"
@@ -5095,27 +5179,27 @@ msgctxt "@label:textbox"
msgid "Search settings"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:456
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:468
msgctxt "@action:menu"
msgid "Copy value to all extruders"
msgstr "Értékek másolása minden extruderre"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:465
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:477
msgctxt "@action:menu"
msgid "Copy all changed values to all extruders"
msgstr "Minden változott érték másolása minden extruderre"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:502
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:514
msgctxt "@action:menu"
msgid "Hide this setting"
msgstr "Beállítás elrejtése"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:515
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:527
msgctxt "@action:menu"
msgid "Don't show this setting"
msgstr "Ne jelenítsd meg ezt a beállítást"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:519
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:531
msgctxt "@action:menu"
msgid "Keep this setting visible"
msgstr "Beállítás látható marad"
@@ -5175,11 +5259,6 @@ msgctxt "@button"
msgid "Add printer manually"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddCloudPrintersView.qml:218
-msgctxt "@button"
-msgid "Finish"
-msgstr "Befejezés"
-
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddLocalPrinterScrollView.qml:230
msgctxt "@label"
msgid "Manufacturer"
@@ -5286,32 +5365,32 @@ msgctxt "@button"
msgid "Connect"
msgstr "Csatlakozás"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:43
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/ChangelogContent.qml:24
msgctxt "@label"
-msgid "Ultimaker Account"
+msgid "Release Notes"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:84
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:124
msgctxt "@text"
-msgid "Your key to connected 3D printing"
+msgid "Add material settings and plugins from the Marketplace"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:101
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:154
msgctxt "@text"
-msgid "- Customize your experience with more print profiles and plugins"
+msgid "Backup and sync your material settings and plugins"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:104
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:184
msgctxt "@text"
-msgid "- Stay flexible by syncing your setup and loading it anywhere"
+msgid "Share ideas and get help from 48,000+ users in the Ultimaker Community"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:107
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:217
msgctxt "@text"
-msgid "- Increase efficiency with a remote workflow on Ultimaker printers"
+msgid "Create a free Ultimaker Account"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:157
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:230
msgctxt "@button"
msgid "Skip"
msgstr ""
@@ -5371,29 +5450,30 @@ msgctxt "@button"
msgid "Decline and close"
msgstr "Elutasítás és bezárás"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:29
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:56
msgctxt "@label"
msgid "Welcome to Ultimaker Cura"
msgstr "Üdvözöljük az Ultimaker Cura-ban"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:47
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:68
msgctxt "@text"
-msgid ""
-"Please follow these steps to set up\n"
-"Ultimaker Cura. This will only take a few moments."
+msgid "Please follow these steps to set up Ultimaker Cura. This will only take a few moments."
msgstr ""
-"Kéjük, kövesd a következő lépéseket\n"
-"az Ultimaker Cura beállításához. Pár pillanat az egész."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:58
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:86
msgctxt "@button"
msgid "Get started"
msgstr "Kezdj hozzá"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:24
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:28
msgctxt "@label"
-msgid "What's new in Ultimaker Cura"
-msgstr "Újdonságok az Ultimaker Cura-ban"
+msgid "What's New"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Widgets/ComboBox.qml:24
+msgctxt "@label"
+msgid "No items to select from"
+msgstr ""
#: ModelChecker/plugin.json
msgctxt "description"
@@ -5475,6 +5555,16 @@ msgctxt "name"
msgid "Cura Profile Writer"
msgstr "Cura profil író"
+#: DigitalLibrary/plugin.json
+msgctxt "description"
+msgid "Connects to the Digital Library, allowing Cura to open files from and save files to the Digital Library."
+msgstr ""
+
+#: DigitalLibrary/plugin.json
+msgctxt "name"
+msgid "Ultimaker Digital Library"
+msgstr ""
+
#: FirmwareUpdateChecker/plugin.json
msgctxt "description"
msgid "Checks for firmware updates."
@@ -5945,6 +6035,26 @@ msgctxt "name"
msgid "Version Upgrade 4.7 to 4.8"
msgstr ""
+#: VersionUpgrade/VersionUpgrade48to49/plugin.json
+msgctxt "description"
+msgid "Upgrades configurations from Cura 4.8 to Cura 4.9."
+msgstr ""
+
+#: VersionUpgrade/VersionUpgrade48to49/plugin.json
+msgctxt "name"
+msgid "Version Upgrade 4.8 to 4.9"
+msgstr ""
+
+#: VersionUpgrade/VersionUpgrade49to410/plugin.json
+msgctxt "description"
+msgid "Upgrades configurations from Cura 4.9 to Cura 4.10."
+msgstr ""
+
+#: VersionUpgrade/VersionUpgrade49to410/plugin.json
+msgctxt "name"
+msgid "Version Upgrade 4.9 to 4.10"
+msgstr ""
+
#: X3DReader/plugin.json
msgctxt "description"
msgid "Provides support for reading X3D files."
@@ -5975,6 +6085,48 @@ msgctxt "name"
msgid "X-Ray View"
msgstr "Röntgen nézet"
+#~ msgctxt "@label:listbox"
+#~ msgid "Layer thickness"
+#~ msgstr "Réteg vastagság"
+
+#~ msgctxt "@button"
+#~ msgid "Create account"
+#~ msgstr "Fiók létrehozása"
+
+#~ msgctxt "@action:inmenu menubar:edit"
+#~ msgid "Delete Selected Model"
+#~ msgid_plural "Delete Selected Models"
+#~ msgstr[0] "Kiválasztott modell törlése"
+#~ msgstr[1] "Kiválasztott modellek törlése"
+
+#~ msgctxt "@action:inmenu menubar:edit"
+#~ msgid "Center Selected Model"
+#~ msgid_plural "Center Selected Models"
+#~ msgstr[0] "A kijelölt modellt középre"
+#~ msgstr[1] "A kijelölt modelleket középre"
+
+#~ msgctxt "@action:inmenu menubar:edit"
+#~ msgid "Multiply Selected Model"
+#~ msgid_plural "Multiply Selected Models"
+#~ msgstr[0] "A kijelölt modell többszörözése"
+#~ msgstr[1] "A kijelölt modellek többszörözése"
+
+#~ msgctxt "@button"
+#~ msgid "Finish"
+#~ msgstr "Befejezés"
+
+#~ msgctxt "@text"
+#~ msgid ""
+#~ "Please follow these steps to set up\n"
+#~ "Ultimaker Cura. This will only take a few moments."
+#~ msgstr ""
+#~ "Kéjük, kövesd a következő lépéseket\n"
+#~ "az Ultimaker Cura beállításához. Pár pillanat az egész."
+
+#~ msgctxt "@label"
+#~ msgid "What's new in Ultimaker Cura"
+#~ msgstr "Újdonságok az Ultimaker Cura-ban"
+
#~ msgctxt "@info:status"
#~ msgid "The selected model was too small to load."
#~ msgstr "A kiválasztott tárgy túl kicsi volt a betöltéshez."
diff --git a/resources/i18n/hu_HU/fdmextruder.def.json.po b/resources/i18n/hu_HU/fdmextruder.def.json.po
index 572a2d163d..a1638741a5 100644
--- a/resources/i18n/hu_HU/fdmextruder.def.json.po
+++ b/resources/i18n/hu_HU/fdmextruder.def.json.po
@@ -1,12 +1,12 @@
# Cura
-# Copyright (C) 2020 Ultimaker B.V.
+# Copyright (C) 2021 Ultimaker B.V.
# This file is distributed under the same license as the Cura package.
#
msgid ""
msgstr ""
-"Project-Id-Version: Cura 4.8\n"
+"Project-Id-Version: Cura 4.10\n"
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
-"POT-Creation-Date: 2020-10-19 13:15+0000\n"
+"POT-Creation-Date: 2021-06-10 17:35+0000\n"
"PO-Revision-Date: 2020-03-24 09:27+0100\n"
"Last-Translator: Nagy Attila \n"
"Language-Team: AT-VLOG\n"
diff --git a/resources/i18n/hu_HU/fdmprinter.def.json.po b/resources/i18n/hu_HU/fdmprinter.def.json.po
index 7498ce78b9..6720c0c58d 100644
--- a/resources/i18n/hu_HU/fdmprinter.def.json.po
+++ b/resources/i18n/hu_HU/fdmprinter.def.json.po
@@ -1,12 +1,12 @@
# Cura
-# Copyright (C) 2020 Ultimaker B.V.
+# Copyright (C) 2021 Ultimaker B.V.
# This file is distributed under the same license as the Cura package.
#
msgid ""
msgstr ""
-"Project-Id-Version: Cura 4.8\n"
+"Project-Id-Version: Cura 4.10\n"
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
-"POT-Creation-Date: 2020-10-19 13:15+0000\n"
+"POT-Creation-Date: 2021-06-10 17:35+0000\n"
"PO-Revision-Date: 2020-03-24 09:43+0100\n"
"Last-Translator: Nagy Attila \n"
"Language-Team: AT-VLOG\n"
@@ -420,6 +420,26 @@ msgctxt "machine_extruders_share_heater description"
msgid "Whether the extruders share a single heater rather than each extruder having its own heater."
msgstr ""
+#: fdmprinter.def.json
+msgctxt "machine_extruders_share_nozzle label"
+msgid "Extruders Share Nozzle"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "machine_extruders_share_nozzle description"
+msgid "Whether the extruders share a single nozzle rather than each extruder having its own nozzle. When set to true, it is expected that the printer-start gcode script properly sets up all extruders in an initial retraction state that is known and mutually compatible (either zero or one filament not retracted); in that case the initial retraction status is described, per extruder, by the 'machine_extruders_shared_nozzle_initial_retraction' parameter."
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "machine_extruders_shared_nozzle_initial_retraction label"
+msgid "Shared Nozzle Initial Retraction"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "machine_extruders_shared_nozzle_initial_retraction description"
+msgid "How much the filament of each extruder is assumed to have been retracted from the shared nozzle tip at the completion of the printer-start gcode script; the value should be equal to or greater than the length of the common part of the nozzle's ducts."
+msgstr ""
+
#: fdmprinter.def.json
msgctxt "machine_disallowed_areas label"
msgid "Disallowed Areas"
@@ -487,8 +507,8 @@ msgstr "Extruder eltolás"
#: fdmprinter.def.json
msgctxt "machine_use_extruder_offset_to_offset_coords description"
-msgid "Apply the extruder offset to the coordinate system."
-msgstr "Alkalmazza az extruder eltolását a koordinátarendszerre vonatkoztatva."
+msgid "Apply the extruder offset to the coordinate system. Affects all extruders."
+msgstr ""
#: fdmprinter.def.json
msgctxt "extruder_prime_pos_z label"
@@ -882,8 +902,8 @@ msgstr "Az első réteg vonalszélességének szorzója. Ennek a növelésével
#: fdmprinter.def.json
msgctxt "shell label"
-msgid "Shell"
-msgstr "Héj"
+msgid "Walls"
+msgstr ""
#: fdmprinter.def.json
msgctxt "shell description"
@@ -950,166 +970,6 @@ msgctxt "wall_0_wipe_dist description"
msgid "Distance of a travel move inserted after the outer wall, to hide the Z seam better."
msgstr "A külső fal nyomtatása után, beilleszt egy fej átemelést, a meghatározott távolságra. Ez segít elrejteni a Z varratot."
-#: fdmprinter.def.json
-msgctxt "roofing_extruder_nr label"
-msgid "Top Surface Skin Extruder"
-msgstr "Felső és külső felületi extruder"
-
-#: fdmprinter.def.json
-msgctxt "roofing_extruder_nr description"
-msgid "The extruder train used for printing the top most skin. This is used in multi-extrusion."
-msgstr "Az az extruder, amelyik a felső réteg külső lezárását végzi.Ez a funkció csak multiextruderes gépen érhető el."
-
-#: fdmprinter.def.json
-msgctxt "roofing_layer_count label"
-msgid "Top Surface Skin Layers"
-msgstr "Felső kéreg rétegek"
-
-#: fdmprinter.def.json
-msgctxt "roofing_layer_count description"
-msgid "The number of top most skin layers. Usually only one top most layer is sufficient to generate higher quality top surfaces."
-msgstr "A felső felszíni zárórétegek száma. Általában egy felső réteg is elegendő a jó minőségű felső felületek előállításához."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_extruder_nr label"
-msgid "Top/Bottom Extruder"
-msgstr "Alsó/felső extruder"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_extruder_nr description"
-msgid "The extruder train used for printing the top and bottom skin. This is used in multi-extrusion."
-msgstr "Az az extruder, amit az alsó/felső felületi rétegek nyomtatásához használunk. Ezt csak multi extruder esetén használhatjuk."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_thickness label"
-msgid "Top/Bottom Thickness"
-msgstr "Alsó/felső vastagság"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_thickness description"
-msgid "The thickness of the top/bottom layers in the print. This value divided by the layer height defines the number of top/bottom layers."
-msgstr "Az alsó/felső rétegek vastagsága a nyomtatáskor. Ez az érték osztva a rétegmagassággal adja meg az alsó/felső rétegek számát."
-
-#: fdmprinter.def.json
-msgctxt "top_thickness label"
-msgid "Top Thickness"
-msgstr "Felső vastagság"
-
-#: fdmprinter.def.json
-msgctxt "top_thickness description"
-msgid "The thickness of the top layers in the print. This value divided by the layer height defines the number of top layers."
-msgstr "A felső rétegek vastagsága a nyomtatáskor. Ez az érték osztva a rétegmagassággal adja meg az felső rétegek számát."
-
-#: fdmprinter.def.json
-msgctxt "top_layers label"
-msgid "Top Layers"
-msgstr "Felső rétegek"
-
-#: fdmprinter.def.json
-msgctxt "top_layers description"
-msgid "The number of top layers. When calculated by the top thickness, this value is rounded to a whole number."
-msgstr "A felső rétegek száma. A felső vastagság alapján számítva ezt az értéket egész számra kerekíti."
-
-#: fdmprinter.def.json
-msgctxt "bottom_thickness label"
-msgid "Bottom Thickness"
-msgstr "Alsó vastagság"
-
-#: fdmprinter.def.json
-msgctxt "bottom_thickness description"
-msgid "The thickness of the bottom layers in the print. This value divided by the layer height defines the number of bottom layers."
-msgstr "Az alsó rétegek vastagsága a nyomtatáskor. Ez az érték osztva a rétegmagassággal adja meg az alsó rétegek számát."
-
-#: fdmprinter.def.json
-msgctxt "bottom_layers label"
-msgid "Bottom Layers"
-msgstr "Alsó rétegek"
-
-#: fdmprinter.def.json
-msgctxt "bottom_layers description"
-msgid "The number of bottom layers. When calculated by the bottom thickness, this value is rounded to a whole number."
-msgstr "Az alsó rétegek száma. Az alsó vastagság alapján számítva ezt az értéket egész számra kerekíti."
-
-#: fdmprinter.def.json
-msgctxt "initial_bottom_layers label"
-msgid "Initial Bottom Layers"
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "initial_bottom_layers description"
-msgid "The number of initial bottom layers, from the build-plate upwards. When calculated by the bottom thickness, this value is rounded to a whole number."
-msgstr ""
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern label"
-msgid "Top/Bottom Pattern"
-msgstr "Alsó/felső mintázat"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern description"
-msgid "The pattern of the top/bottom layers."
-msgstr "Az alsó/felső rétegek mintázata."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern option lines"
-msgid "Lines"
-msgstr "Vonalas"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern option concentric"
-msgid "Concentric"
-msgstr "Körkörös"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern option zigzag"
-msgid "Zig Zag"
-msgstr "Cikcakk"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 label"
-msgid "Bottom Pattern Initial Layer"
-msgstr "Alsó kezdő réteg mintázata"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 description"
-msgid "The pattern on the bottom of the print on the first layer."
-msgstr "A legalsóbb, kezdő réteg mintázata."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 option lines"
-msgid "Lines"
-msgstr "Vonalas"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 option concentric"
-msgid "Concentric"
-msgstr "Körkörös"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 option zigzag"
-msgid "Zig Zag"
-msgstr "Cikcakk"
-
-#: fdmprinter.def.json
-msgctxt "connect_skin_polygons label"
-msgid "Connect Top/Bottom Polygons"
-msgstr "Alsó/felső poligonok kapcsolása"
-
-#: fdmprinter.def.json
-msgctxt "connect_skin_polygons description"
-msgid "Connect top/bottom skin paths where they run next to each other. For the concentric pattern enabling this setting greatly reduces the travel time, but because the connections can happen midway over infill this feature can reduce the top surface quality."
-msgstr "Az alsó/felső rétegpályákat kapcsolja össze, ahol egymás mellett futnak.Ha ezt a beállítást engedélyezzük a körkörös mintázatnál, jelentősen csökkenthetjük a fej átemelési időt, mivel a kapcsolódások félúton terténhetnek meg. Ez azonban ronthatja a felső felület minőségét."
-
-#: fdmprinter.def.json
-msgctxt "skin_angles label"
-msgid "Top/Bottom Line Directions"
-msgstr "Alsó/felső vonal irányok"
-
-#: fdmprinter.def.json
-msgctxt "skin_angles description"
-msgid "A list of integer line directions to use when the top/bottom layers use the lines or zig zag pattern. Elements from the list are used sequentially as the layers progress and when the end of the list is reached, it starts at the beginning again. The list items are separated by commas and the whole list is contained in square brackets. Default is an empty list which means use the traditional default angles (45 and 135 degrees)."
-msgstr "Az egész vonal-irányok listája, amelyet akkor kell használni, ha az alsó/felső rétegek a vonalas vagy cikcakk mintákat használják.A lista elemeit egymás után használják a rétegek előrehaladtával, és amikor a lista vége eléri, akkor újra előlről kezdi.A lista elemeit vesszők választják el, és a teljes listát szögletes zárójelben tartalmazza. Az Alapértelmezés egy üres lista, amely azt jelenti, hogy a hagyományos alapértelmezett szögeket (45 és 135 fok) kell használni."
-
#: fdmprinter.def.json
msgctxt "wall_0_inset label"
msgid "Outer Wall Inset"
@@ -1415,6 +1275,176 @@ msgctxt "z_seam_relative description"
msgid "When enabled, the z seam coordinates are relative to each part's centre. When disabled, the coordinates define an absolute position on the build plate."
msgstr "Ha engedélyezve van, a z varrás koordinátái az egyes alkatrészek középpontjához viszonyítva vannak. Letiltva a koordináták meghatározzák az abszolút helyzetét a tárgyasztalon."
+#: fdmprinter.def.json
+msgctxt "top_bottom label"
+msgid "Top/Bottom"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "top_bottom description"
+msgid "Top/Bottom"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "roofing_extruder_nr label"
+msgid "Top Surface Skin Extruder"
+msgstr "Felső és külső felületi extruder"
+
+#: fdmprinter.def.json
+msgctxt "roofing_extruder_nr description"
+msgid "The extruder train used for printing the top most skin. This is used in multi-extrusion."
+msgstr "Az az extruder, amelyik a felső réteg külső lezárását végzi.Ez a funkció csak multiextruderes gépen érhető el."
+
+#: fdmprinter.def.json
+msgctxt "roofing_layer_count label"
+msgid "Top Surface Skin Layers"
+msgstr "Felső kéreg rétegek"
+
+#: fdmprinter.def.json
+msgctxt "roofing_layer_count description"
+msgid "The number of top most skin layers. Usually only one top most layer is sufficient to generate higher quality top surfaces."
+msgstr "A felső felszíni zárórétegek száma. Általában egy felső réteg is elegendő a jó minőségű felső felületek előállításához."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_extruder_nr label"
+msgid "Top/Bottom Extruder"
+msgstr "Alsó/felső extruder"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_extruder_nr description"
+msgid "The extruder train used for printing the top and bottom skin. This is used in multi-extrusion."
+msgstr "Az az extruder, amit az alsó/felső felületi rétegek nyomtatásához használunk. Ezt csak multi extruder esetén használhatjuk."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_thickness label"
+msgid "Top/Bottom Thickness"
+msgstr "Alsó/felső vastagság"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_thickness description"
+msgid "The thickness of the top/bottom layers in the print. This value divided by the layer height defines the number of top/bottom layers."
+msgstr "Az alsó/felső rétegek vastagsága a nyomtatáskor. Ez az érték osztva a rétegmagassággal adja meg az alsó/felső rétegek számát."
+
+#: fdmprinter.def.json
+msgctxt "top_thickness label"
+msgid "Top Thickness"
+msgstr "Felső vastagság"
+
+#: fdmprinter.def.json
+msgctxt "top_thickness description"
+msgid "The thickness of the top layers in the print. This value divided by the layer height defines the number of top layers."
+msgstr "A felső rétegek vastagsága a nyomtatáskor. Ez az érték osztva a rétegmagassággal adja meg az felső rétegek számát."
+
+#: fdmprinter.def.json
+msgctxt "top_layers label"
+msgid "Top Layers"
+msgstr "Felső rétegek"
+
+#: fdmprinter.def.json
+msgctxt "top_layers description"
+msgid "The number of top layers. When calculated by the top thickness, this value is rounded to a whole number."
+msgstr "A felső rétegek száma. A felső vastagság alapján számítva ezt az értéket egész számra kerekíti."
+
+#: fdmprinter.def.json
+msgctxt "bottom_thickness label"
+msgid "Bottom Thickness"
+msgstr "Alsó vastagság"
+
+#: fdmprinter.def.json
+msgctxt "bottom_thickness description"
+msgid "The thickness of the bottom layers in the print. This value divided by the layer height defines the number of bottom layers."
+msgstr "Az alsó rétegek vastagsága a nyomtatáskor. Ez az érték osztva a rétegmagassággal adja meg az alsó rétegek számát."
+
+#: fdmprinter.def.json
+msgctxt "bottom_layers label"
+msgid "Bottom Layers"
+msgstr "Alsó rétegek"
+
+#: fdmprinter.def.json
+msgctxt "bottom_layers description"
+msgid "The number of bottom layers. When calculated by the bottom thickness, this value is rounded to a whole number."
+msgstr "Az alsó rétegek száma. Az alsó vastagság alapján számítva ezt az értéket egész számra kerekíti."
+
+#: fdmprinter.def.json
+msgctxt "initial_bottom_layers label"
+msgid "Initial Bottom Layers"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "initial_bottom_layers description"
+msgid "The number of initial bottom layers, from the build-plate upwards. When calculated by the bottom thickness, this value is rounded to a whole number."
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern label"
+msgid "Top/Bottom Pattern"
+msgstr "Alsó/felső mintázat"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern description"
+msgid "The pattern of the top/bottom layers."
+msgstr "Az alsó/felső rétegek mintázata."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern option lines"
+msgid "Lines"
+msgstr "Vonalas"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern option concentric"
+msgid "Concentric"
+msgstr "Körkörös"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern option zigzag"
+msgid "Zig Zag"
+msgstr "Cikcakk"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 label"
+msgid "Bottom Pattern Initial Layer"
+msgstr "Alsó kezdő réteg mintázata"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 description"
+msgid "The pattern on the bottom of the print on the first layer."
+msgstr "A legalsóbb, kezdő réteg mintázata."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 option lines"
+msgid "Lines"
+msgstr "Vonalas"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 option concentric"
+msgid "Concentric"
+msgstr "Körkörös"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 option zigzag"
+msgid "Zig Zag"
+msgstr "Cikcakk"
+
+#: fdmprinter.def.json
+msgctxt "connect_skin_polygons label"
+msgid "Connect Top/Bottom Polygons"
+msgstr "Alsó/felső poligonok kapcsolása"
+
+#: fdmprinter.def.json
+msgctxt "connect_skin_polygons description"
+msgid "Connect top/bottom skin paths where they run next to each other. For the concentric pattern enabling this setting greatly reduces the travel time, but because the connections can happen midway over infill this feature can reduce the top surface quality."
+msgstr "Az alsó/felső rétegpályákat kapcsolja össze, ahol egymás mellett futnak.Ha ezt a beállítást engedélyezzük a körkörös mintázatnál, jelentősen csökkenthetjük a fej átemelési időt, mivel a kapcsolódások félúton terténhetnek meg. Ez azonban ronthatja a felső felület minőségét."
+
+#: fdmprinter.def.json
+msgctxt "skin_angles label"
+msgid "Top/Bottom Line Directions"
+msgstr "Alsó/felső vonal irányok"
+
+#: fdmprinter.def.json
+msgctxt "skin_angles description"
+msgid "A list of integer line directions to use when the top/bottom layers use the lines or zig zag pattern. Elements from the list are used sequentially as the layers progress and when the end of the list is reached, it starts at the beginning again. The list items are separated by commas and the whole list is contained in square brackets. Default is an empty list which means use the traditional default angles (45 and 135 degrees)."
+msgstr "Az egész vonal-irányok listája, amelyet akkor kell használni, ha az alsó/felső rétegek a vonalas vagy cikcakk mintákat használják.A lista elemeit egymás után használják a rétegek előrehaladtával, és amikor a lista vége eléri, akkor újra előlről kezdi.A lista elemeit vesszők választják el, és a teljes listát szögletes zárójelben tartalmazza. Az Alapértelmezés egy üres lista, amely azt jelenti, hogy a hagyományos alapértelmezett szögeket (45 és 135 fok) kell használni."
+
#: fdmprinter.def.json
msgctxt "skin_no_small_gaps_heuristic label"
msgid "No Skin in Z Gaps"
@@ -1555,6 +1585,86 @@ msgctxt "skin_overlap_mm description"
msgid "Adjust the amount of overlap between the walls and (the endpoints of) the skin-centerlines. A slight overlap allows the walls to connect firmly to the skin. Note that, given an equal skin and wall line-width, any value over half the width of the wall may already cause any skin to go past the wall, because at that point the position of the nozzle of the skin-extruder may already reach past the middle of the wall."
msgstr "Az átfedés mértékét állítja be a falak és a felszíni vonalak középpontjainak végpontjai között. Az enyhe átfedés lehetővé teszi a falak szoros kapcsolódását a felszínhez. Vegye figyelembe, hogy ha a kéreg és a fal vonalszélessége egyenlő, akkor a fal szélességének felét meghaladó érték bármilyen felszín esetén áthaladhat a falon, mert ezen a ponton a kéreg-extruder fúvóka pozíciója már elérheti a fal közepén."
+#: fdmprinter.def.json
+msgctxt "skin_preshrink label"
+msgid "Skin Removal Width"
+msgstr "Kéreg eltávolítás szélessége"
+
+#: fdmprinter.def.json
+msgctxt "skin_preshrink description"
+msgid "The largest width of skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top/bottom skin at slanted surfaces in the model."
+msgstr "Az eltávolítandó kéreg felület legnagyobb szélessége. Az ettől kissebb felületek el fognak tűnni. Ez segíthet korlátozni a modell ferde felületeinek alsó és felső részének nyomtatásához felhasznált időt és anyagot."
+
+#: fdmprinter.def.json
+msgctxt "top_skin_preshrink label"
+msgid "Top Skin Removal Width"
+msgstr "Felső kéreg eltávolítási szélesség"
+
+#: fdmprinter.def.json
+msgctxt "top_skin_preshrink description"
+msgid "The largest width of top skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top skin at slanted surfaces in the model."
+msgstr "Az eltávolítandó felső kéreg felület legnagyobb szélessége. Az ettől kissebb felületek el fognak tűnni. Ez segíthet korlátozni a modell ferde felületeinek felső részének nyomtatásához felhasznált időt és anyagot."
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_preshrink label"
+msgid "Bottom Skin Removal Width"
+msgstr "Alsó kéreg eltávolítási szélesség"
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_preshrink description"
+msgid "The largest width of bottom skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing bottom skin at slanted surfaces in the model."
+msgstr "Az eltávolítandó alsókéreg felület legnagyobb szélessége. Az ettől kissebb felületek el fognak tűnni. Ez segíthet korlátozni a modell ferde felületeinek alsó részének nyomtatásához felhasznált időt és anyagot."
+
+#: fdmprinter.def.json
+msgctxt "expand_skins_expand_distance label"
+msgid "Skin Expand Distance"
+msgstr "Kéreg bővítési távolság"
+
+#: fdmprinter.def.json
+msgctxt "expand_skins_expand_distance description"
+msgid "The distance the skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on neighboring layers adhere better to the skin. Lower values save amount of material used."
+msgstr "A kéreg felületek a kitöltésig jönnek létre. Ha bővítjük a kérget, és növeljük ezt az értéket, akkor jobb tapadást érhetünk el a kitöltéssel kapcsolatban, illetve a szomszédos falak jobban tudnak tapadni a kéreghez. Az alacsonyabb érték anyagmegtakarítást eredményez."
+
+#: fdmprinter.def.json
+msgctxt "top_skin_expand_distance label"
+msgid "Top Skin Expand Distance"
+msgstr "Felső kéreg bővítési távolság"
+
+#: fdmprinter.def.json
+msgctxt "top_skin_expand_distance description"
+msgid "The distance the top skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on the layer above adhere better to the skin. Lower values save amount of material used."
+msgstr "A felső kéreg felületek a kitöltésig jönnek létre. Ha bővítjük a felső kérget, és növeljük ezt az értéket, akkor jobb tapadást érhetünk el a kitöltéssel kapcsolatban, illetve a szomszédos falak jobban tudnak tapadni a kéreghez. Az alacsonyabb érték anyagmegtakarítást eredményez."
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_expand_distance label"
+msgid "Bottom Skin Expand Distance"
+msgstr "Alsó kéreg bővítési távolság"
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_expand_distance description"
+msgid "The distance the bottom skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the skin adhere better to the walls on the layer below. Lower values save amount of material used."
+msgstr "Az alsó kéreg felületek a kitöltésig jönnek létre. Ha bővítjük az alsó kérget, és növeljük ezt az értéket, akkor jobb tapadást érhetünk el a kitöltéssel kapcsolatban, illetve a szomszédos falak jobban tudnak tapadni a kéreghez. Az alacsonyabb érték anyagmegtakarítást eredményez."
+
+#: fdmprinter.def.json
+msgctxt "max_skin_angle_for_expansion label"
+msgid "Maximum Skin Angle for Expansion"
+msgstr "A kéreg bővítés maximális szöge"
+
+#: fdmprinter.def.json
+msgctxt "max_skin_angle_for_expansion description"
+msgid "Top and/or bottom surfaces of your object with an angle larger than this setting, won't have their top/bottom skin expanded. This avoids expanding the narrow skin areas that are created when the model surface has a near vertical slope. An angle of 0° is horizontal and will cause no skin to be expanded, while an angle of 90° is vertical and will cause all skin to be expanded."
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "min_skin_width_for_expansion label"
+msgid "Minimum Skin Width for Expansion"
+msgstr "A minimális kéregszélesség kibővítéshez"
+
+#: fdmprinter.def.json
+msgctxt "min_skin_width_for_expansion description"
+msgid "Skin areas narrower than this are not expanded. This avoids expanding the narrow skin areas that are created when the model surface has a slope close to the vertical."
+msgstr "Az ennél keskenyebb kéregfelületek nem bővülnek ki. Ezzel elkerülhető, hogy keskeny kéregfelületek kibővüljenek, amik akkor jönnek létre, mikor a modell külső felületének lejtése közel van a függőlegeshez."
+
#: fdmprinter.def.json
msgctxt "infill label"
msgid "Infill"
@@ -1864,86 +1974,6 @@ msgctxt "infill_support_angle description"
msgid "The minimum angle of internal overhangs for which infill is added. At a value of 0° objects are totally filled with infill, 90° will not provide any infill."
msgstr "Az a belső túlnyúlási szög, amihez szükséges kitöltést hozzáadni. Ha ez 0°, a test teljes mértékben kitöltésre kerül. Ha az érték 90°, akkor nem lesz semmiféle kitöltés."
-#: fdmprinter.def.json
-msgctxt "skin_preshrink label"
-msgid "Skin Removal Width"
-msgstr "Kéreg eltávolítás szélessége"
-
-#: fdmprinter.def.json
-msgctxt "skin_preshrink description"
-msgid "The largest width of skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top/bottom skin at slanted surfaces in the model."
-msgstr "Az eltávolítandó kéreg felület legnagyobb szélessége. Az ettől kissebb felületek el fognak tűnni. Ez segíthet korlátozni a modell ferde felületeinek alsó és felső részének nyomtatásához felhasznált időt és anyagot."
-
-#: fdmprinter.def.json
-msgctxt "top_skin_preshrink label"
-msgid "Top Skin Removal Width"
-msgstr "Felső kéreg eltávolítási szélesség"
-
-#: fdmprinter.def.json
-msgctxt "top_skin_preshrink description"
-msgid "The largest width of top skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top skin at slanted surfaces in the model."
-msgstr "Az eltávolítandó felső kéreg felület legnagyobb szélessége. Az ettől kissebb felületek el fognak tűnni. Ez segíthet korlátozni a modell ferde felületeinek felső részének nyomtatásához felhasznált időt és anyagot."
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_preshrink label"
-msgid "Bottom Skin Removal Width"
-msgstr "Alsó kéreg eltávolítási szélesség"
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_preshrink description"
-msgid "The largest width of bottom skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing bottom skin at slanted surfaces in the model."
-msgstr "Az eltávolítandó alsókéreg felület legnagyobb szélessége. Az ettől kissebb felületek el fognak tűnni. Ez segíthet korlátozni a modell ferde felületeinek alsó részének nyomtatásához felhasznált időt és anyagot."
-
-#: fdmprinter.def.json
-msgctxt "expand_skins_expand_distance label"
-msgid "Skin Expand Distance"
-msgstr "Kéreg bővítési távolság"
-
-#: fdmprinter.def.json
-msgctxt "expand_skins_expand_distance description"
-msgid "The distance the skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on neighboring layers adhere better to the skin. Lower values save amount of material used."
-msgstr "A kéreg felületek a kitöltésig jönnek létre. Ha bővítjük a kérget, és növeljük ezt az értéket, akkor jobb tapadást érhetünk el a kitöltéssel kapcsolatban, illetve a szomszédos falak jobban tudnak tapadni a kéreghez. Az alacsonyabb érték anyagmegtakarítást eredményez."
-
-#: fdmprinter.def.json
-msgctxt "top_skin_expand_distance label"
-msgid "Top Skin Expand Distance"
-msgstr "Felső kéreg bővítési távolság"
-
-#: fdmprinter.def.json
-msgctxt "top_skin_expand_distance description"
-msgid "The distance the top skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on the layer above adhere better to the skin. Lower values save amount of material used."
-msgstr "A felső kéreg felületek a kitöltésig jönnek létre. Ha bővítjük a felső kérget, és növeljük ezt az értéket, akkor jobb tapadást érhetünk el a kitöltéssel kapcsolatban, illetve a szomszédos falak jobban tudnak tapadni a kéreghez. Az alacsonyabb érték anyagmegtakarítást eredményez."
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_expand_distance label"
-msgid "Bottom Skin Expand Distance"
-msgstr "Alsó kéreg bővítési távolság"
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_expand_distance description"
-msgid "The distance the bottom skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the skin adhere better to the walls on the layer below. Lower values save amount of material used."
-msgstr "Az alsó kéreg felületek a kitöltésig jönnek létre. Ha bővítjük az alsó kérget, és növeljük ezt az értéket, akkor jobb tapadást érhetünk el a kitöltéssel kapcsolatban, illetve a szomszédos falak jobban tudnak tapadni a kéreghez. Az alacsonyabb érték anyagmegtakarítást eredményez."
-
-#: fdmprinter.def.json
-msgctxt "max_skin_angle_for_expansion label"
-msgid "Maximum Skin Angle for Expansion"
-msgstr "A kéreg bővítés maximális szöge"
-
-#: fdmprinter.def.json
-msgctxt "max_skin_angle_for_expansion description"
-msgid "Top and/or bottom surfaces of your object with an angle larger than this setting, won't have their top/bottom skin expanded. This avoids expanding the narrow skin areas that are created when the model surface has a near vertical slope. An angle of 0° is horizontal, while an angle of 90° is vertical."
-msgstr "A tárgy alsó/felső felületén, az itt megadott szögnél nagyobb szög esetén a kéreg nem lesz kibővítve. Így elkerülhető, hogy a keskeny kéregrészek ne legyenek kibővítve, amik akkor jönnek létre, mikor a modell felülete közel függőleges szögben áll. A 0° szög a vízszintes, míg a 90° szög a függőlegest jelenti."
-
-#: fdmprinter.def.json
-msgctxt "min_skin_width_for_expansion label"
-msgid "Minimum Skin Width for Expansion"
-msgstr "A minimális kéregszélesség kibővítéshez"
-
-#: fdmprinter.def.json
-msgctxt "min_skin_width_for_expansion description"
-msgid "Skin areas narrower than this are not expanded. This avoids expanding the narrow skin areas that are created when the model surface has a slope close to the vertical."
-msgstr "Az ennél keskenyebb kéregfelületek nem bővülnek ki. Ezzel elkerülhető, hogy keskeny kéregfelületek kibővüljenek, amik akkor jönnek létre, mikor a modell külső felületének lejtése közel van a függőlegeshez."
-
#: fdmprinter.def.json
msgctxt "skin_edge_support_thickness label"
msgid "Skin Edge Support Thickness"
@@ -2561,8 +2591,8 @@ msgstr "Kezdő réteg sebessége"
#: fdmprinter.def.json
msgctxt "speed_layer_0 description"
-msgid "The speed for the initial layer. A lower value is advised to improve adhesion to the build plate."
-msgstr "A kezdő réteg sebessége. Az alacsonyabb érték segít növelni a tapadást a tárgyasztalhoz."
+msgid "The speed for the initial layer. A lower value is advised to improve adhesion to the build plate. Does not affect the build plate adhesion structures themselves, like brim and raft."
+msgstr ""
#: fdmprinter.def.json
msgctxt "speed_print_layer_0 label"
@@ -3171,8 +3201,8 @@ msgstr "Maximum fésű táv visszahúzás nélkül"
#: fdmprinter.def.json
msgctxt "retraction_combing_max_distance description"
-msgid "When non-zero, combing travel moves that are longer than this distance will use retraction."
-msgstr "Ha ez az érték nem nulla, akkor a megadott értéktől hosszabb utazáskor nyomtatószál visszahúzás fog történni."
+msgid "When greater than zero, combing travel moves that are longer than this distance will use retraction. If set to zero, there is no maximum and combing moves will not use retraction."
+msgstr ""
#: fdmprinter.def.json
msgctxt "travel_retract_before_outer_wall label"
@@ -5075,7 +5105,7 @@ msgstr ""
#: fdmprinter.def.json
msgctxt "infill_mesh_order description"
-msgid "Determines the priority of this mesh when considering multiple overlapping infill meshes. Areas where multiple infill meshes overlap will take on the settings of the mesh with the lowest rank. An infill mesh with a higher order will modify the infill of infill meshes with lower order and normal meshes."
+msgid "Determines the priority of this mesh when considering multiple overlapping infill meshes. Areas where multiple infill meshes overlap will take on the settings of the mesh with the highest rank. An infill mesh with a higher rank will modify the infill of infill meshes with lower rank and normal meshes."
msgstr ""
#: fdmprinter.def.json
@@ -5423,6 +5453,16 @@ msgctxt "conical_overhang_angle description"
msgid "The maximum angle of overhangs after the they have been made printable. At a value of 0° all overhangs are replaced by a piece of model connected to the build plate, 90° will not change the model in any way."
msgstr "A túlnyúlások maximális szöge a nyomtathatóvá tétel után. 0 ° értéknél az összes túlnyúlást egy, az építőlemezhez kapcsolt modelldarab váltja fel, a 90 ° -ot a modell semmilyen módon nem változtatja meg."
+#: fdmprinter.def.json
+msgctxt "conical_overhang_hole_size label"
+msgid "Maximum Overhang Hole Area"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "conical_overhang_hole_size description"
+msgid "The maximum area of a hole in the base of the model before it's removed by Make Overhang Printable. Holes smaller than this will be retained. A value of 0 mm² will fill all holes in the models base."
+msgstr ""
+
#: fdmprinter.def.json
msgctxt "coasting_enable label"
msgid "Enable Coasting"
@@ -6360,6 +6400,26 @@ msgctxt "mesh_rotation_matrix description"
msgid "Transformation matrix to be applied to the model when loading it from file."
msgstr "A modellre alkalmazandó átalakítási mátrix, amikor azt fájlból tölti be."
+#~ msgctxt "retraction_combing_max_distance description"
+#~ msgid "When non-zero, combing travel moves that are longer than this distance will use retraction."
+#~ msgstr "Ha ez az érték nem nulla, akkor a megadott értéktől hosszabb utazáskor nyomtatószál visszahúzás fog történni."
+
+#~ msgctxt "machine_use_extruder_offset_to_offset_coords description"
+#~ msgid "Apply the extruder offset to the coordinate system."
+#~ msgstr "Alkalmazza az extruder eltolását a koordinátarendszerre vonatkoztatva."
+
+#~ msgctxt "shell label"
+#~ msgid "Shell"
+#~ msgstr "Héj"
+
+#~ msgctxt "max_skin_angle_for_expansion description"
+#~ msgid "Top and/or bottom surfaces of your object with an angle larger than this setting, won't have their top/bottom skin expanded. This avoids expanding the narrow skin areas that are created when the model surface has a near vertical slope. An angle of 0° is horizontal, while an angle of 90° is vertical."
+#~ msgstr "A tárgy alsó/felső felületén, az itt megadott szögnél nagyobb szög esetén a kéreg nem lesz kibővítve. Így elkerülhető, hogy a keskeny kéregrészek ne legyenek kibővítve, amik akkor jönnek létre, mikor a modell felülete közel függőleges szögben áll. A 0° szög a vízszintes, míg a 90° szög a függőlegest jelenti."
+
+#~ msgctxt "speed_layer_0 description"
+#~ msgid "The speed for the initial layer. A lower value is advised to improve adhesion to the build plate."
+#~ msgstr "A kezdő réteg sebessége. Az alacsonyabb érték segít növelni a tapadást a tárgyasztalhoz."
+
#~ msgctxt "material_bed_temperature description"
#~ msgid "The temperature used for the heated build plate. If this is 0, the bed temperature will not be adjusted."
#~ msgstr "A tárgyasztal hőmérséklete. Ha ez az érték 0, akkor tárgyasztal hőmérséklete nem lesz beállítva, azaz nem fogja fűteni a gép."
diff --git a/resources/i18n/it_IT/cura.po b/resources/i18n/it_IT/cura.po
index eb02d844d2..0c5eb87796 100644
--- a/resources/i18n/it_IT/cura.po
+++ b/resources/i18n/it_IT/cura.po
@@ -1,13 +1,13 @@
# Cura
-# Copyright (C) 2020 Ultimaker B.V.
+# Copyright (C) 2021 Ultimaker B.V.
# This file is distributed under the same license as the Cura package.
#
msgid ""
msgstr ""
-"Project-Id-Version: Cura 4.8\n"
+"Project-Id-Version: Cura 4.10\n"
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
-"POT-Creation-Date: 2020-10-19 13:15+0200\n"
-"PO-Revision-Date: 2020-08-21 13:40+0200\n"
+"POT-Creation-Date: 2021-06-10 17:35+0200\n"
+"PO-Revision-Date: 2021-04-16 14:58+0200\n"
"Last-Translator: Lionbridge \n"
"Language-Team: Italian , Italian \n"
"Language: it_IT\n"
@@ -15,12 +15,12 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Poedit 2.1.1\n"
+"X-Generator: Poedit 2.4.1\n"
#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/DiscoveredPrintersModel.py:83
#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:110
#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/QualityManagementModel.py:361
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1581
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1612
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:130
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:171
msgctxt "@label"
@@ -91,12 +91,12 @@ msgctxt "@text"
msgid "The draft profile is designed to print initial prototypes and concept validation with the intent of significant print time reduction."
msgstr "Il profilo bozza è destinato alla stampa dei prototipi iniziali e alla convalida dei concept, con l'intento di ridurre in modo significativo il tempo di stampa."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:226
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:234
msgctxt "@label"
msgid "Custom Material"
msgstr "Materiale personalizzato"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:227
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:235
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationMenu.qml:205
msgctxt "@label"
msgid "Custom"
@@ -118,7 +118,7 @@ msgctxt "@item:inlistbox"
msgid "All Files (*)"
msgstr "Tutti i file (*)"
-#: /home/trin/Gedeeld/Projects/Cura/cura/API/Account.py:178
+#: /home/trin/Gedeeld/Projects/Cura/cura/API/Account.py:181
msgctxt "@info:title"
msgid "Login failed"
msgstr "Login non riuscito"
@@ -148,28 +148,33 @@ msgctxt "@info:title"
msgid "Can't Find Location"
msgstr "Impossibile individuare posizione"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:104
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:116
msgctxt "@info:backup_failed"
msgid "Could not create archive from user data directory: {}"
msgstr "Impossibile creare un archivio dalla directory dei dati utente: {}"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:110
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:122
#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:107
#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:113
msgctxt "@info:title"
msgid "Backup"
msgstr "Backup"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:123
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:135
msgctxt "@info:backup_failed"
msgid "Tried to restore a Cura backup without having proper data or meta data."
msgstr "Tentativo di ripristinare un backup di Cura senza dati o metadati appropriati."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:134
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:146
msgctxt "@info:backup_failed"
msgid "Tried to restore a Cura backup that is higher than the current version."
msgstr "Tentativo di ripristinare un backup di Cura di versione superiore rispetto a quella corrente."
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:157
+msgctxt "@info:backup_failed"
+msgid "The following error occurred while trying to restore a Cura backup:"
+msgstr "Nel tentativo di ripristinare un backup di Cura, si è verificato il seguente errore:"
+
#: /home/trin/Gedeeld/Projects/Cura/cura/BuildVolume.py:98
msgctxt "@info:status"
msgid "The build volume height has been reduced due to the value of the \"Print Sequence\" setting to prevent the gantry from colliding with printed models."
@@ -319,74 +324,74 @@ msgctxt "@action:button"
msgid "Send report"
msgstr "Invia report"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:521
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:527
msgctxt "@info:progress"
msgid "Loading machines..."
msgstr "Caricamento macchine in corso..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:528
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:534
msgctxt "@info:progress"
msgid "Setting up preferences..."
msgstr "Impostazione delle preferenze..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:657
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:672
msgctxt "@info:progress"
msgid "Initializing Active Machine..."
msgstr "Inizializzazione Active Machine in corso..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:788
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:803
msgctxt "@info:progress"
msgid "Initializing machine manager..."
msgstr "Inizializzazione gestore macchina in corso..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:802
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:817
msgctxt "@info:progress"
msgid "Initializing build volume..."
msgstr "Inizializzazione volume di stampa in corso..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:870
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:888
msgctxt "@info:progress"
msgid "Setting up scene..."
msgstr "Impostazione scena in corso..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:906
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:924
msgctxt "@info:progress"
msgid "Loading interface..."
msgstr "Caricamento interfaccia in corso..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:911
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:929
msgctxt "@info:progress"
msgid "Initializing engine..."
msgstr "Inizializzazione motore in corso..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1221
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1246
#, python-format
msgctxt "@info 'width', 'depth' and 'height' are variable names that must NOT be translated; just translate the format of ##x##x## mm."
msgid "%(width).1f x %(depth).1f x %(height).1f mm"
msgstr "%(width).1f x %(depth).1f x %(height).1f mm"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1777
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1799
#, python-brace-format
msgctxt "@info:status"
msgid "Only one G-code file can be loaded at a time. Skipped importing {0}"
msgstr "È possibile caricare un solo file codice G per volta. Importazione saltata {0}"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1778
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:188
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:242
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1800
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:190
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:244
#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:153
#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:165
msgctxt "@info:title"
msgid "Warning"
msgstr "Avvertenza"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1787
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1809
#, python-brace-format
msgctxt "@info:status"
msgid "Can't open any other file if G-code is loading. Skipped importing {0}"
msgstr "Impossibile aprire altri file durante il caricamento del codice G. Importazione saltata {0}"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1788
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1810
#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:146
#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:153
#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:139
@@ -409,7 +414,7 @@ msgctxt "@info:title"
msgid "Placing Object"
msgstr "Sistemazione oggetto"
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationHelpers.py:90
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationHelpers.py:92
msgctxt "@message"
msgid "Could not read response."
msgstr "Impossibile leggere la risposta."
@@ -429,12 +434,12 @@ msgctxt "@message"
msgid "Something unexpected happened when trying to log in, please try again."
msgstr "Si è verificato qualcosa di inatteso durante il tentativo di accesso, riprovare."
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:187
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:189
msgctxt "@info"
msgid "Unable to start a new sign in process. Check if another sign in attempt is still active."
msgstr "Impossibile avviare un nuovo processo di accesso. Verificare se è ancora attivo un altro tentativo di accesso."
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:242
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:244
msgctxt "@info"
msgid "Unable to reach the Ultimaker account server."
msgstr "Impossibile raggiungere il server account Ultimaker."
@@ -452,8 +457,8 @@ msgctxt "@label Don't translate the XML tag !"
msgid "The file {0} already exists. Are you sure you want to overwrite it?"
msgstr "Il file {0} esiste già. Sei sicuro di volerlo sovrascrivere?"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:452
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:455
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:457
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:460
msgctxt "@info:status"
msgid "Invalid file URL:"
msgstr "File URL non valido:"
@@ -536,38 +541,37 @@ msgctxt "@info:status"
msgid "Profile {0} has an unknown file type or is corrupted."
msgstr "Il profilo {0} ha un tipo di file sconosciuto o corrotto."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:423
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:426
msgctxt "@label"
msgid "Custom profile"
msgstr "Profilo personalizzato"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:439
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:442
msgctxt "@info:status"
msgid "Profile is missing a quality type."
msgstr "Il profilo è privo del tipo di qualità."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:443
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:446
msgctxt "@info:status"
-msgid "Global stack is missing."
-msgstr "Pila globale mancante."
+msgid "There is no active printer yet."
+msgstr "Non ci sono ancora stampanti attive."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:449
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:452
msgctxt "@info:status"
msgid "Unable to add the profile."
msgstr "Impossibile aggiungere il profilo."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:463
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:466
#, python-brace-format
msgctxt "@info:status"
msgid "Quality type '{0}' is not compatible with the current active machine definition '{1}'."
msgstr "Il tipo di qualità '{0}' non è compatibile con la definizione di macchina attiva corrente '{1}'."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:468
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:471
#, python-brace-format
msgctxt "@info:status"
msgid "Warning: The profile is not visible because its quality type '{0}' is not available for the current configuration. Switch to a material/nozzle combination that can use this quality type."
-msgstr "Avvertenza: il profilo non è visibile in quanto il tipo di qualità '{0}' non è disponibile per la configurazione corrente. Passare alla combinazione materiale/ugello"
-" che consente di utilizzare questo tipo di qualità."
+msgstr "Avvertenza: il profilo non è visibile in quanto il tipo di qualità '{0}' non è disponibile per la configurazione corrente. Passare alla combinazione materiale/ugello che consente di utilizzare questo tipo di qualità."
#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/cura_empty_instance_containers.py:36
msgctxt "@info:not supported profile"
@@ -579,23 +583,23 @@ msgctxt "@info:No intent profile selected"
msgid "Default"
msgstr "Default"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:712
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:713
#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:216
msgctxt "@label"
msgid "Nozzle"
msgstr "Ugello"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:860
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:856
msgctxt "@info:message Followed by a list of settings."
msgid "Settings have been changed to match the current availability of extruders:"
msgstr "Le impostazioni sono state modificate in base all’attuale disponibilità di estrusori:"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:862
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:858
msgctxt "@info:title"
msgid "Settings updated"
msgstr "Impostazioni aggiornate"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1447
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1478
msgctxt "@info:title"
msgid "Extruder(s) Disabled"
msgstr "Estrusore disabilitato"
@@ -608,13 +612,13 @@ msgid "Add"
msgstr "Aggiungi"
#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:26
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:263
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:272
msgctxt "@action:button"
msgid "Finish"
msgstr "Fine"
#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:33
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:441
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:445
#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:234
#: /home/trin/Gedeeld/Projects/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:150
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxProgressButton.qml:19
@@ -622,7 +626,7 @@ msgstr "Fine"
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:352
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:58
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/PrintWindow.qml:42
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:87
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:82
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:292
msgctxt "@action:button"
msgid "Cancel"
@@ -634,76 +638,83 @@ msgctxt "@label"
msgid "Group #{group_nr}"
msgstr "Gruppo #{group_nr}"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:83
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:82
msgctxt "@tooltip"
msgid "Outer Wall"
msgstr "Parete esterna"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:84
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:83
msgctxt "@tooltip"
msgid "Inner Walls"
msgstr "Pareti interne"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:85
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:84
msgctxt "@tooltip"
msgid "Skin"
msgstr "Rivestimento esterno"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:86
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:85
msgctxt "@tooltip"
msgid "Infill"
msgstr "Riempimento"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:87
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:86
msgctxt "@tooltip"
msgid "Support Infill"
msgstr "Riempimento del supporto"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:88
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:87
msgctxt "@tooltip"
msgid "Support Interface"
msgstr "Interfaccia supporto"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:89
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:88
msgctxt "@tooltip"
msgid "Support"
msgstr "Supporto"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:90
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:89
msgctxt "@tooltip"
msgid "Skirt"
msgstr "Skirt"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:91
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:90
msgctxt "@tooltip"
msgid "Prime Tower"
msgstr "Torre di innesco"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:92
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:91
msgctxt "@tooltip"
msgid "Travel"
msgstr "Spostamenti"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:93
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:92
msgctxt "@tooltip"
msgid "Retractions"
msgstr "Retrazioni"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:94
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:93
msgctxt "@tooltip"
msgid "Other"
msgstr "Altro"
#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:56
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:259
msgctxt "@action:button"
msgid "Next"
msgstr "Avanti"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WhatsNewPagesModel.py:17
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:268
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WhatsNewPagesModel.py:55
+msgctxt "@action:button"
+msgid "Skip"
+msgstr "Salta"
+
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WhatsNewPagesModel.py:60
#: /home/trin/Gedeeld/Projects/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:185
#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:128
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:482
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:173
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:485
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:174
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:127
msgctxt "@action:button"
msgid "Close"
@@ -728,29 +739,36 @@ msgstr ""
"
Scopri come garantire la migliore qualità ed affidabilità di stampa.
"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:535
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:540
#, python-brace-format
msgctxt "@info:status Don't translate the XML tags or !"
msgid "Project file {0} contains an unknown machine type {1}. Cannot import the machine. Models will be imported instead."
msgstr "Il file di progetto {0} contiene un tipo di macchina sconosciuto {1}. Impossibile importare la macchina. Verranno invece importati i modelli."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:538
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:543
msgctxt "@info:title"
msgid "Open Project File"
msgstr "Apri file progetto"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:634
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:639
#, python-brace-format
msgctxt "@info:error Don't translate the XML tags or !"
msgid "Project file {0} is suddenly inaccessible: {1}."
msgstr "Il file di progetto {0} è diventato improvvisamente inaccessibile: {1}."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:635
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:640
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:647
msgctxt "@info:title"
msgid "Can't Open Project File"
msgstr "Impossibile aprire il file di progetto"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:686
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:646
+#, python-brace-format
+msgctxt "@info:error Don't translate the XML tags or !"
+msgid "Project file {0} is corrupt: {1}."
+msgstr "Il file di progetto {0} è danneggiato: {1}."
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:698
#, python-brace-format
msgctxt "@info:error Don't translate the XML tag !"
msgid "Project file {0} is made using profiles that are unknown to this version of Ultimaker Cura."
@@ -788,7 +806,7 @@ msgctxt "@error:zip"
msgid "The operating system does not allow saving a project file to this location or with this file name."
msgstr "Il sistema operativo non consente di salvare un file di progetto in questa posizione o con questo nome file."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWriter.py:185
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWriter.py:206
msgctxt "@error:zip"
msgid "Error writing 3mf file."
msgstr "Errore scrittura file 3MF."
@@ -843,8 +861,8 @@ msgctxt "@error:file_size"
msgid "The backup exceeds the maximum file size."
msgstr "Il backup supera la dimensione file massima."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DriveApiService.py:82
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/RestoreBackupJob.py:23
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DriveApiService.py:86
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/RestoreBackupJob.py:26
msgctxt "@info:backup_status"
msgid "There was an error trying to restore your backup."
msgstr "Si è verificato un errore cercando di ripristinare il backup."
@@ -854,45 +872,45 @@ msgctxt "@item:inmenu"
msgid "Manage backups"
msgstr "Gestione backup"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:356
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:382
msgctxt "@info:status"
msgid "Unable to slice with the current material as it is incompatible with the selected machine or configuration."
msgstr "Impossibile eseguire il sezionamento con il materiale corrente in quanto incompatibile con la macchina o la configurazione selezionata."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:356
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:387
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:411
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:420
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:429
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:441
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:382
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:413
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:437
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:446
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:455
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:467
msgctxt "@info:title"
msgid "Unable to slice"
msgstr "Sezionamento impossibile"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:386
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:412
#, python-brace-format
msgctxt "@info:status"
msgid "Unable to slice with the current settings. The following settings have errors: {0}"
msgstr "Impossibile eseguire il sezionamento con le impostazioni attuali. Le seguenti impostazioni presentano errori: {0}"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:410
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:436
#, python-brace-format
msgctxt "@info:status"
msgid "Unable to slice due to some per-model settings. The following settings have errors on one or more models: {error_labels}"
msgstr "Impossibile eseguire il sezionamento a causa di alcune impostazioni per modello. Le seguenti impostazioni presentano errori su uno o più modelli: {error_labels}"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:419
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:445
msgctxt "@info:status"
msgid "Unable to slice because the prime tower or prime position(s) are invalid."
msgstr "Impossibile eseguire il sezionamento perché la torre di innesco o la posizione di innesco non sono valide."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:428
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:454
#, python-format
msgctxt "@info:status"
msgid "Unable to slice because there are objects associated with disabled Extruder %s."
msgstr "Impossibile effettuare il sezionamento in quanto vi sono oggetti associati a Extruder %s disabilitato."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:437
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:463
msgctxt "@info:status"
msgid ""
"Please review settings and check if your models:\n"
@@ -1161,28 +1179,28 @@ msgctxt "@item:intext"
msgid "Removable Drive"
msgstr "Unità rimovibile"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:121
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:128
msgctxt "@info:status"
msgid "Cura does not accurately display layers when Wire Printing is enabled."
msgstr "Cura non visualizza in modo accurato i layer se la funzione Wire Printing è abilitata."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:122
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:129
msgctxt "@info:title"
msgid "Simulation View"
msgstr "Vista simulazione"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:123
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:130
msgctxt "@info:status"
msgid "Nothing is shown because you need to slice first."
msgstr "Non viene visualizzato nulla poiché è necessario prima effetuare lo slicing."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:123
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:130
msgctxt "@info:title"
msgid "No layers to show"
msgstr "Nessun layer da visualizzare"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:124
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:73
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:131
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:74
msgctxt "@info:option_text"
msgid "Do not show this message again"
msgstr "Non mostrare nuovamente questo messaggio"
@@ -1192,16 +1210,21 @@ msgctxt "@item:inlistbox"
msgid "Layer view"
msgstr "Visualizzazione strato"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:70
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:71
msgctxt "@info:status"
-msgid "Your model is not manifold. The highlighted areas indicate either missing or extraneous surfaces."
-msgstr "Il modello in uso non è multiforme. Le aree evidenziate indicano superfici mancanti o estranee."
+msgid "The highlighted areas indicate either missing or extraneous surfaces. Fix your model and open it again into Cura."
+msgstr "Le aree evidenziate indicano superfici mancanti o estranee. Correggi il modello e aprilo nuovamente in Cura."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:72
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:73
msgctxt "@info:title"
-msgid "Model errors"
+msgid "Model Errors"
msgstr "Errori modello"
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:79
+msgctxt "@action:button"
+msgid "Learn more"
+msgstr "Ulteriori informazioni"
+
#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/__init__.py:12
msgctxt "@item:inmenu"
msgid "Solid view"
@@ -1228,7 +1251,7 @@ msgctxt "@info:title"
msgid "Changes detected from your Ultimaker account"
msgstr "Modifiche rilevate dal tuo account Ultimaker"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py:146
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py:145
msgctxt "@action:button"
msgid "Sync"
msgstr "Sincronizza"
@@ -1264,7 +1287,7 @@ msgctxt "@info:generic"
msgid "You need to quit and restart {} before changes have effect."
msgstr "Affinché le modifiche diventino effettive, è necessario chiudere e riavviare {}."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/SyncOrchestrator.py:76
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/SyncOrchestrator.py:79
msgctxt "@info:generic"
msgid "{} plugins failed to download"
msgstr "Impossibile scaricare i plugin {}"
@@ -1305,7 +1328,11 @@ msgctxt "@item:inlistbox"
msgid "Ultimaker Format Package"
msgstr "Pacchetto formato Ultimaker"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:146
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:57
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:72
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:94
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:149
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:159
msgctxt "@info:error"
msgid "Can't write to UFP file:"
msgstr "Impossibile scrivere nel file UFP:"
@@ -1320,22 +1347,22 @@ msgctxt "@action"
msgid "Select upgrades"
msgstr "Seleziona aggiornamenti"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:152
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:154
msgctxt "@action:button"
msgid "Print via cloud"
msgstr "Stampa tramite cloud"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:153
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:155
msgctxt "@properties:tooltip"
msgid "Print via cloud"
msgstr "Stampa tramite cloud"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:154
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:156
msgctxt "@info:status"
msgid "Connected via cloud"
msgstr "Collegato tramite cloud"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:264
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:270
#, python-brace-format
msgctxt "@error:send"
msgid "Unknown error code when uploading print job: {0}"
@@ -1435,15 +1462,21 @@ msgid ""
msgid_plural ""
"You are about to remove {0} printers from Cura. This action cannot be undone.\n"
"Are you sure you want to continue?"
-msgstr[0] "Si sta per rimuovere {0} stampante da Cura. Questa azione non può essere annullata.\nContinuare?"
-msgstr[1] "Si stanno per rimuovere {0} stampanti da Cura. Questa azione non può essere annullata.\nContinuare?"
+msgstr[0] ""
+"Si sta per rimuovere {0} stampante da Cura. Questa azione non può essere annullata.\n"
+"Continuare?"
+msgstr[1] ""
+"Si stanno per rimuovere {0} stampanti da Cura. Questa azione non può essere annullata.\n"
+"Continuare?"
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:468
msgctxt "@label"
msgid ""
"You are about to remove all printers from Cura. This action cannot be undone.\n"
"Are you sure you want to continue?"
-msgstr "Si stanno per rimuovere tutte le stampanti da Cura. Questa azione non può essere annullata. \nContinuare?"
+msgstr ""
+"Si stanno per rimuovere tutte le stampanti da Cura. Questa azione non può essere annullata. \n"
+"Continuare?"
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Messages/CloudFlowMessage.py:27
msgctxt "@info:status"
@@ -1627,82 +1660,82 @@ msgctxt "@info:tooltip"
msgid "Some things could be problematic in this print. Click to see tips for adjustment."
msgstr "Alcune parti potrebbero risultare problematiche in questa stampa. Fare click per visualizzare i suggerimenti per la regolazione."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:14
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:15
msgctxt "@title:window"
msgid "Open Project"
msgstr "Apri progetto"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:61
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:62
msgctxt "@action:ComboBox Update/override existing profile"
msgid "Update existing"
msgstr "Aggiorna esistente"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:62
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:63
msgctxt "@action:ComboBox Save settings in a new profile"
msgid "Create new"
msgstr "Crea nuovo"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:74
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:75
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:69
msgctxt "@action:title"
msgid "Summary - Cura Project"
msgstr "Riepilogo - Progetto Cura"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:96
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:97
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:93
msgctxt "@action:label"
msgid "Printer settings"
msgstr "Impostazioni della stampante"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:112
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:113
msgctxt "@info:tooltip"
msgid "How should the conflict in the machine be resolved?"
msgstr "Come può essere risolto il conflitto nella macchina?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:165
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:167
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:102
msgctxt "@action:label"
msgid "Type"
msgstr "Tipo"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:181
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:183
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:117
msgctxt "@action:label"
msgid "Printer Group"
msgstr "Gruppo stampanti"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:203
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:205
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:218
msgctxt "@action:label"
msgid "Profile settings"
msgstr "Impostazioni profilo"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:219
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:221
msgctxt "@info:tooltip"
msgid "How should the conflict in the profile be resolved?"
msgstr "Come può essere risolto il conflitto nel profilo?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:239
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:349
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:242
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:353
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:117
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:242
msgctxt "@action:label"
msgid "Name"
msgstr "Nome"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:255
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:258
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:259
msgctxt "@action:label"
msgid "Intent"
msgstr "Intent"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:271
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:274
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:226
msgctxt "@action:label"
msgid "Not in profile"
msgstr "Non nel profilo"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:276
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:279
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:231
msgctxt "@action:label"
msgid "%1 override"
@@ -1710,54 +1743,54 @@ msgid_plural "%1 overrides"
msgstr[0] "%1 override"
msgstr[1] "%1 override"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:287
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:290
msgctxt "@action:label"
msgid "Derivative from"
msgstr "Derivato da"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:292
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:295
msgctxt "@action:label"
msgid "%1, %2 override"
msgid_plural "%1, %2 overrides"
msgstr[0] "%1, %2 override"
msgstr[1] "%1, %2 override"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:309
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:312
msgctxt "@action:label"
msgid "Material settings"
msgstr "Impostazioni materiale"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:325
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:328
msgctxt "@info:tooltip"
msgid "How should the conflict in the material be resolved?"
msgstr "Come può essere risolto il conflitto nel materiale?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:369
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:373
msgctxt "@action:label"
msgid "Setting visibility"
msgstr "Impostazione visibilità"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:378
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:382
msgctxt "@action:label"
msgid "Mode"
msgstr "Modalità"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:394
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:398
msgctxt "@action:label"
msgid "Visible settings:"
msgstr "Impostazioni visibili:"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:399
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:403
msgctxt "@action:label"
msgid "%1 out of %2"
msgstr "%1 su %2"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:425
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:429
msgctxt "@action:warning"
msgid "Loading a project will clear all models on the build plate."
msgstr "Il caricamento di un progetto annulla tutti i modelli sul piano di stampa."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:453
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:457
msgctxt "@action:button"
msgid "Open"
msgstr "Apri"
@@ -1859,8 +1892,8 @@ msgstr "Backup e sincronizzazione delle impostazioni Cura."
#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/qml/pages/WelcomePage.qml:51
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/WelcomePage.qml:39
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:68
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:125
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:53
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:199
msgctxt "@button"
msgid "Sign in"
msgstr "Accedi"
@@ -2094,12 +2127,12 @@ msgctxt "@label"
msgid "Cooling Fan Number"
msgstr "Numero ventola di raffreddamento"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:162
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:163
msgctxt "@title:label"
msgid "Extruder Start G-code"
msgstr "Codice G avvio estrusore"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:176
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:177
msgctxt "@title:label"
msgid "Extruder End G-code"
msgstr "Codice G fine estrusore"
@@ -2184,12 +2217,17 @@ msgctxt "@label"
msgid "Number of Extruders"
msgstr "Numero di estrusori"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:374
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:345
+msgctxt "@label"
+msgid "Apply Extruder offsets to GCode"
+msgstr "Applica offset estrusore a gcode"
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:393
msgctxt "@title:label"
msgid "Start G-code"
msgstr "Codice G avvio"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:385
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:404
msgctxt "@title:label"
msgid "End G-code"
msgstr "Codice G fine"
@@ -2217,6 +2255,11 @@ msgctxt "@label link to technical assistance"
msgid "View user manuals online"
msgstr "Visualizza i manuali utente online"
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MonitorStage/MonitorMain.qml:172
+msgctxt "@info"
+msgid "In order to monitor your print from Cura, please connect the printer."
+msgstr "Al fine di monitorare la stampa da Cura, collegare la stampante."
+
#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml:42
msgctxt "@label"
msgid "Mesh Type"
@@ -2263,7 +2306,7 @@ msgid "Select Settings to Customize for this model"
msgstr "Seleziona impostazioni di personalizzazione per questo modello"
#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:55
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:94
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:96
msgctxt "@label:textbox"
msgid "Filter..."
msgstr "Filtro..."
@@ -2273,32 +2316,32 @@ msgctxt "@label:checkbox"
msgid "Show all"
msgstr "Mostra tutto"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:18
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:20
msgctxt "@title:window"
msgid "Post Processing Plugin"
msgstr "Plug-in di post-elaborazione"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:57
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:59
msgctxt "@label"
msgid "Post Processing Scripts"
msgstr "Script di post-elaborazione"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:233
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:235
msgctxt "@action"
msgid "Add a script"
msgstr "Aggiungi uno script"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:279
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:282
msgctxt "@label"
msgid "Settings"
msgstr "Impostazioni"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:499
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:502
msgctxt "@info:tooltip"
msgid "Change active post-processing scripts."
msgstr "Modificare gli script di post-elaborazione attivi."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:503
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:506
msgctxt "@info:tooltip"
msgid "The following script is active:"
msgid_plural "The following scripts are active:"
@@ -2311,78 +2354,93 @@ msgctxt "@label"
msgid "Color scheme"
msgstr "Schema colori"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:107
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:110
msgctxt "@label:listbox"
msgid "Material Color"
msgstr "Colore materiale"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:111
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:114
msgctxt "@label:listbox"
msgid "Line Type"
msgstr "Tipo di linea"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:115
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:118
msgctxt "@label:listbox"
msgid "Speed"
msgstr "Velocità"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:119
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:122
msgctxt "@label:listbox"
-msgid "Layer thickness"
-msgstr "Spessore strato"
+msgid "Layer Thickness"
+msgstr "Spessore layer"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:156
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:126
+msgctxt "@label:listbox"
+msgid "Line Width"
+msgstr "Larghezza della linea"
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:130
+msgctxt "@label:listbox"
+msgid "Flow"
+msgstr "Flusso"
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:171
msgctxt "@label"
msgid "Compatibility Mode"
msgstr "Modalità di compatibilità"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:230
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:245
msgctxt "@label"
msgid "Travels"
msgstr "Spostamenti"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:236
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:251
msgctxt "@label"
msgid "Helpers"
msgstr "Helper"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:242
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:257
msgctxt "@label"
msgid "Shell"
msgstr "Guscio"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:248
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:263
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedInfillDensitySelector.qml:65
msgctxt "@label"
msgid "Infill"
msgstr "Riempimento"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:298
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:271
+msgctxt "@label"
+msgid "Starts"
+msgstr "Avvia"
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:322
msgctxt "@label"
msgid "Only Show Top Layers"
msgstr "Mostra solo strati superiori"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:308
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:332
msgctxt "@label"
msgid "Show 5 Detailed Layers On Top"
msgstr "Mostra 5 strati superiori in dettaglio"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:322
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:346
msgctxt "@label"
msgid "Top / Bottom"
msgstr "Superiore / Inferiore"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:326
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:350
msgctxt "@label"
msgid "Inner Wall"
msgstr "Parete interna"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:384
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:419
msgctxt "@label"
msgid "min"
msgstr "min."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:433
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:488
msgctxt "@label"
msgid "max"
msgstr "max."
@@ -2523,7 +2581,7 @@ msgid "Plugins"
msgstr "Plugin"
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxHeader.qml:44
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:466
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:457
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:89
msgctxt "@title:tab"
msgid "Materials"
@@ -2572,6 +2630,7 @@ msgstr "Rimuovi"
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/dialogs/CompatibilityDialog.qml:23
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:123
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/FirstStartMachineActionsContent.qml:77
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:178
msgctxt "@button"
msgid "Next"
msgstr "Avanti"
@@ -2915,7 +2974,7 @@ msgid "Delete"
msgstr "Cancella"
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:100
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:289
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:290
msgctxt "@label"
msgid "Resume"
msgstr "Riprendi"
@@ -2931,8 +2990,8 @@ msgid "Resuming..."
msgstr "Ripresa in corso..."
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:106
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:284
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:293
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:285
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:294
msgctxt "@label"
msgid "Pause"
msgstr "Pausa"
@@ -2973,7 +3032,7 @@ msgid "Are you sure you want to abort %1?"
msgstr "Sei sicuro di voler interrompere %1?"
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:164
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:335
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:336
msgctxt "@window:title"
msgid "Abort print"
msgstr "Interrompi la stampa"
@@ -2984,7 +3043,7 @@ msgid "Manage printer"
msgstr "Gestione stampanti"
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:254
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:519
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:523
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:250
msgctxt "@info"
msgid "Please update your printer's firmware to manage the queue remotely."
@@ -3010,27 +3069,34 @@ msgctxt "@label:status"
msgid "Idle"
msgstr "Ferma"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:365
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:364
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:84
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:86
+msgctxt "@label:status"
+msgid "Preparing..."
+msgstr "Preparazione in corso..."
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:369
msgctxt "@label:status"
msgid "Printing"
msgstr "Stampa in corso"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:406
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:410
msgctxt "@label"
msgid "Untitled"
msgstr "Senza titolo"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:427
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:431
msgctxt "@label"
msgid "Anonymous"
msgstr "Anonimo"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:454
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:458
msgctxt "@label:status"
msgid "Requires configuration changes"
msgstr "Richiede modifiche di configurazione"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:492
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:496
msgctxt "@action:button"
msgid "Details"
msgstr "Dettagli"
@@ -3057,12 +3123,6 @@ msgctxt "@label:status"
msgid "Finished"
msgstr "Terminato"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:84
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:86
-msgctxt "@label:status"
-msgid "Preparing..."
-msgstr "Preparazione in corso..."
-
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:88
msgctxt "@label:status"
msgid "Aborting..."
@@ -3143,27 +3203,26 @@ msgctxt "@action:button"
msgid "Sign in"
msgstr "Accedi"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:40
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:20
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:64
msgctxt "@label"
-msgid "Your key to connected 3D printing"
-msgstr "La chiave per la stampa 3D connessa"
+msgid "Sign in to the Ultimaker platform"
+msgstr "Accedi alla piattaforma Ultimaker"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:51
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:42
msgctxt "@text"
msgid ""
-"- Customize your experience with more print profiles and plugins\n"
-"- Stay flexible by syncing your setup and loading it anywhere\n"
-"- Increase efficiency with a remote workflow on Ultimaker printers"
+"- Add material profiles and plug-ins from the Marketplace\n"
+"- Back-up and sync your material profiles and plug-ins\n"
+"- Share ideas and get help from 48,000+ users in the Ultimaker community"
msgstr ""
-"- Personalizza la tua esperienza con più profili di stampa e plugin\n"
-"- Mantieni la flessibilità sincronizzando la configurazione e caricandola ovunque\n"
-"- Aumenta l'efficienza grazie a un flusso di lavoro remoto sulle stampanti Ultimaker"
+"- Aggiungi profili materiale e plugin dal Marketplace\n"
+"- Esegui il backup e la sincronizzazione dei profili materiale e dei plugin⏎- Condividi idee e ottieni supporto da più di 48.000 utenti nella community di Ultimaker"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:78
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:142
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:62
msgctxt "@button"
-msgid "Create account"
-msgstr "Crea account"
+msgid "Create a free Ultimaker account"
+msgstr "Crea un account Ultimaker gratuito"
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/SyncState.qml:28
msgctxt "@label"
@@ -3270,309 +3329,308 @@ msgctxt "@button"
msgid "Cancel"
msgstr "Annulla"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:82
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:83
msgctxt "@action:inmenu"
msgid "Show Online Troubleshooting Guide"
msgstr "Mostra la Guida ricerca e riparazione dei guasti online"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:89
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:90
msgctxt "@action:inmenu"
msgid "Toggle Full Screen"
msgstr "Attiva/disattiva schermo intero"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:97
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:98
msgctxt "@action:inmenu"
msgid "Exit Full Screen"
msgstr "Esci da schermo intero"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:104
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:105
msgctxt "@action:inmenu menubar:edit"
msgid "&Undo"
msgstr "&Annulla"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:114
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:115
msgctxt "@action:inmenu menubar:edit"
msgid "&Redo"
msgstr "Ri&peti"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:124
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:125
msgctxt "@action:inmenu menubar:file"
msgid "&Quit"
msgstr "&Esci"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:132
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:133
msgctxt "@action:inmenu menubar:view"
msgid "3D View"
msgstr "Visualizzazione 3D"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:139
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:140
msgctxt "@action:inmenu menubar:view"
msgid "Front View"
msgstr "Visualizzazione frontale"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:146
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:147
msgctxt "@action:inmenu menubar:view"
msgid "Top View"
msgstr "Visualizzazione superiore"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:153
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:154
+msgctxt "@action:inmenu menubar:view"
+msgid "Bottom View"
+msgstr "Vista inferiore"
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:161
msgctxt "@action:inmenu menubar:view"
msgid "Left Side View"
msgstr "Visualizzazione lato sinistro"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:160
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:168
msgctxt "@action:inmenu menubar:view"
msgid "Right Side View"
msgstr "Visualizzazione lato destro"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:167
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:175
msgctxt "@action:inmenu"
msgid "Configure Cura..."
msgstr "Configura Cura..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:174
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:182
msgctxt "@action:inmenu menubar:printer"
msgid "&Add Printer..."
msgstr "&Aggiungi stampante..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:180
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:188
msgctxt "@action:inmenu menubar:printer"
msgid "Manage Pr&inters..."
msgstr "Gestione stampanti..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:187
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:195
msgctxt "@action:inmenu"
msgid "Manage Materials..."
msgstr "Gestione materiali..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:195
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:203
msgctxt "@action:inmenu"
msgid "Add more materials from Marketplace"
msgstr "Aggiungere altri materiali da Marketplace"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:202
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:210
msgctxt "@action:inmenu menubar:profile"
msgid "&Update profile with current settings/overrides"
msgstr "&Aggiorna il profilo con le impostazioni/esclusioni correnti"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:210
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:218
msgctxt "@action:inmenu menubar:profile"
msgid "&Discard current changes"
msgstr "&Elimina le modifiche correnti"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:222
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:230
msgctxt "@action:inmenu menubar:profile"
msgid "&Create profile from current settings/overrides..."
msgstr "&Crea profilo dalle impostazioni/esclusioni correnti..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:228
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:236
msgctxt "@action:inmenu menubar:profile"
msgid "Manage Profiles..."
msgstr "Gestione profili..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:236
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:244
msgctxt "@action:inmenu menubar:help"
msgid "Show Online &Documentation"
msgstr "Mostra documentazione &online"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:244
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:252
msgctxt "@action:inmenu menubar:help"
msgid "Report a &Bug"
msgstr "Se&gnala un errore"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:252
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:260
msgctxt "@action:inmenu menubar:help"
msgid "What's New"
msgstr "Scopri le novità"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:258
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:266
msgctxt "@action:inmenu menubar:help"
msgid "About..."
msgstr "Informazioni..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:265
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:273
msgctxt "@action:inmenu menubar:edit"
-msgid "Delete Selected Model"
-msgid_plural "Delete Selected Models"
-msgstr[0] "Cancella modello selezionato"
-msgstr[1] "Cancella modelli selezionati"
+msgid "Delete Selected"
+msgstr "Cancella selezionati"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:275
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:283
msgctxt "@action:inmenu menubar:edit"
-msgid "Center Selected Model"
-msgid_plural "Center Selected Models"
-msgstr[0] "Centra modello selezionato"
-msgstr[1] "Centra modelli selezionati"
+msgid "Center Selected"
+msgstr "Centra selezionati"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:284
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:292
msgctxt "@action:inmenu menubar:edit"
-msgid "Multiply Selected Model"
-msgid_plural "Multiply Selected Models"
-msgstr[0] "Moltiplica modello selezionato"
-msgstr[1] "Moltiplica modelli selezionati"
+msgid "Multiply Selected"
+msgstr "Moltiplica selezionati"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:293
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:301
msgctxt "@action:inmenu"
msgid "Delete Model"
msgstr "Elimina modello"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:301
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:309
msgctxt "@action:inmenu"
msgid "Ce&nter Model on Platform"
msgstr "C&entra modello su piattaforma"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:307
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:315
msgctxt "@action:inmenu menubar:edit"
msgid "&Group Models"
msgstr "&Raggruppa modelli"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:327
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:335
msgctxt "@action:inmenu menubar:edit"
msgid "Ungroup Models"
msgstr "Separa modelli"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:337
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:345
msgctxt "@action:inmenu menubar:edit"
msgid "&Merge Models"
msgstr "&Unisci modelli"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:347
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:355
msgctxt "@action:inmenu"
msgid "&Multiply Model..."
msgstr "Mo<iplica modello..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:354
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:362
msgctxt "@action:inmenu menubar:edit"
msgid "Select All Models"
msgstr "Seleziona tutti i modelli"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:364
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:372
msgctxt "@action:inmenu menubar:edit"
msgid "Clear Build Plate"
msgstr "Cancellare piano di stampa"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:374
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:382
msgctxt "@action:inmenu menubar:file"
msgid "Reload All Models"
msgstr "Ricarica tutti i modelli"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:383
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:391
msgctxt "@action:inmenu menubar:edit"
msgid "Arrange All Models To All Build Plates"
msgstr "Sistema tutti i modelli su tutti i piani di stampa"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:390
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:398
msgctxt "@action:inmenu menubar:edit"
msgid "Arrange All Models"
msgstr "Sistema tutti i modelli"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:398
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:406
msgctxt "@action:inmenu menubar:edit"
msgid "Arrange Selection"
msgstr "Sistema selezione"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:405
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:413
msgctxt "@action:inmenu menubar:edit"
msgid "Reset All Model Positions"
msgstr "Reimposta tutte le posizioni dei modelli"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:412
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:420
msgctxt "@action:inmenu menubar:edit"
msgid "Reset All Model Transformations"
msgstr "Reimposta tutte le trasformazioni dei modelli"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:419
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:429
msgctxt "@action:inmenu menubar:file"
msgid "&Open File(s)..."
msgstr "&Apri file..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:427
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:439
msgctxt "@action:inmenu menubar:file"
msgid "&New Project..."
msgstr "&Nuovo Progetto..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:434
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:446
msgctxt "@action:inmenu menubar:help"
msgid "Show Configuration Folder"
msgstr "Mostra cartella di configurazione"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:441
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:538
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:453
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:550
msgctxt "@action:menu"
msgid "Configure setting visibility..."
msgstr "Configura visibilità delle impostazioni..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:448
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:460
msgctxt "@action:menu"
msgid "&Marketplace"
msgstr "&Mercato"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:266
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:257
msgctxt "@label"
msgid "This package will be installed after restarting."
msgstr "Questo pacchetto sarà installato dopo il riavvio."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:459
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:15
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:450
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:17
msgctxt "@title:tab"
msgid "General"
msgstr "Generale"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:462
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:453
msgctxt "@title:tab"
msgid "Settings"
msgstr "Impostazioni"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:464
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:455
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:16
msgctxt "@title:tab"
msgid "Printers"
msgstr "Stampanti"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:468
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:459
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:34
msgctxt "@title:tab"
msgid "Profiles"
msgstr "Profili"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:587
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:576
msgctxt "@title:window %1 is the application name"
msgid "Closing %1"
msgstr "Chiusura di %1"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:588
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:600
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:577
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:589
msgctxt "@label %1 is the application name"
msgid "Are you sure you want to exit %1?"
msgstr "Chiudere %1?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:638
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:627
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:19
msgctxt "@title:window"
msgid "Open file(s)"
msgstr "Apri file"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:744
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:737
msgctxt "@window:title"
msgid "Install Package"
msgstr "Installa il pacchetto"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:752
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:745
msgctxt "@title:window"
msgid "Open File(s)"
msgstr "Apri file"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:755
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:748
msgctxt "@text:window"
msgid "We have found one or more G-Code files within the files you have selected. You can only open one G-Code file at a time. If you want to open a G-Code file, please just select only one."
msgstr "Rilevata la presenza di uno o più file codice G tra i file selezionati. È possibile aprire solo un file codice G alla volta. Se desideri aprire un file codice G, selezionane uno solo."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:858
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:857
msgctxt "@title:window"
msgid "Add Printer"
msgstr "Aggiungi stampante"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:866
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:865
msgctxt "@title:window"
msgid "What's New"
msgstr "Scopri le novità"
@@ -3722,17 +3780,27 @@ msgctxt "@label"
msgid "Python bindings for libnest2d"
msgstr "Vincoli Python per libnest2d"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:161
+msgctxt "@label"
+msgid "Support library for system keyring access"
+msgstr "Libreria di supporto per accesso a keyring sistema"
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:162
msgctxt "@label"
+msgid "Python extensions for Microsoft Windows"
+msgstr "Estensioni Python per Microsoft Windows"
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:163
+msgctxt "@label"
msgid "Font"
msgstr "Font"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:163
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:164
msgctxt "@label"
msgid "SVG icons"
msgstr "Icone SVG"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:164
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:165
msgctxt "@label"
msgid "Linux cross-distribution application deployment"
msgstr "Apertura applicazione distribuzione incrociata Linux"
@@ -3742,22 +3810,22 @@ msgctxt "@title:window"
msgid "Open project file"
msgstr "Apri file progetto"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:93
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:88
msgctxt "@text:window"
msgid "This is a Cura project file. Would you like to open it as a project or import the models from it?"
msgstr "Questo è un file progetto Cura. Vuoi aprirlo come progetto o importarne i modelli?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:103
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:98
msgctxt "@text:window"
msgid "Remember my choice"
msgstr "Ricorda la scelta"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:122
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:117
msgctxt "@action:button"
msgid "Open as project"
msgstr "Apri come progetto"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:131
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:126
msgctxt "@action:button"
msgid "Import models"
msgstr "Importa i modelli"
@@ -3773,8 +3841,10 @@ msgid ""
"You have customized some profile settings.\n"
"Would you like to Keep these changed settings after switching profiles?\n"
"Alternatively, you can discard the changes to load the defaults from '%1'."
-msgstr "Alcune impostazioni di profilo sono state personalizzate.\nMantenere queste impostazioni modificate dopo il cambio dei profili?\nIn alternativa, è possibile"
-" eliminare le modifiche per caricare i valori predefiniti da '%1'."
+msgstr ""
+"Alcune impostazioni di profilo sono state personalizzate.\n"
+"Mantenere queste impostazioni modificate dopo il cambio dei profili?\n"
+"In alternativa, è possibile eliminare le modifiche per caricare i valori predefiniti da '%1'."
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:111
msgctxt "@title:column"
@@ -3787,7 +3857,7 @@ msgid "Current changes"
msgstr "Modifiche correnti"
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:158
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:747
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:733
msgctxt "@option:discardOrKeep"
msgid "Always ask me this"
msgstr "Chiedi sempre"
@@ -3812,12 +3882,12 @@ msgctxt "@action:button"
msgid "Keep changes"
msgstr "Mantieni modifiche"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:64
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:59
msgctxt "@text:window"
msgid "We have found one or more project file(s) within the files you have selected. You can open only one project file at a time. We suggest to only import models from those files. Would you like to proceed?"
msgstr "Rilevata la presenza di uno o più file progetto tra i file selezionati. È possibile aprire solo un file progetto alla volta. Si suggerisce di importare i modelli solo da tali file. Vuoi procedere?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:99
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:94
msgctxt "@action:button"
msgid "Import all as models"
msgstr "Importa tutto come modelli"
@@ -3972,7 +4042,7 @@ msgctxt "@label"
msgid "Material"
msgstr "Materiale"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/CustomConfiguration.qml:394
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/CustomConfiguration.qml:407
msgctxt "@label"
msgid "Use glue for better adhesion with this material combination."
msgstr "Utilizzare la colla per una migliore adesione con questa combinazione di materiali."
@@ -3996,17 +4066,17 @@ msgctxt "@label"
msgid "Number of Copies"
msgstr "Numero di copie"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:33
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:41
msgctxt "@title:menu menubar:file"
msgid "&Save Project..."
msgstr "&Salva progetto..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:54
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:74
msgctxt "@title:menu menubar:file"
msgid "&Export..."
msgstr "&Esporta..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:65
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:85
msgctxt "@action:inmenu menubar:file"
msgid "Export Selection..."
msgstr "Esporta selezione..."
@@ -4026,6 +4096,11 @@ msgctxt "@label:category menu label"
msgid "Generic"
msgstr "Generale"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/OpenFilesMenu.qml:15
+msgctxt "@title:menu menubar:file"
+msgid "Open File(s)..."
+msgstr "Apri file..."
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/PrinterMenu.qml:25
msgctxt "@label:category menu label"
msgid "Network enabled printers"
@@ -4041,6 +4116,11 @@ msgctxt "@title:menu menubar:file"
msgid "Open &Recent"
msgstr "Ap&ri recenti"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SaveProjectMenu.qml:15
+msgctxt "@title:menu menubar:file"
+msgid "Save Project..."
+msgstr "Salva progetto..."
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingsMenu.qml:15
msgctxt "@title:menu menubar:settings"
msgid "&Printer"
@@ -4066,17 +4146,17 @@ msgctxt "@action:inmenu"
msgid "Disable Extruder"
msgstr "Disabilita estrusore"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:13
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:16
msgctxt "@action:inmenu"
msgid "Visible Settings"
msgstr "Impostazioni visibili"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:42
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:45
msgctxt "@action:inmenu"
msgid "Collapse All Categories"
msgstr "Comprimi tutte le categorie"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:51
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:54
msgctxt "@action:inmenu"
msgid "Manage Setting Visibility..."
msgstr "Gestisci Impostazione visibilità..."
@@ -4086,22 +4166,22 @@ msgctxt "@action:inmenu menubar:view"
msgid "&Camera position"
msgstr "&Posizione fotocamera"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:44
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:45
msgctxt "@action:inmenu menubar:view"
msgid "Camera view"
msgstr "Visualizzazione fotocamera"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:47
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:48
msgctxt "@action:inmenu menubar:view"
msgid "Perspective"
msgstr "Prospettiva"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:59
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:60
msgctxt "@action:inmenu menubar:view"
msgid "Orthographic"
msgstr "Ortogonale"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:80
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:81
msgctxt "@action:inmenu menubar:view"
msgid "&Build plate"
msgstr "P&iano di stampa"
@@ -4146,12 +4226,12 @@ msgctxt "@label:MonitorStatus"
msgid "Please remove the print"
msgstr "Rimuovere la stampa"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:325
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:326
msgctxt "@label"
msgid "Abort Print"
msgstr "Interrompi la stampa"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:337
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:338
msgctxt "@label"
msgid "Are you sure you want to abort the print?"
msgstr "Sei sicuro di voler interrompere la stampa?"
@@ -4193,301 +4273,301 @@ msgctxt "@label"
msgid "Interface"
msgstr "Interfaccia"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:216
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:209
msgctxt "@label"
msgid "Currency:"
msgstr "Valuta:"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:229
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:222
msgctxt "@label"
msgid "Theme:"
msgstr "Tema:"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:285
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:267
msgctxt "@label"
msgid "You will need to restart the application for these changes to have effect."
msgstr "Riavviare l'applicazione per rendere effettive le modifiche."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:302
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:284
msgctxt "@info:tooltip"
msgid "Slice automatically when changing settings."
msgstr "Seziona automaticamente alla modifica delle impostazioni."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:310
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:292
msgctxt "@option:check"
msgid "Slice automatically"
msgstr "Seziona automaticamente"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:324
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:306
msgctxt "@label"
msgid "Viewport behavior"
msgstr "Comportamento del riquadro di visualizzazione"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:332
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:314
msgctxt "@info:tooltip"
msgid "Highlight unsupported areas of the model in red. Without support these areas will not print properly."
msgstr "Evidenzia in rosso le zone non supportate del modello. In assenza di supporto, queste aree non saranno stampate in modo corretto."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:341
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:323
msgctxt "@option:check"
msgid "Display overhang"
msgstr "Visualizza sbalzo"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:351
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:333
msgctxt "@info:tooltip"
msgid "Highlight missing or extraneous surfaces of the model using warning signs. The toolpaths will often be missing parts of the intended geometry."
msgstr "Evidenziare le superfici mancanti o estranee del modello utilizzando i simboli di avvertenza. I percorsi degli utensili spesso ignoreranno parti della geometria prevista."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:360
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:342
msgctxt "@option:check"
msgid "Display model errors"
msgstr "Visualizzare gli errori del modello"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:368
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:350
msgctxt "@info:tooltip"
msgid "Moves the camera so the model is in the center of the view when a model is selected"
msgstr "Sposta la fotocamera in modo che il modello si trovi al centro della visualizzazione quando è selezionato"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:373
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:355
msgctxt "@action:button"
msgid "Center camera when item is selected"
msgstr "Centratura fotocamera alla selezione dell'elemento"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:383
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:365
msgctxt "@info:tooltip"
msgid "Should the default zoom behavior of cura be inverted?"
msgstr "Il comportamento dello zoom predefinito di Cura dovrebbe essere invertito?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:388
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:370
msgctxt "@action:button"
msgid "Invert the direction of camera zoom."
msgstr "Inverti la direzione dello zoom della fotocamera."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:404
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:386
msgctxt "@info:tooltip"
msgid "Should zooming move in the direction of the mouse?"
msgstr "Lo zoom si muove nella direzione del mouse?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:404
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:386
msgctxt "@info:tooltip"
msgid "Zooming towards the mouse is not supported in the orthographic perspective."
msgstr "Nella prospettiva ortogonale lo zoom verso la direzione del mouse non è supportato."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:409
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:391
msgctxt "@action:button"
msgid "Zoom toward mouse direction"
msgstr "Zoom verso la direzione del mouse"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:435
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:417
msgctxt "@info:tooltip"
msgid "Should models on the platform be moved so that they no longer intersect?"
msgstr "I modelli sull’area di stampa devono essere spostati per evitare intersezioni?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:440
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:422
msgctxt "@option:check"
msgid "Ensure models are kept apart"
msgstr "Assicurarsi che i modelli siano mantenuti separati"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:449
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:431
msgctxt "@info:tooltip"
msgid "Should models on the platform be moved down to touch the build plate?"
msgstr "I modelli sull’area di stampa devono essere portati a contatto del piano di stampa?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:454
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:436
msgctxt "@option:check"
msgid "Automatically drop models to the build plate"
msgstr "Rilascia automaticamente i modelli sul piano di stampa"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:466
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:448
msgctxt "@info:tooltip"
msgid "Show caution message in g-code reader."
msgstr "Visualizza il messaggio di avvertimento sul lettore codice G."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:475
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:457
msgctxt "@option:check"
msgid "Caution message in g-code reader"
msgstr "Messaggio di avvertimento sul lettore codice G"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:483
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:465
msgctxt "@info:tooltip"
msgid "Should layer be forced into compatibility mode?"
msgstr "Lo strato deve essere forzato in modalità di compatibilità?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:488
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:470
msgctxt "@option:check"
msgid "Force layer view compatibility mode (restart required)"
msgstr "Forzare la modalità di compatibilità visualizzazione strato (riavvio necessario)"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:498
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:480
msgctxt "@info:tooltip"
msgid "Should Cura open at the location it was closed?"
msgstr "Aprire Cura nel punto in cui è stato chiuso?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:503
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:485
msgctxt "@option:check"
msgid "Restore window position on start"
msgstr "Ripristinare la posizione della finestra all'avvio"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:513
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:495
msgctxt "@info:tooltip"
msgid "What type of camera rendering should be used?"
msgstr "Quale tipo di rendering della fotocamera è necessario utilizzare?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:520
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:502
msgctxt "@window:text"
msgid "Camera rendering:"
msgstr "Rendering fotocamera:"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:531
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:509
msgid "Perspective"
msgstr "Prospettiva"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:532
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:510
msgid "Orthographic"
msgstr "Ortogonale"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:563
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:548
msgctxt "@label"
msgid "Opening and saving files"
msgstr "Apertura e salvataggio file"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:570
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:555
msgctxt "@info:tooltip"
msgid "Should opening files from the desktop or external applications open in the same instance of Cura?"
msgstr "L'apertura dei file dal desktop o da applicazioni esterne deve essere eseguita nella stessa istanza di Cura?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:575
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:560
msgctxt "@option:check"
msgid "Use a single instance of Cura"
msgstr "Utilizzare una singola istanza di Cura"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:585
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:570
msgctxt "@info:tooltip"
msgid "Should models be scaled to the build volume if they are too large?"
msgstr "I modelli devono essere ridimensionati al volume di stampa, se troppo grandi?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:590
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:575
msgctxt "@option:check"
msgid "Scale large models"
msgstr "Ridimensiona i modelli troppo grandi"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:600
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:585
msgctxt "@info:tooltip"
msgid "An model may appear extremely small if its unit is for example in meters rather than millimeters. Should these models be scaled up?"
msgstr "Un modello può apparire eccessivamente piccolo se la sua unità di misura è espressa in metri anziché in millimetri. Questi modelli devono essere aumentati?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:605
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:590
msgctxt "@option:check"
msgid "Scale extremely small models"
msgstr "Ridimensiona i modelli eccessivamente piccoli"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:615
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:600
msgctxt "@info:tooltip"
msgid "Should models be selected after they are loaded?"
msgstr "I modelli devono essere selezionati dopo essere stati caricati?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:620
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:605
msgctxt "@option:check"
msgid "Select models when loaded"
msgstr "Selezionare i modelli dopo il caricamento"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:630
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:615
msgctxt "@info:tooltip"
msgid "Should a prefix based on the printer name be added to the print job name automatically?"
msgstr "Al nome del processo di stampa deve essere aggiunto automaticamente un prefisso basato sul nome della stampante?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:635
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:620
msgctxt "@option:check"
msgid "Add machine prefix to job name"
msgstr "Aggiungi al nome del processo un prefisso macchina"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:645
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:630
msgctxt "@info:tooltip"
msgid "Should a summary be shown when saving a project file?"
msgstr "Quando si salva un file di progetto deve essere visualizzato un riepilogo?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:649
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:634
msgctxt "@option:check"
msgid "Show summary dialog when saving project"
msgstr "Visualizza una finestra di riepilogo quando si salva un progetto"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:659
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:644
msgctxt "@info:tooltip"
msgid "Default behavior when opening a project file"
msgstr "Comportamento predefinito all'apertura di un file progetto"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:667
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:652
msgctxt "@window:text"
msgid "Default behavior when opening a project file: "
msgstr "Comportamento predefinito all'apertura di un file progetto: "
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:681
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:666
msgctxt "@option:openProject"
msgid "Always ask me this"
msgstr "Chiedi sempre"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:682
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:667
msgctxt "@option:openProject"
msgid "Always open as a project"
msgstr "Apri sempre come progetto"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:683
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:668
msgctxt "@option:openProject"
msgid "Always import models"
msgstr "Importa sempre i modelli"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:719
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:705
msgctxt "@info:tooltip"
msgid "When you have made changes to a profile and switched to a different one, a dialog will be shown asking whether you want to keep your modifications or not, or you can choose a default behaviour and never show that dialog again."
msgstr "Dopo aver modificato un profilo ed essere passati a un altro, si apre una finestra di dialogo che chiede se mantenere o eliminare le modifiche oppure se scegliere un comportamento predefinito e non visualizzare più tale finestra di dialogo."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:728
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:714
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedQualityProfileSelector.qml:52
msgctxt "@label"
msgid "Profiles"
msgstr "Profili"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:733
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:719
msgctxt "@window:text"
msgid "Default behavior for changed setting values when switching to a different profile: "
msgstr "Comportamento predefinito per i valori di impostazione modificati al passaggio a un profilo diverso: "
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:748
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:734
msgctxt "@option:discardOrKeep"
msgid "Always discard changed settings"
msgstr "Elimina sempre le impostazioni modificate"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:749
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:735
msgctxt "@option:discardOrKeep"
msgid "Always transfer changed settings to new profile"
msgstr "Trasferisci sempre le impostazioni modificate a un nuovo profilo"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:783
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:770
msgctxt "@label"
msgid "Privacy"
msgstr "Privacy"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:790
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:777
msgctxt "@info:tooltip"
msgid "Should Cura check for updates when the program is started?"
msgstr "Cura deve verificare la presenza di eventuali aggiornamenti all’avvio del programma?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:795
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:782
msgctxt "@option:check"
msgid "Check for updates on start"
msgstr "Controlla aggiornamenti all’avvio"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:805
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:792
msgctxt "@info:tooltip"
msgid "Should anonymous data about your print be sent to Ultimaker? Note, no models, IP addresses or other personally identifiable information is sent or stored."
msgstr "I dati anonimi sulla stampa devono essere inviati a Ultimaker? Nota, non sono trasmessi o memorizzati modelli, indirizzi IP o altre informazioni personali."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:810
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:797
msgctxt "@option:check"
msgid "Send (anonymous) print information"
msgstr "Invia informazioni di stampa (anonime)"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:819
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:806
msgctxt "@action:button"
msgid "More information"
msgstr "Ulteriori informazioni"
@@ -4527,55 +4607,65 @@ msgctxt "@action:button"
msgid "Export"
msgstr "Esporta"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:234
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:199
+msgctxt "@action:button Sending materials to printers"
+msgid "Sync with Printers"
+msgstr "Sincronizza con le stampanti"
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:248
msgctxt "@action:label"
msgid "Printer"
msgstr "Stampante"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:298
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:274
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:312
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:277
msgctxt "@title:window"
msgid "Confirm Remove"
msgstr "Conferma rimozione"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:301
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:275
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:315
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:278
msgctxt "@label (%1 is object name)"
msgid "Are you sure you wish to remove %1? This cannot be undone!"
msgstr "Sei sicuro di voler rimuovere %1? Questa operazione non può essere annullata!"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:315
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:323
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:329
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:337
msgctxt "@title:window"
msgid "Import Material"
msgstr "Importa materiale"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:324
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:338
msgctxt "@info:status Don't translate the XML tags or !"
msgid "Could not import material %1: %2"
msgstr "Impossibile importare materiale {1}: %2"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:328
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:342
msgctxt "@info:status Don't translate the XML tag !"
msgid "Successfully imported material %1"
msgstr "Materiale importato correttamente %1"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:346
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:354
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:360
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:368
msgctxt "@title:window"
msgid "Export Material"
msgstr "Esporta materiale"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:358
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:372
msgctxt "@info:status Don't translate the XML tags and !"
msgid "Failed to export material to %1: %2"
msgstr "Impossibile esportare il materiale su %1: %2"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:364
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:378
msgctxt "@info:status Don't translate the XML tag !"
msgid "Successfully exported material to %1"
msgstr "Materiale esportato correttamente su %1"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:388
+msgctxt "@title:window"
+msgid "Export All Materials"
+msgstr "Esporta tutti i materiali"
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:72
msgctxt "@title"
msgid "Information"
@@ -4687,53 +4777,53 @@ msgctxt "@info"
msgid "Please provide a name for this profile."
msgstr "Indica un nome per questo profilo."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:260
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:263
msgctxt "@title:window"
msgid "Duplicate Profile"
msgstr "Duplica profilo"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:291
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:294
msgctxt "@title:window"
msgid "Rename Profile"
msgstr "Rinomina profilo"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:304
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:307
msgctxt "@title:window"
msgid "Import Profile"
msgstr "Importa profilo"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:333
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:336
msgctxt "@title:window"
msgid "Export Profile"
msgstr "Esporta profilo"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:396
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:399
msgctxt "@label %1 is printer name"
msgid "Printer: %1"
msgstr "Stampante: %1"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:554
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:557
msgctxt "@action:button"
msgid "Update profile with current settings/overrides"
msgstr "Aggiorna il profilo con le impostazioni/esclusioni correnti"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:561
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:564
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Custom/QualitiesWithIntentMenu.qml:244
msgctxt "@action:button"
msgid "Discard current changes"
msgstr "Elimina le modifiche correnti"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:580
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:583
msgctxt "@action:label"
msgid "This profile uses the defaults specified by the printer, so it has no settings/overrides in the list below."
msgstr "Questo profilo utilizza le impostazioni predefinite dalla stampante, perciò non ci sono impostazioni/esclusioni nell’elenco riportato di seguito."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:588
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:591
msgctxt "@action:label"
msgid "Your current settings match the selected profile."
msgstr "Le impostazioni correnti corrispondono al profilo selezionato."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:606
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:609
msgctxt "@title:tab"
msgid "Global Settings"
msgstr "Impostazioni globali"
@@ -4763,12 +4853,12 @@ msgctxt "@title:column"
msgid "Unit"
msgstr "Unità"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:14
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:16
msgctxt "@title:tab"
msgid "Setting Visibility"
msgstr "Impostazione visibilità"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:46
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:48
msgctxt "@label:textbox"
msgid "Check all"
msgstr "Controlla tutto"
@@ -5106,27 +5196,27 @@ msgctxt "@label:textbox"
msgid "Search settings"
msgstr "Impostazioni ricerca"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:456
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:468
msgctxt "@action:menu"
msgid "Copy value to all extruders"
msgstr "Copia valore su tutti gli estrusori"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:465
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:477
msgctxt "@action:menu"
msgid "Copy all changed values to all extruders"
msgstr "Copia tutti i valori modificati su tutti gli estrusori"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:502
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:514
msgctxt "@action:menu"
msgid "Hide this setting"
msgstr "Nascondi questa impostazione"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:515
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:527
msgctxt "@action:menu"
msgid "Don't show this setting"
msgstr "Nascondi questa impostazione"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:519
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:531
msgctxt "@action:menu"
msgid "Keep this setting visible"
msgstr "Mantieni visibile questa impostazione"
@@ -5186,11 +5276,6 @@ msgctxt "@button"
msgid "Add printer manually"
msgstr "Aggiungere la stampante manualmente"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddCloudPrintersView.qml:218
-msgctxt "@button"
-msgid "Finish"
-msgstr "Fine"
-
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddLocalPrinterScrollView.qml:230
msgctxt "@label"
msgid "Manufacturer"
@@ -5297,32 +5382,32 @@ msgctxt "@button"
msgid "Connect"
msgstr "Collega"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:43
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/ChangelogContent.qml:24
msgctxt "@label"
-msgid "Ultimaker Account"
-msgstr "Account Ultimaker"
+msgid "Release Notes"
+msgstr "Note sulla versione"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:84
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:124
msgctxt "@text"
-msgid "Your key to connected 3D printing"
-msgstr "La chiave per la stampa 3D connessa"
+msgid "Add material settings and plugins from the Marketplace"
+msgstr "Aggiungi impostazioni materiale e plugin dal Marketplace"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:101
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:154
msgctxt "@text"
-msgid "- Customize your experience with more print profiles and plugins"
-msgstr "- Personalizza la tua esperienza con più profili di stampa e plugin"
+msgid "Backup and sync your material settings and plugins"
+msgstr "Esegui il backup e la sincronizzazione delle impostazioni materiale e dei plugin"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:104
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:184
msgctxt "@text"
-msgid "- Stay flexible by syncing your setup and loading it anywhere"
-msgstr "- Mantieni la flessibilità sincronizzando la configurazione e caricandola ovunque"
+msgid "Share ideas and get help from 48,000+ users in the Ultimaker Community"
+msgstr "Condividi idee e ottieni supporto da più di 48.000 utenti nella community di Ultimaker"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:107
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:217
msgctxt "@text"
-msgid "- Increase efficiency with a remote workflow on Ultimaker printers"
-msgstr "- Aumenta l'efficienza grazie a un flusso di lavoro remoto sulle stampanti Ultimaker"
+msgid "Create a free Ultimaker Account"
+msgstr "Crea un account Ultimaker gratuito"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:157
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:230
msgctxt "@button"
msgid "Skip"
msgstr "Salta"
@@ -5382,29 +5467,32 @@ msgctxt "@button"
msgid "Decline and close"
msgstr "Rifiuta e chiudi"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:29
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:56
msgctxt "@label"
msgid "Welcome to Ultimaker Cura"
msgstr "Benvenuto in Ultimaker Cura"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:47
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:68
msgctxt "@text"
-msgid ""
-"Please follow these steps to set up\n"
-"Ultimaker Cura. This will only take a few moments."
+msgid "Please follow these steps to set up Ultimaker Cura. This will only take a few moments."
msgstr ""
"Segui questa procedura per configurare\n"
"Ultimaker Cura. Questa operazione richiederà solo pochi istanti."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:58
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:86
msgctxt "@button"
msgid "Get started"
msgstr "Per iniziare"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:24
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:28
msgctxt "@label"
-msgid "What's new in Ultimaker Cura"
-msgstr "Scopri le novità in Ultimaker Cura"
+msgid "What's New"
+msgstr "Scopri le novità"
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Widgets/ComboBox.qml:24
+msgctxt "@label"
+msgid "No items to select from"
+msgstr "Nessun elemento da selezionare da"
#: ModelChecker/plugin.json
msgctxt "description"
@@ -5486,6 +5574,16 @@ msgctxt "name"
msgid "Cura Profile Writer"
msgstr "Writer profilo Cura"
+#: DigitalLibrary/plugin.json
+msgctxt "description"
+msgid "Connects to the Digital Library, allowing Cura to open files from and save files to the Digital Library."
+msgstr "Si collega alla Digital Library, consentendo a Cura di aprire file e salvare file in Digital Library."
+
+#: DigitalLibrary/plugin.json
+msgctxt "name"
+msgid "Ultimaker Digital Library"
+msgstr "Ultimaker Digital Library"
+
#: FirmwareUpdateChecker/plugin.json
msgctxt "description"
msgid "Checks for firmware updates."
@@ -5956,6 +6054,26 @@ msgctxt "name"
msgid "Version Upgrade 4.7 to 4.8"
msgstr "Aggiornamento della versione da 4.7 a 4.8"
+#: VersionUpgrade/VersionUpgrade48to49/plugin.json
+msgctxt "description"
+msgid "Upgrades configurations from Cura 4.8 to Cura 4.9."
+msgstr "Aggiorna le configurazioni da Cura 4.8 a Cura 4.9."
+
+#: VersionUpgrade/VersionUpgrade48to49/plugin.json
+msgctxt "name"
+msgid "Version Upgrade 4.8 to 4.9"
+msgstr "Aggiornamento della versione da 4.8 a 4.9"
+
+#: VersionUpgrade/VersionUpgrade49to410/plugin.json
+msgctxt "description"
+msgid "Upgrades configurations from Cura 4.9 to Cura 4.10."
+msgstr "Aggiorna le configurazioni da Cura 4.9 a Cura 4.10."
+
+#: VersionUpgrade/VersionUpgrade49to410/plugin.json
+msgctxt "name"
+msgid "Version Upgrade 4.9 to 4.10"
+msgstr "Aggiornamento della versione da 4.9 a 4.10"
+
#: X3DReader/plugin.json
msgctxt "description"
msgid "Provides support for reading X3D files."
@@ -5986,6 +6104,94 @@ msgctxt "name"
msgid "X-Ray View"
msgstr "Vista ai raggi X"
+#~ msgctxt "@info:status"
+#~ msgid "Global stack is missing."
+#~ msgstr "Pila globale mancante."
+
+#~ msgctxt "@info:status"
+#~ msgid "Your model is not manifold. The highlighted areas indicate either missing or extraneous surfaces."
+#~ msgstr "Il modello in uso non è multiforme. Le aree evidenziate indicano superfici mancanti o estranee."
+
+#~ msgctxt "@info:title"
+#~ msgid "Model errors"
+#~ msgstr "Errori modello"
+
+#~ msgctxt "@label:listbox"
+#~ msgid "Layer thickness"
+#~ msgstr "Spessore strato"
+
+#~ msgctxt "@label"
+#~ msgid "Your key to connected 3D printing"
+#~ msgstr "La chiave per la stampa 3D connessa"
+
+#~ msgctxt "@text"
+#~ msgid ""
+#~ "- Customize your experience with more print profiles and plugins\n"
+#~ "- Stay flexible by syncing your setup and loading it anywhere\n"
+#~ "- Increase efficiency with a remote workflow on Ultimaker printers"
+#~ msgstr ""
+#~ "- Personalizza la tua esperienza con più profili di stampa e plugin\n"
+#~ "- Mantieni la flessibilità sincronizzando la configurazione e caricandola ovunque\n"
+#~ "- Aumenta l'efficienza grazie a un flusso di lavoro remoto sulle stampanti Ultimaker"
+
+#~ msgctxt "@button"
+#~ msgid "Create account"
+#~ msgstr "Crea account"
+
+#~ msgctxt "@action:inmenu menubar:edit"
+#~ msgid "Delete Selected Model"
+#~ msgid_plural "Delete Selected Models"
+#~ msgstr[0] "Cancella modello selezionato"
+#~ msgstr[1] "Cancella modelli selezionati"
+
+#~ msgctxt "@action:inmenu menubar:edit"
+#~ msgid "Center Selected Model"
+#~ msgid_plural "Center Selected Models"
+#~ msgstr[0] "Centra modello selezionato"
+#~ msgstr[1] "Centra modelli selezionati"
+
+#~ msgctxt "@action:inmenu menubar:edit"
+#~ msgid "Multiply Selected Model"
+#~ msgid_plural "Multiply Selected Models"
+#~ msgstr[0] "Moltiplica modello selezionato"
+#~ msgstr[1] "Moltiplica modelli selezionati"
+
+#~ msgctxt "@button"
+#~ msgid "Finish"
+#~ msgstr "Fine"
+
+#~ msgctxt "@label"
+#~ msgid "Ultimaker Account"
+#~ msgstr "Account Ultimaker"
+
+#~ msgctxt "@text"
+#~ msgid "Your key to connected 3D printing"
+#~ msgstr "La chiave per la stampa 3D connessa"
+
+#~ msgctxt "@text"
+#~ msgid "- Customize your experience with more print profiles and plugins"
+#~ msgstr "- Personalizza la tua esperienza con più profili di stampa e plugin"
+
+#~ msgctxt "@text"
+#~ msgid "- Stay flexible by syncing your setup and loading it anywhere"
+#~ msgstr "- Mantieni la flessibilità sincronizzando la configurazione e caricandola ovunque"
+
+#~ msgctxt "@text"
+#~ msgid "- Increase efficiency with a remote workflow on Ultimaker printers"
+#~ msgstr "- Aumenta l'efficienza grazie a un flusso di lavoro remoto sulle stampanti Ultimaker"
+
+#~ msgctxt "@text"
+#~ msgid ""
+#~ "Please follow these steps to set up\n"
+#~ "Ultimaker Cura. This will only take a few moments."
+#~ msgstr ""
+#~ "Segui questa procedura per configurare\n"
+#~ "Ultimaker Cura. Questa operazione richiederà solo pochi istanti."
+
+#~ msgctxt "@label"
+#~ msgid "What's new in Ultimaker Cura"
+#~ msgstr "Scopri le novità in Ultimaker Cura"
+
#~ msgctxt "@label ({} is object name)"
#~ msgid "Are you sure you wish to remove {}? This cannot be undone!"
#~ msgstr "Desideri rimuovere {}? Questa operazione non può essere annullata!"
diff --git a/resources/i18n/it_IT/fdmextruder.def.json.po b/resources/i18n/it_IT/fdmextruder.def.json.po
index 6f8bb576b3..2b1b6af466 100644
--- a/resources/i18n/it_IT/fdmextruder.def.json.po
+++ b/resources/i18n/it_IT/fdmextruder.def.json.po
@@ -1,19 +1,20 @@
# Cura
-# Copyright (C) 2020 Ultimaker B.V.
+# Copyright (C) 2021 Ultimaker B.V.
# This file is distributed under the same license as the Cura package.
#
msgid ""
msgstr ""
-"Project-Id-Version: Cura 4.8\n"
+"Project-Id-Version: Cura 4.10\n"
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
-"POT-Creation-Date: 2020-10-19 13:15+0000\n"
-"PO-Revision-Date: 2019-03-13 14:00+0200\n"
+"POT-Creation-Date: 2021-06-10 17:35+0000\n"
+"PO-Revision-Date: 2021-04-16 14:58+0200\n"
"Last-Translator: Bothof \n"
"Language-Team: Italian\n"
"Language: it_IT\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 2.4.1\n"
#: fdmextruder.def.json
msgctxt "machine_settings label"
diff --git a/resources/i18n/it_IT/fdmprinter.def.json.po b/resources/i18n/it_IT/fdmprinter.def.json.po
index 7539cd64d8..0754a9374c 100644
--- a/resources/i18n/it_IT/fdmprinter.def.json.po
+++ b/resources/i18n/it_IT/fdmprinter.def.json.po
@@ -1,20 +1,20 @@
# Cura
-# Copyright (C) 2020 Ultimaker B.V.
+# Copyright (C) 2021 Ultimaker B.V.
# This file is distributed under the same license as the Cura package.
#
msgid ""
msgstr ""
-"Project-Id-Version: Cura 4.8\n"
+"Project-Id-Version: Cura 4.10\n"
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
-"POT-Creation-Date: 2020-10-19 13:15+0000\n"
-"PO-Revision-Date: 2020-08-21 13:40+0200\n"
+"POT-Creation-Date: 2021-06-10 17:35+0000\n"
+"PO-Revision-Date: 2021-04-16 14:58+0200\n"
"Last-Translator: Lionbridge \n"
"Language-Team: Italian , Italian \n"
"Language: it_IT\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: Poedit 2.0.6\n"
+"X-Generator: Poedit 2.4.1\n"
#: fdmprinter.def.json
msgctxt "machine_settings label"
@@ -419,6 +419,26 @@ msgctxt "machine_extruders_share_heater description"
msgid "Whether the extruders share a single heater rather than each extruder having its own heater."
msgstr "Indica se gli estrusori condividono un singolo riscaldatore piuttosto che avere ognuno il proprio."
+#: fdmprinter.def.json
+msgctxt "machine_extruders_share_nozzle label"
+msgid "Extruders Share Nozzle"
+msgstr "Estrusori condividono ugello"
+
+#: fdmprinter.def.json
+msgctxt "machine_extruders_share_nozzle description"
+msgid "Whether the extruders share a single nozzle rather than each extruder having its own nozzle. When set to true, it is expected that the printer-start gcode script properly sets up all extruders in an initial retraction state that is known and mutually compatible (either zero or one filament not retracted); in that case the initial retraction status is described, per extruder, by the 'machine_extruders_shared_nozzle_initial_retraction' parameter."
+msgstr "Indica se gli estrusori condividono un singolo ugello piuttosto che avere ognuno il proprio. Se impostato su true, si prevede che lo script gcode di avvio della stampante imposti tutti gli estrusori su uno stato di retrazione iniziale noto e mutuamente compatibile (nessuno o un solo filamento non retratto); in questo caso lo stato di retrazione iniziale è descritto, per estrusore, dal parametro 'machine_extruders_shared_nozzle_initial_retraction'."
+
+#: fdmprinter.def.json
+msgctxt "machine_extruders_shared_nozzle_initial_retraction label"
+msgid "Shared Nozzle Initial Retraction"
+msgstr "Retrazione iniziale ugello condivisa"
+
+#: fdmprinter.def.json
+msgctxt "machine_extruders_shared_nozzle_initial_retraction description"
+msgid "How much the filament of each extruder is assumed to have been retracted from the shared nozzle tip at the completion of the printer-start gcode script; the value should be equal to or greater than the length of the common part of the nozzle's ducts."
+msgstr "La quantità di filamento di ogni estrusore che si presume sia stata retratta dalla punta dell'ugello condiviso al termine dello script gcode di avvio stampante; il valore deve essere uguale o maggiore della lunghezza della parte comune dei condotti dell'ugello."
+
#: fdmprinter.def.json
msgctxt "machine_disallowed_areas label"
msgid "Disallowed Areas"
@@ -486,8 +506,8 @@ msgstr "Offset con estrusore"
#: fdmprinter.def.json
msgctxt "machine_use_extruder_offset_to_offset_coords description"
-msgid "Apply the extruder offset to the coordinate system."
-msgstr "Applicare l’offset estrusore al sistema coordinate."
+msgid "Apply the extruder offset to the coordinate system. Affects all extruders."
+msgstr "Applica l’offset estrusore al sistema coordinate. Influisce su tutti gli estrusori."
#: fdmprinter.def.json
msgctxt "extruder_prime_pos_z label"
@@ -881,8 +901,8 @@ msgstr "Moltiplicatore della larghezza della linea del primo strato Il suo aumen
#: fdmprinter.def.json
msgctxt "shell label"
-msgid "Shell"
-msgstr "Guscio"
+msgid "Walls"
+msgstr "Pareti"
#: fdmprinter.def.json
msgctxt "shell description"
@@ -949,166 +969,6 @@ msgctxt "wall_0_wipe_dist description"
msgid "Distance of a travel move inserted after the outer wall, to hide the Z seam better."
msgstr "Distanza di spostamento inserita dopo la parete esterna per nascondere meglio la giunzione Z."
-#: fdmprinter.def.json
-msgctxt "roofing_extruder_nr label"
-msgid "Top Surface Skin Extruder"
-msgstr "Estrusore rivestimento superficie superiore"
-
-#: fdmprinter.def.json
-msgctxt "roofing_extruder_nr description"
-msgid "The extruder train used for printing the top most skin. This is used in multi-extrusion."
-msgstr "Treno estrusore utilizzato per stampare il rivestimento più in alto. Si utilizza nell'estrusione multipla."
-
-#: fdmprinter.def.json
-msgctxt "roofing_layer_count label"
-msgid "Top Surface Skin Layers"
-msgstr "Strati di rivestimento superficie superiore"
-
-#: fdmprinter.def.json
-msgctxt "roofing_layer_count description"
-msgid "The number of top most skin layers. Usually only one top most layer is sufficient to generate higher quality top surfaces."
-msgstr "Numero degli strati di rivestimento superiori. Solitamente è sufficiente un unico strato di sommità per ottenere superfici superiori di qualità elevata."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_extruder_nr label"
-msgid "Top/Bottom Extruder"
-msgstr "Estrusore superiore/inferiore"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_extruder_nr description"
-msgid "The extruder train used for printing the top and bottom skin. This is used in multi-extrusion."
-msgstr "Treno estrusore utilizzato per stampare il rivestimento superiore e quello inferiore. Si utilizza nell'estrusione multipla."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_thickness label"
-msgid "Top/Bottom Thickness"
-msgstr "Spessore dello strato superiore/inferiore"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_thickness description"
-msgid "The thickness of the top/bottom layers in the print. This value divided by the layer height defines the number of top/bottom layers."
-msgstr "Indica lo spessore degli strati superiore/inferiore nella stampa. Questo valore diviso per la l’altezza dello strato definisce il numero degli strati superiori/inferiori."
-
-#: fdmprinter.def.json
-msgctxt "top_thickness label"
-msgid "Top Thickness"
-msgstr "Spessore dello strato superiore"
-
-#: fdmprinter.def.json
-msgctxt "top_thickness description"
-msgid "The thickness of the top layers in the print. This value divided by the layer height defines the number of top layers."
-msgstr "Indica lo spessore degli strati superiori nella stampa. Questo valore diviso per la l’altezza dello strato definisce il numero degli strati superiori."
-
-#: fdmprinter.def.json
-msgctxt "top_layers label"
-msgid "Top Layers"
-msgstr "Strati superiori"
-
-#: fdmprinter.def.json
-msgctxt "top_layers description"
-msgid "The number of top layers. When calculated by the top thickness, this value is rounded to a whole number."
-msgstr "Indica il numero degli strati superiori. Quando calcolato mediante lo spessore dello strato superiore, il valore viene arrotondato a numero intero."
-
-#: fdmprinter.def.json
-msgctxt "bottom_thickness label"
-msgid "Bottom Thickness"
-msgstr "Spessore degli strati inferiori"
-
-#: fdmprinter.def.json
-msgctxt "bottom_thickness description"
-msgid "The thickness of the bottom layers in the print. This value divided by the layer height defines the number of bottom layers."
-msgstr "Indica lo spessore degli strati inferiori nella stampa. Questo valore diviso per la l’altezza dello strato definisce il numero degli strati inferiori."
-
-#: fdmprinter.def.json
-msgctxt "bottom_layers label"
-msgid "Bottom Layers"
-msgstr "Strati inferiori"
-
-#: fdmprinter.def.json
-msgctxt "bottom_layers description"
-msgid "The number of bottom layers. When calculated by the bottom thickness, this value is rounded to a whole number."
-msgstr "Indica il numero degli strati inferiori. Quando calcolato mediante lo spessore dello strato inferiore, il valore viene arrotondato a numero intero."
-
-#: fdmprinter.def.json
-msgctxt "initial_bottom_layers label"
-msgid "Initial Bottom Layers"
-msgstr "Layer inferiori iniziali"
-
-#: fdmprinter.def.json
-msgctxt "initial_bottom_layers description"
-msgid "The number of initial bottom layers, from the build-plate upwards. When calculated by the bottom thickness, this value is rounded to a whole number."
-msgstr "Il numero di layer inferiori iniziali, dal piano di stampa verso l'alto. Quando viene calcolato mediante lo spessore inferiore, questo valore viene arrotondato a un numero intero."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern label"
-msgid "Top/Bottom Pattern"
-msgstr "Configurazione dello strato superiore/inferiore"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern description"
-msgid "The pattern of the top/bottom layers."
-msgstr "Indica la configurazione degli strati superiori/inferiori."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern option lines"
-msgid "Lines"
-msgstr "Linee"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern option concentric"
-msgid "Concentric"
-msgstr "Concentriche"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern option zigzag"
-msgid "Zig Zag"
-msgstr "Zig Zag"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 label"
-msgid "Bottom Pattern Initial Layer"
-msgstr "Strato iniziale configurazione inferiore"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 description"
-msgid "The pattern on the bottom of the print on the first layer."
-msgstr "La configurazione al fondo della stampa sul primo strato."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 option lines"
-msgid "Lines"
-msgstr "Linee"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 option concentric"
-msgid "Concentric"
-msgstr "Concentriche"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 option zigzag"
-msgid "Zig Zag"
-msgstr "Zig Zag"
-
-#: fdmprinter.def.json
-msgctxt "connect_skin_polygons label"
-msgid "Connect Top/Bottom Polygons"
-msgstr "Collega poligoni superiori/inferiori"
-
-#: fdmprinter.def.json
-msgctxt "connect_skin_polygons description"
-msgid "Connect top/bottom skin paths where they run next to each other. For the concentric pattern enabling this setting greatly reduces the travel time, but because the connections can happen midway over infill this feature can reduce the top surface quality."
-msgstr "Collega i percorsi del rivestimento esterno superiore/inferiore quando corrono uno accanto all’altro. Per le configurazioni concentriche, l’abilitazione di questa impostazione riduce notevolmente il tempo di spostamento, tuttavia poiché i collegamenti possono aver luogo a metà del riempimento, con questa funzione la qualità della superficie superiore potrebbe risultare inferiore."
-
-#: fdmprinter.def.json
-msgctxt "skin_angles label"
-msgid "Top/Bottom Line Directions"
-msgstr "Direzioni delle linee superiori/inferiori"
-
-#: fdmprinter.def.json
-msgctxt "skin_angles description"
-msgid "A list of integer line directions to use when the top/bottom layers use the lines or zig zag pattern. Elements from the list are used sequentially as the layers progress and when the end of the list is reached, it starts at the beginning again. The list items are separated by commas and the whole list is contained in square brackets. Default is an empty list which means use the traditional default angles (45 and 135 degrees)."
-msgstr "Un elenco di direzioni linee intere da usare quando gli strati superiori/inferiori utilizzano le linee o la configurazione zig zag. Gli elementi dall’elenco sono utilizzati in sequenza con il progredire degli strati e, al raggiungimento della fine dell’elenco, la sequenza ricomincia dall’inizio. Le voci elencate sono separate da virgole e l’intero elenco è racchiuso tra parentesi quadre. L’elenco predefinito è vuoto, vale a dire che utilizza i valori angolari predefiniti (45 e 135 gradi)."
-
#: fdmprinter.def.json
msgctxt "wall_0_inset label"
msgid "Outer Wall Inset"
@@ -1414,6 +1274,176 @@ msgctxt "z_seam_relative description"
msgid "When enabled, the z seam coordinates are relative to each part's centre. When disabled, the coordinates define an absolute position on the build plate."
msgstr "Se abilitato, le coordinate della giunzione Z sono riferite al centro di ogni parte. Se disabilitato, le coordinate definiscono una posizione assoluta sul piano di stampa."
+#: fdmprinter.def.json
+msgctxt "top_bottom label"
+msgid "Top/Bottom"
+msgstr "Superiore / Inferiore"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom description"
+msgid "Top/Bottom"
+msgstr "Superiore / Inferiore"
+
+#: fdmprinter.def.json
+msgctxt "roofing_extruder_nr label"
+msgid "Top Surface Skin Extruder"
+msgstr "Estrusore rivestimento superficie superiore"
+
+#: fdmprinter.def.json
+msgctxt "roofing_extruder_nr description"
+msgid "The extruder train used for printing the top most skin. This is used in multi-extrusion."
+msgstr "Treno estrusore utilizzato per stampare il rivestimento più in alto. Si utilizza nell'estrusione multipla."
+
+#: fdmprinter.def.json
+msgctxt "roofing_layer_count label"
+msgid "Top Surface Skin Layers"
+msgstr "Strati di rivestimento superficie superiore"
+
+#: fdmprinter.def.json
+msgctxt "roofing_layer_count description"
+msgid "The number of top most skin layers. Usually only one top most layer is sufficient to generate higher quality top surfaces."
+msgstr "Numero degli strati di rivestimento superiori. Solitamente è sufficiente un unico strato di sommità per ottenere superfici superiori di qualità elevata."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_extruder_nr label"
+msgid "Top/Bottom Extruder"
+msgstr "Estrusore superiore/inferiore"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_extruder_nr description"
+msgid "The extruder train used for printing the top and bottom skin. This is used in multi-extrusion."
+msgstr "Treno estrusore utilizzato per stampare il rivestimento superiore e quello inferiore. Si utilizza nell'estrusione multipla."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_thickness label"
+msgid "Top/Bottom Thickness"
+msgstr "Spessore dello strato superiore/inferiore"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_thickness description"
+msgid "The thickness of the top/bottom layers in the print. This value divided by the layer height defines the number of top/bottom layers."
+msgstr "Indica lo spessore degli strati superiore/inferiore nella stampa. Questo valore diviso per la l’altezza dello strato definisce il numero degli strati superiori/inferiori."
+
+#: fdmprinter.def.json
+msgctxt "top_thickness label"
+msgid "Top Thickness"
+msgstr "Spessore dello strato superiore"
+
+#: fdmprinter.def.json
+msgctxt "top_thickness description"
+msgid "The thickness of the top layers in the print. This value divided by the layer height defines the number of top layers."
+msgstr "Indica lo spessore degli strati superiori nella stampa. Questo valore diviso per la l’altezza dello strato definisce il numero degli strati superiori."
+
+#: fdmprinter.def.json
+msgctxt "top_layers label"
+msgid "Top Layers"
+msgstr "Strati superiori"
+
+#: fdmprinter.def.json
+msgctxt "top_layers description"
+msgid "The number of top layers. When calculated by the top thickness, this value is rounded to a whole number."
+msgstr "Indica il numero degli strati superiori. Quando calcolato mediante lo spessore dello strato superiore, il valore viene arrotondato a numero intero."
+
+#: fdmprinter.def.json
+msgctxt "bottom_thickness label"
+msgid "Bottom Thickness"
+msgstr "Spessore degli strati inferiori"
+
+#: fdmprinter.def.json
+msgctxt "bottom_thickness description"
+msgid "The thickness of the bottom layers in the print. This value divided by the layer height defines the number of bottom layers."
+msgstr "Indica lo spessore degli strati inferiori nella stampa. Questo valore diviso per la l’altezza dello strato definisce il numero degli strati inferiori."
+
+#: fdmprinter.def.json
+msgctxt "bottom_layers label"
+msgid "Bottom Layers"
+msgstr "Strati inferiori"
+
+#: fdmprinter.def.json
+msgctxt "bottom_layers description"
+msgid "The number of bottom layers. When calculated by the bottom thickness, this value is rounded to a whole number."
+msgstr "Indica il numero degli strati inferiori. Quando calcolato mediante lo spessore dello strato inferiore, il valore viene arrotondato a numero intero."
+
+#: fdmprinter.def.json
+msgctxt "initial_bottom_layers label"
+msgid "Initial Bottom Layers"
+msgstr "Layer inferiori iniziali"
+
+#: fdmprinter.def.json
+msgctxt "initial_bottom_layers description"
+msgid "The number of initial bottom layers, from the build-plate upwards. When calculated by the bottom thickness, this value is rounded to a whole number."
+msgstr "Il numero di layer inferiori iniziali, dal piano di stampa verso l'alto. Quando viene calcolato mediante lo spessore inferiore, questo valore viene arrotondato a un numero intero."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern label"
+msgid "Top/Bottom Pattern"
+msgstr "Configurazione dello strato superiore/inferiore"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern description"
+msgid "The pattern of the top/bottom layers."
+msgstr "Indica la configurazione degli strati superiori/inferiori."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern option lines"
+msgid "Lines"
+msgstr "Linee"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern option concentric"
+msgid "Concentric"
+msgstr "Concentriche"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern option zigzag"
+msgid "Zig Zag"
+msgstr "Zig Zag"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 label"
+msgid "Bottom Pattern Initial Layer"
+msgstr "Strato iniziale configurazione inferiore"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 description"
+msgid "The pattern on the bottom of the print on the first layer."
+msgstr "La configurazione al fondo della stampa sul primo strato."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 option lines"
+msgid "Lines"
+msgstr "Linee"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 option concentric"
+msgid "Concentric"
+msgstr "Concentriche"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 option zigzag"
+msgid "Zig Zag"
+msgstr "Zig Zag"
+
+#: fdmprinter.def.json
+msgctxt "connect_skin_polygons label"
+msgid "Connect Top/Bottom Polygons"
+msgstr "Collega poligoni superiori/inferiori"
+
+#: fdmprinter.def.json
+msgctxt "connect_skin_polygons description"
+msgid "Connect top/bottom skin paths where they run next to each other. For the concentric pattern enabling this setting greatly reduces the travel time, but because the connections can happen midway over infill this feature can reduce the top surface quality."
+msgstr "Collega i percorsi del rivestimento esterno superiore/inferiore quando corrono uno accanto all’altro. Per le configurazioni concentriche, l’abilitazione di questa impostazione riduce notevolmente il tempo di spostamento, tuttavia poiché i collegamenti possono aver luogo a metà del riempimento, con questa funzione la qualità della superficie superiore potrebbe risultare inferiore."
+
+#: fdmprinter.def.json
+msgctxt "skin_angles label"
+msgid "Top/Bottom Line Directions"
+msgstr "Direzioni delle linee superiori/inferiori"
+
+#: fdmprinter.def.json
+msgctxt "skin_angles description"
+msgid "A list of integer line directions to use when the top/bottom layers use the lines or zig zag pattern. Elements from the list are used sequentially as the layers progress and when the end of the list is reached, it starts at the beginning again. The list items are separated by commas and the whole list is contained in square brackets. Default is an empty list which means use the traditional default angles (45 and 135 degrees)."
+msgstr "Un elenco di direzioni linee intere da usare quando gli strati superiori/inferiori utilizzano le linee o la configurazione zig zag. Gli elementi dall’elenco sono utilizzati in sequenza con il progredire degli strati e, al raggiungimento della fine dell’elenco, la sequenza ricomincia dall’inizio. Le voci elencate sono separate da virgole e l’intero elenco è racchiuso tra parentesi quadre. L’elenco predefinito è vuoto, vale a dire che utilizza i valori angolari predefiniti (45 e 135 gradi)."
+
#: fdmprinter.def.json
msgctxt "skin_no_small_gaps_heuristic label"
msgid "No Skin in Z Gaps"
@@ -1554,6 +1584,86 @@ msgctxt "skin_overlap_mm description"
msgid "Adjust the amount of overlap between the walls and (the endpoints of) the skin-centerlines. A slight overlap allows the walls to connect firmly to the skin. Note that, given an equal skin and wall line-width, any value over half the width of the wall may already cause any skin to go past the wall, because at that point the position of the nozzle of the skin-extruder may already reach past the middle of the wall."
msgstr "Regolare l’entità della sovrapposizione tra le pareti e (i punti finali delle) linee centrali del rivestimento esterno. Una leggera sovrapposizione consente alle pareti di essere saldamente collegate al rivestimento. Si noti che, data una larghezza uguale del rivestimento esterno e della linea perimetrale, qualsiasi percentuale superiore alla metà della parete può già causare il superamento della parete da parte del rivestimento esterno in quanto, in quel punto, la posizione dell’ugello dell’estrusore del rivestimento esterno può già aver superato la parte centrale della parete."
+#: fdmprinter.def.json
+msgctxt "skin_preshrink label"
+msgid "Skin Removal Width"
+msgstr "Larghezza rimozione rivestimento"
+
+#: fdmprinter.def.json
+msgctxt "skin_preshrink description"
+msgid "The largest width of skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top/bottom skin at slanted surfaces in the model."
+msgstr "Larghezza massima delle aree di rivestimento che è possibile rimuovere. Ogni area di rivestimento più piccola di questo valore verrà eliminata. Questo può aiutare a limitare il tempo e il materiale necessari per la stampa del rivestimento superiore/inferiore sulle superfici inclinate del modello."
+
+#: fdmprinter.def.json
+msgctxt "top_skin_preshrink label"
+msgid "Top Skin Removal Width"
+msgstr "Larghezza rimozione rivestimento superiore"
+
+#: fdmprinter.def.json
+msgctxt "top_skin_preshrink description"
+msgid "The largest width of top skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top skin at slanted surfaces in the model."
+msgstr "Larghezza massima delle aree di rivestimento superiore che è possibile rimuovere. Ogni area di rivestimento più piccola di questo valore verrà eliminata. Questo può aiutare a limitare il tempo e il materiale necessari per la stampa del rivestimento superiore sulle superfici inclinate del modello."
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_preshrink label"
+msgid "Bottom Skin Removal Width"
+msgstr "Larghezza rimozione rivestimento inferiore"
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_preshrink description"
+msgid "The largest width of bottom skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing bottom skin at slanted surfaces in the model."
+msgstr "Larghezza massima delle aree di rivestimento inferiore che è possibile rimuovere. Ogni area di rivestimento più piccola di questo valore verrà eliminata. Questo può aiutare a limitare il tempo e il materiale necessari per la stampa del rivestimento inferiore sulle superfici inclinate del modello."
+
+#: fdmprinter.def.json
+msgctxt "expand_skins_expand_distance label"
+msgid "Skin Expand Distance"
+msgstr "Distanza prolunga rivestimento esterno"
+
+#: fdmprinter.def.json
+msgctxt "expand_skins_expand_distance description"
+msgid "The distance the skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on neighboring layers adhere better to the skin. Lower values save amount of material used."
+msgstr "Distanza per cui i rivestimenti si estendono nel riempimento. Valori maggiori migliorano l'aderenza del rivestimento al riempimento e consentono una migliore aderenza al rivestimento delle pareti degli strati adiacenti. Valori minori consentono di risparmiare sul materiale utilizzato."
+
+#: fdmprinter.def.json
+msgctxt "top_skin_expand_distance label"
+msgid "Top Skin Expand Distance"
+msgstr "Distanza prolunga rivestimento superiore"
+
+#: fdmprinter.def.json
+msgctxt "top_skin_expand_distance description"
+msgid "The distance the top skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on the layer above adhere better to the skin. Lower values save amount of material used."
+msgstr "Distanza per cui i rivestimenti superiori si estendono nel riempimento. Valori maggiori migliorano l'aderenza del rivestimento al riempimento e consentono una migliore aderenza al rivestimento delle pareti dello strato superiore. Valori minori consentono di risparmiare sul materiale utilizzato."
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_expand_distance label"
+msgid "Bottom Skin Expand Distance"
+msgstr "Distanza prolunga rivestimento inferiore"
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_expand_distance description"
+msgid "The distance the bottom skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the skin adhere better to the walls on the layer below. Lower values save amount of material used."
+msgstr "Distanza per cui i rivestimenti inferiori si estendono nel riempimento. Valori maggiori migliorano l'aderenza del rivestimento al riempimento e consentono una migliore aderenza al rivestimento delle pareti dello strato inferiore. Valori minori consentono di risparmiare sul materiale utilizzato."
+
+#: fdmprinter.def.json
+msgctxt "max_skin_angle_for_expansion label"
+msgid "Maximum Skin Angle for Expansion"
+msgstr "Angolo massimo rivestimento esterno per prolunga"
+
+#: fdmprinter.def.json
+msgctxt "max_skin_angle_for_expansion description"
+msgid "Top and/or bottom surfaces of your object with an angle larger than this setting, won't have their top/bottom skin expanded. This avoids expanding the narrow skin areas that are created when the model surface has a near vertical slope. An angle of 0° is horizontal and will cause no skin to be expanded, while an angle of 90° is vertical and will cause all skin to be expanded."
+msgstr "Nelle superfici superiore e/o inferiore dell'oggetto con un angolo più grande di questa impostazione, il rivestimento esterno non sarà prolungato. Questo evita il prolungamento delle aree del rivestimento esterno strette che vengono create quando la pendenza della superficie del modello è quasi verticale. Un angolo di 0° è orizzontale e non causa il prolungamento di alcun rivestimento esterno, mentre un angolo di 90° è verticale e causa il prolungamento di tutto il rivestimento esterno."
+
+#: fdmprinter.def.json
+msgctxt "min_skin_width_for_expansion label"
+msgid "Minimum Skin Width for Expansion"
+msgstr "Larghezza minima rivestimento esterno per prolunga"
+
+#: fdmprinter.def.json
+msgctxt "min_skin_width_for_expansion description"
+msgid "Skin areas narrower than this are not expanded. This avoids expanding the narrow skin areas that are created when the model surface has a slope close to the vertical."
+msgstr "Le aree del rivestimento esterno inferiori a questa non vengono prolungate. In tal modo si evita di prolungare le aree del rivestimento esterno strette che vengono create quando la superficie del modello presenta un’inclinazione quasi verticale."
+
#: fdmprinter.def.json
msgctxt "infill label"
msgid "Infill"
@@ -1863,86 +1973,6 @@ msgctxt "infill_support_angle description"
msgid "The minimum angle of internal overhangs for which infill is added. At a value of 0° objects are totally filled with infill, 90° will not provide any infill."
msgstr "L'angolo minimo degli sbalzi interni per il quale viene aggiunto il riempimento. Per un valore corrispondente a 0°, gli oggetti sono completamente riempiti di materiale, per un valore corrispondente a 90° non è previsto riempimento."
-#: fdmprinter.def.json
-msgctxt "skin_preshrink label"
-msgid "Skin Removal Width"
-msgstr "Larghezza rimozione rivestimento"
-
-#: fdmprinter.def.json
-msgctxt "skin_preshrink description"
-msgid "The largest width of skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top/bottom skin at slanted surfaces in the model."
-msgstr "Larghezza massima delle aree di rivestimento che è possibile rimuovere. Ogni area di rivestimento più piccola di questo valore verrà eliminata. Questo può aiutare a limitare il tempo e il materiale necessari per la stampa del rivestimento superiore/inferiore sulle superfici inclinate del modello."
-
-#: fdmprinter.def.json
-msgctxt "top_skin_preshrink label"
-msgid "Top Skin Removal Width"
-msgstr "Larghezza rimozione rivestimento superiore"
-
-#: fdmprinter.def.json
-msgctxt "top_skin_preshrink description"
-msgid "The largest width of top skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top skin at slanted surfaces in the model."
-msgstr "Larghezza massima delle aree di rivestimento superiore che è possibile rimuovere. Ogni area di rivestimento più piccola di questo valore verrà eliminata. Questo può aiutare a limitare il tempo e il materiale necessari per la stampa del rivestimento superiore sulle superfici inclinate del modello."
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_preshrink label"
-msgid "Bottom Skin Removal Width"
-msgstr "Larghezza rimozione rivestimento inferiore"
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_preshrink description"
-msgid "The largest width of bottom skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing bottom skin at slanted surfaces in the model."
-msgstr "Larghezza massima delle aree di rivestimento inferiore che è possibile rimuovere. Ogni area di rivestimento più piccola di questo valore verrà eliminata. Questo può aiutare a limitare il tempo e il materiale necessari per la stampa del rivestimento inferiore sulle superfici inclinate del modello."
-
-#: fdmprinter.def.json
-msgctxt "expand_skins_expand_distance label"
-msgid "Skin Expand Distance"
-msgstr "Distanza prolunga rivestimento esterno"
-
-#: fdmprinter.def.json
-msgctxt "expand_skins_expand_distance description"
-msgid "The distance the skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on neighboring layers adhere better to the skin. Lower values save amount of material used."
-msgstr "Distanza per cui i rivestimenti si estendono nel riempimento. Valori maggiori migliorano l'aderenza del rivestimento al riempimento e consentono una migliore aderenza al rivestimento delle pareti degli strati adiacenti. Valori minori consentono di risparmiare sul materiale utilizzato."
-
-#: fdmprinter.def.json
-msgctxt "top_skin_expand_distance label"
-msgid "Top Skin Expand Distance"
-msgstr "Distanza prolunga rivestimento superiore"
-
-#: fdmprinter.def.json
-msgctxt "top_skin_expand_distance description"
-msgid "The distance the top skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on the layer above adhere better to the skin. Lower values save amount of material used."
-msgstr "Distanza per cui i rivestimenti superiori si estendono nel riempimento. Valori maggiori migliorano l'aderenza del rivestimento al riempimento e consentono una migliore aderenza al rivestimento delle pareti dello strato superiore. Valori minori consentono di risparmiare sul materiale utilizzato."
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_expand_distance label"
-msgid "Bottom Skin Expand Distance"
-msgstr "Distanza prolunga rivestimento inferiore"
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_expand_distance description"
-msgid "The distance the bottom skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the skin adhere better to the walls on the layer below. Lower values save amount of material used."
-msgstr "Distanza per cui i rivestimenti inferiori si estendono nel riempimento. Valori maggiori migliorano l'aderenza del rivestimento al riempimento e consentono una migliore aderenza al rivestimento delle pareti dello strato inferiore. Valori minori consentono di risparmiare sul materiale utilizzato."
-
-#: fdmprinter.def.json
-msgctxt "max_skin_angle_for_expansion label"
-msgid "Maximum Skin Angle for Expansion"
-msgstr "Angolo massimo rivestimento esterno per prolunga"
-
-#: fdmprinter.def.json
-msgctxt "max_skin_angle_for_expansion description"
-msgid "Top and/or bottom surfaces of your object with an angle larger than this setting, won't have their top/bottom skin expanded. This avoids expanding the narrow skin areas that are created when the model surface has a near vertical slope. An angle of 0° is horizontal, while an angle of 90° is vertical."
-msgstr "Per le superfici inferiori e/o superiori dell’oggetto con un angolo maggiore di questa impostazione non verrà prolungato il rivestimento esterno superiore/inferiore. In tal modo si evita di prolungare le aree del rivestimento esterno strette create quando la superficie del modello ha un’inclinazione prossima al verticale. Un angolo di 0° è orizzontale, mentre un angolo di 90° è verticale."
-
-#: fdmprinter.def.json
-msgctxt "min_skin_width_for_expansion label"
-msgid "Minimum Skin Width for Expansion"
-msgstr "Larghezza minima rivestimento esterno per prolunga"
-
-#: fdmprinter.def.json
-msgctxt "min_skin_width_for_expansion description"
-msgid "Skin areas narrower than this are not expanded. This avoids expanding the narrow skin areas that are created when the model surface has a slope close to the vertical."
-msgstr "Le aree del rivestimento esterno inferiori a questa non vengono prolungate. In tal modo si evita di prolungare le aree del rivestimento esterno strette che vengono create quando la superficie del modello presenta un’inclinazione quasi verticale."
-
#: fdmprinter.def.json
msgctxt "skin_edge_support_thickness label"
msgid "Skin Edge Support Thickness"
@@ -2071,8 +2101,7 @@ msgstr "Temperatura piano di stampa Strato iniziale"
#: fdmprinter.def.json
msgctxt "material_bed_temperature_layer_0 description"
msgid "The temperature used for the heated build plate at the first layer. If this is 0, the build plate is left unheated during the first layer."
-msgstr "Indica la temperatura usata per il piano di stampa riscaldato per il primo strato. Se questo valore è 0, il piano di stampa viene lasciato non riscaldato"
-" per il primo strato."
+msgstr "Indica la temperatura usata per il piano di stampa riscaldato per il primo strato. Se questo valore è 0, il piano di stampa viene lasciato non riscaldato per il primo strato."
#: fdmprinter.def.json
msgctxt "material_adhesion_tendency label"
@@ -2561,8 +2590,8 @@ msgstr "Velocità di stampa dello strato iniziale"
#: fdmprinter.def.json
msgctxt "speed_layer_0 description"
-msgid "The speed for the initial layer. A lower value is advised to improve adhesion to the build plate."
-msgstr "Indica la velocità per lo strato iniziale. Un valore inferiore è consigliabile per migliorare l’adesione al piano di stampa."
+msgid "The speed for the initial layer. A lower value is advised to improve adhesion to the build plate. Does not affect the build plate adhesion structures themselves, like brim and raft."
+msgstr "La velocità dello strato iniziale. È consigliabile un valore inferiore per migliorare l'adesione al piano di stampa. Non influisce sulle strutture di adesione del piano di stampa stesse, come brim e raft."
#: fdmprinter.def.json
msgctxt "speed_print_layer_0 label"
@@ -3171,8 +3200,9 @@ msgstr "Massima distanza di combing senza retrazione"
#: fdmprinter.def.json
msgctxt "retraction_combing_max_distance description"
-msgid "When non-zero, combing travel moves that are longer than this distance will use retraction."
-msgstr "Per un valore diverso da zero, le corse di spostamento in modalità combing superiori a tale distanza utilizzeranno la retrazione."
+msgid "When greater than zero, combing travel moves that are longer than this distance will use retraction. If set to zero, there is no maximum and combing moves will not use retraction."
+msgstr "Per un valore superiore a zero, le corse di spostamento in modalità combing superiori a tale distanza utilizzeranno la retrazione. Se il valore impostato"
+" è zero, non è presente un valore massimo e le corse in modalità combing non utilizzeranno la retrazione."
#: fdmprinter.def.json
msgctxt "travel_retract_before_outer_wall label"
@@ -5075,10 +5105,8 @@ msgstr "Classificazione dell'elaborazione delle maglie"
#: fdmprinter.def.json
msgctxt "infill_mesh_order description"
-msgid "Determines the priority of this mesh when considering multiple overlapping infill meshes. Areas where multiple infill meshes overlap will take on the settings of the mesh with the lowest rank. An infill mesh with a higher order will modify the infill of infill meshes with lower order and normal meshes."
-msgstr "Determina la priorità di questa mesh quando si considera la sovrapposizione multipla delle mesh di riempimento. Per le aree con la sovrapposizione di più"
-" mesh di riempimento verranno utilizzate le impostazioni della mesh con la classificazione più bassa. Una mesh di riempimento con un ordine più alto modificherà"
-" il riempimento delle mesh di riempimento con un ordine inferiore e delle mesh normali."
+msgid "Determines the priority of this mesh when considering multiple overlapping infill meshes. Areas where multiple infill meshes overlap will take on the settings of the mesh with the highest rank. An infill mesh with a higher rank will modify the infill of infill meshes with lower rank and normal meshes."
+msgstr "Determina la priorità di questa mesh quando si considera la sovrapposizione multipla delle mesh di riempimento. Per le aree con la sovrapposizione di più mesh di riempimento verranno utilizzate le impostazioni della mesh con la classificazione più alta. Una mesh di riempimento con una classificazione più alta modificherà il riempimento delle mesh di riempimento con una classificazione inferiore e delle mesh normali."
#: fdmprinter.def.json
msgctxt "cutting_mesh label"
@@ -5425,6 +5453,16 @@ msgctxt "conical_overhang_angle description"
msgid "The maximum angle of overhangs after the they have been made printable. At a value of 0° all overhangs are replaced by a piece of model connected to the build plate, 90° will not change the model in any way."
msgstr "L’angolo massimo degli sbalzi dopo essere stati resi stampabili. A un valore di 0° tutti gli sbalzi sono sostituiti da un pezzo del modello collegato al piano di stampa, 90° non cambia il modello in alcun modo."
+#: fdmprinter.def.json
+msgctxt "conical_overhang_hole_size label"
+msgid "Maximum Overhang Hole Area"
+msgstr "Area foro di sbalzo massima"
+
+#: fdmprinter.def.json
+msgctxt "conical_overhang_hole_size description"
+msgid "The maximum area of a hole in the base of the model before it's removed by Make Overhang Printable. Holes smaller than this will be retained. A value of 0 mm² will fill all holes in the models base."
+msgstr "L'area massima di un foro nella base del modello prima che venga rimossa da Rendi stampabile lo sbalzo. I fori più piccoli di questo verranno mantenuti. Un valore di 0 mm² riempirà i fori nella base del modello."
+
#: fdmprinter.def.json
msgctxt "coasting_enable label"
msgid "Enable Coasting"
@@ -6364,6 +6402,30 @@ msgctxt "mesh_rotation_matrix description"
msgid "Transformation matrix to be applied to the model when loading it from file."
msgstr "Matrice di rotazione da applicare al modello quando caricato dal file."
+#~ msgctxt "retraction_combing_max_distance description"
+#~ msgid "When non-zero, combing travel moves that are longer than this distance will use retraction."
+#~ msgstr "Per un valore diverso da zero, le corse di spostamento in modalità combing superiori a tale distanza utilizzeranno la retrazione."
+
+#~ msgctxt "machine_use_extruder_offset_to_offset_coords description"
+#~ msgid "Apply the extruder offset to the coordinate system."
+#~ msgstr "Applicare l’offset estrusore al sistema coordinate."
+
+#~ msgctxt "shell label"
+#~ msgid "Shell"
+#~ msgstr "Guscio"
+
+#~ msgctxt "max_skin_angle_for_expansion description"
+#~ msgid "Top and/or bottom surfaces of your object with an angle larger than this setting, won't have their top/bottom skin expanded. This avoids expanding the narrow skin areas that are created when the model surface has a near vertical slope. An angle of 0° is horizontal, while an angle of 90° is vertical."
+#~ msgstr "Per le superfici inferiori e/o superiori dell’oggetto con un angolo maggiore di questa impostazione non verrà prolungato il rivestimento esterno superiore/inferiore. In tal modo si evita di prolungare le aree del rivestimento esterno strette create quando la superficie del modello ha un’inclinazione prossima al verticale. Un angolo di 0° è orizzontale, mentre un angolo di 90° è verticale."
+
+#~ msgctxt "speed_layer_0 description"
+#~ msgid "The speed for the initial layer. A lower value is advised to improve adhesion to the build plate."
+#~ msgstr "Indica la velocità per lo strato iniziale. Un valore inferiore è consigliabile per migliorare l’adesione al piano di stampa."
+
+#~ msgctxt "infill_mesh_order description"
+#~ msgid "Determines the priority of this mesh when considering multiple overlapping infill meshes. Areas where multiple infill meshes overlap will take on the settings of the mesh with the lowest rank. An infill mesh with a higher order will modify the infill of infill meshes with lower order and normal meshes."
+#~ msgstr "Determina la priorità di questa mesh quando si considera la sovrapposizione multipla delle mesh di riempimento. Per le aree con la sovrapposizione di più mesh di riempimento verranno utilizzate le impostazioni della mesh con la classificazione più bassa. Una mesh di riempimento con un ordine più alto modificherà il riempimento delle mesh di riempimento con un ordine inferiore e delle mesh normali."
+
#~ msgctxt "material_bed_temperature description"
#~ msgid "The temperature used for the heated build plate. If this is 0, the bed temperature will not be adjusted."
#~ msgstr "Indica la temperatura usata per il piano di stampa riscaldato. Se è 0, la temperatura del piano non si regola."
diff --git a/resources/i18n/ja_JP/cura.po b/resources/i18n/ja_JP/cura.po
index 4344a6da8d..c170d3ba8e 100644
--- a/resources/i18n/ja_JP/cura.po
+++ b/resources/i18n/ja_JP/cura.po
@@ -1,13 +1,13 @@
# Cura
-# Copyright (C) 2020 Ultimaker B.V.
+# Copyright (C) 2021 Ultimaker B.V.
# This file is distributed under the same license as the Cura package.
#
msgid ""
msgstr ""
-"Project-Id-Version: Cura 4.8\n"
+"Project-Id-Version: Cura 4.10\n"
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
-"POT-Creation-Date: 2020-10-19 13:15+0200\n"
-"PO-Revision-Date: 2020-08-21 13:40+0200\n"
+"POT-Creation-Date: 2021-06-10 17:35+0200\n"
+"PO-Revision-Date: 2021-04-16 15:00+0200\n"
"Last-Translator: Lionbridge \n"
"Language-Team: Japanese , Japanese \n"
"Language: ja_JP\n"
@@ -15,12 +15,12 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Poedit 2.2.4\n"
+"X-Generator: Poedit 2.4.1\n"
#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/DiscoveredPrintersModel.py:83
#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:110
#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/QualityManagementModel.py:361
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1581
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1612
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:130
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:171
msgctxt "@label"
@@ -91,12 +91,12 @@ msgctxt "@text"
msgid "The draft profile is designed to print initial prototypes and concept validation with the intent of significant print time reduction."
msgstr "ドラフトプロファイルは、プリント時間の大幅短縮を目的とした初期プロトタイプとコンセプト検証をプリントするために設計されています。"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:226
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:234
msgctxt "@label"
msgid "Custom Material"
msgstr "カスタムフィラメント"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:227
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:235
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationMenu.qml:205
msgctxt "@label"
msgid "Custom"
@@ -118,7 +118,7 @@ msgctxt "@item:inlistbox"
msgid "All Files (*)"
msgstr "全てのファイル"
-#: /home/trin/Gedeeld/Projects/Cura/cura/API/Account.py:178
+#: /home/trin/Gedeeld/Projects/Cura/cura/API/Account.py:181
msgctxt "@info:title"
msgid "Login failed"
msgstr "ログインに失敗しました"
@@ -148,28 +148,33 @@ msgctxt "@info:title"
msgid "Can't Find Location"
msgstr "位置を確保できません"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:104
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:116
msgctxt "@info:backup_failed"
msgid "Could not create archive from user data directory: {}"
msgstr "ユーザーデータディレクトリからアーカイブを作成できません: {}"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:110
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:122
#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:107
#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:113
msgctxt "@info:title"
msgid "Backup"
msgstr "バックアップ"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:123
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:135
msgctxt "@info:backup_failed"
msgid "Tried to restore a Cura backup without having proper data or meta data."
msgstr "適切なデータまたはメタデータがないのにCuraバックアップをリストアしようとしました。"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:134
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:146
msgctxt "@info:backup_failed"
msgid "Tried to restore a Cura backup that is higher than the current version."
msgstr "現行バージョンより上の Cura バックアップをリストアしようとしました。"
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:157
+msgctxt "@info:backup_failed"
+msgid "The following error occurred while trying to restore a Cura backup:"
+msgstr "Curaのバックアップのリストア中に次のエラーが発生しました。"
+
#: /home/trin/Gedeeld/Projects/Cura/cura/BuildVolume.py:98
msgctxt "@info:status"
msgid "The build volume height has been reduced due to the value of the \"Print Sequence\" setting to prevent the gantry from colliding with printed models."
@@ -319,74 +324,74 @@ msgctxt "@action:button"
msgid "Send report"
msgstr "レポート送信"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:521
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:527
msgctxt "@info:progress"
msgid "Loading machines..."
msgstr "プリンターを読み込み中..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:528
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:534
msgctxt "@info:progress"
msgid "Setting up preferences..."
msgstr "プレファレンスをセットアップ中..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:657
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:672
msgctxt "@info:progress"
msgid "Initializing Active Machine..."
msgstr "アクティブなプリンターを初期化中..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:788
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:803
msgctxt "@info:progress"
msgid "Initializing machine manager..."
msgstr "プリンターマネージャーを初期化中..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:802
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:817
msgctxt "@info:progress"
msgid "Initializing build volume..."
msgstr "ビルドボリュームを初期化中..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:870
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:888
msgctxt "@info:progress"
msgid "Setting up scene..."
msgstr "シーンをセットアップ中..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:906
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:924
msgctxt "@info:progress"
msgid "Loading interface..."
msgstr "インターフェイスを読み込み中..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:911
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:929
msgctxt "@info:progress"
msgid "Initializing engine..."
msgstr "エンジンを初期化中..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1221
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1246
#, python-format
msgctxt "@info 'width', 'depth' and 'height' are variable names that must NOT be translated; just translate the format of ##x##x## mm."
msgid "%(width).1f x %(depth).1f x %(height).1f mm"
msgstr "%(width).1f x %(depth).1f x %(height).1f mm"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1777
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1799
#, python-brace-format
msgctxt "@info:status"
msgid "Only one G-code file can be loaded at a time. Skipped importing {0}"
msgstr "一度に一つのG-codeしか読み取れません。{0}の取り込みをスキップしました。"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1778
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:188
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:242
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1800
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:190
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:244
#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:153
#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:165
msgctxt "@info:title"
msgid "Warning"
msgstr "警告"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1787
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1809
#, python-brace-format
msgctxt "@info:status"
msgid "Can't open any other file if G-code is loading. Skipped importing {0}"
msgstr "G-codeを読み込み中は他のファイルを開くことができません。{0}の取り込みをスキップしました。"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1788
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1810
#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:146
#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:153
#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:139
@@ -409,7 +414,7 @@ msgctxt "@info:title"
msgid "Placing Object"
msgstr "造形データを配置"
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationHelpers.py:90
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationHelpers.py:92
msgctxt "@message"
msgid "Could not read response."
msgstr "応答を読み取れません。"
@@ -429,12 +434,12 @@ msgctxt "@message"
msgid "Something unexpected happened when trying to log in, please try again."
msgstr "ログイン時に予期しないエラーが発生しました。やり直してください。"
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:187
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:189
msgctxt "@info"
msgid "Unable to start a new sign in process. Check if another sign in attempt is still active."
msgstr "新しいサインインプロセスを開始できません。別のサインインの試行がアクティブなままになっていないか確認します。"
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:242
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:244
msgctxt "@info"
msgid "Unable to reach the Ultimaker account server."
msgstr "Ultimaker アカウントサーバーに到達できません。"
@@ -452,8 +457,8 @@ msgctxt "@label Don't translate the XML tag !"
msgid "The file {0} already exists. Are you sure you want to overwrite it?"
msgstr "{0} は既に存在します。ファイルを上書きしますか?"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:452
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:455
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:457
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:460
msgctxt "@info:status"
msgid "Invalid file URL:"
msgstr "無効なファイルのURL:"
@@ -536,33 +541,33 @@ msgctxt "@info:status"
msgid "Profile {0} has an unknown file type or is corrupted."
msgstr "プロファイル{0}は不特定なファイルまたは破損があります。"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:423
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:426
msgctxt "@label"
msgid "Custom profile"
msgstr "カスタムプロファイル"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:439
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:442
msgctxt "@info:status"
msgid "Profile is missing a quality type."
msgstr "プロファイルはクオリティータイプが不足しています。"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:443
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:446
msgctxt "@info:status"
-msgid "Global stack is missing."
-msgstr "グローバルスタックがありません。"
+msgid "There is no active printer yet."
+msgstr "アクティブなプリンターはありません。"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:449
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:452
msgctxt "@info:status"
msgid "Unable to add the profile."
msgstr "プロファイルを追加できません。"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:463
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:466
#, python-brace-format
msgctxt "@info:status"
msgid "Quality type '{0}' is not compatible with the current active machine definition '{1}'."
msgstr "クオリティータイプ「{0}」は、現在アクティブなプリンター定義「{1}」と互換性がありません。"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:468
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:471
#, python-brace-format
msgctxt "@info:status"
msgid "Warning: The profile is not visible because its quality type '{0}' is not available for the current configuration. Switch to a material/nozzle combination that can use this quality type."
@@ -578,23 +583,23 @@ msgctxt "@info:No intent profile selected"
msgid "Default"
msgstr "Default"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:712
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:713
#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:216
msgctxt "@label"
msgid "Nozzle"
msgstr "ノズル"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:860
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:856
msgctxt "@info:message Followed by a list of settings."
msgid "Settings have been changed to match the current availability of extruders:"
msgstr "現在利用可能な次のエクストルーダーに合わせて設定が変更されました:"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:862
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:858
msgctxt "@info:title"
msgid "Settings updated"
msgstr "設定が更新されました"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1447
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1478
msgctxt "@info:title"
msgid "Extruder(s) Disabled"
msgstr "エクストルーダーを無効にしました"
@@ -607,13 +612,13 @@ msgid "Add"
msgstr "追加"
#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:26
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:263
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:272
msgctxt "@action:button"
msgid "Finish"
msgstr "終わる"
#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:33
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:441
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:445
#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:234
#: /home/trin/Gedeeld/Projects/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:150
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxProgressButton.qml:19
@@ -621,7 +626,7 @@ msgstr "終わる"
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:352
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:58
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/PrintWindow.qml:42
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:87
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:82
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:292
msgctxt "@action:button"
msgid "Cancel"
@@ -633,76 +638,83 @@ msgctxt "@label"
msgid "Group #{group_nr}"
msgstr "グループ #{group_nr}"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:83
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:82
msgctxt "@tooltip"
msgid "Outer Wall"
msgstr "アウターウォール"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:84
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:83
msgctxt "@tooltip"
msgid "Inner Walls"
msgstr "インナーウォール"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:85
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:84
msgctxt "@tooltip"
msgid "Skin"
msgstr "スキン"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:86
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:85
msgctxt "@tooltip"
msgid "Infill"
msgstr "インフィル"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:87
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:86
msgctxt "@tooltip"
msgid "Support Infill"
msgstr "サポートイルフィル"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:88
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:87
msgctxt "@tooltip"
msgid "Support Interface"
msgstr "サポートインターフェイス"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:89
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:88
msgctxt "@tooltip"
msgid "Support"
msgstr "サポート"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:90
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:89
msgctxt "@tooltip"
msgid "Skirt"
msgstr "スカート"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:91
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:90
msgctxt "@tooltip"
msgid "Prime Tower"
msgstr "プライムタワー"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:92
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:91
msgctxt "@tooltip"
msgid "Travel"
msgstr "移動"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:93
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:92
msgctxt "@tooltip"
msgid "Retractions"
msgstr "退却"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:94
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:93
msgctxt "@tooltip"
msgid "Other"
msgstr "他"
#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:56
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:259
msgctxt "@action:button"
msgid "Next"
msgstr "次"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WhatsNewPagesModel.py:17
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:268
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WhatsNewPagesModel.py:55
+msgctxt "@action:button"
+msgid "Skip"
+msgstr "スキップ"
+
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WhatsNewPagesModel.py:60
#: /home/trin/Gedeeld/Projects/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:185
#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:128
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:482
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:173
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:485
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:174
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:127
msgctxt "@action:button"
msgid "Close"
@@ -727,29 +739,36 @@ msgstr ""
"
"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:535
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:540
#, python-brace-format
msgctxt "@info:status Don't translate the XML tags or !"
msgid "Project file {0} contains an unknown machine type {1}. Cannot import the machine. Models will be imported instead."
msgstr "プロジェクトファイル {0} に不明なマシンタイプ {1} があります。マシンをインポートできません。代わりにモデルをインポートします。"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:538
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:543
msgctxt "@info:title"
msgid "Open Project File"
msgstr "プロジェクトファイルを開く"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:634
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:639
#, python-brace-format
msgctxt "@info:error Don't translate the XML tags or !"
msgid "Project file {0} is suddenly inaccessible: {1}."
msgstr "プロジェクトファイル{0}が突然アクセスできなくなりました:{1}。"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:635
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:640
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:647
msgctxt "@info:title"
msgid "Can't Open Project File"
msgstr "プロジェクトファイルを開けません"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:686
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:646
+#, python-brace-format
+msgctxt "@info:error Don't translate the XML tags or !"
+msgid "Project file {0} is corrupt: {1}."
+msgstr "プロジェクトファイル{0}は破損しています:{1}。"
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:698
#, python-brace-format
msgctxt "@info:error Don't translate the XML tag !"
msgid "Project file {0} is made using profiles that are unknown to this version of Ultimaker Cura."
@@ -787,7 +806,7 @@ msgctxt "@error:zip"
msgid "The operating system does not allow saving a project file to this location or with this file name."
msgstr "使用しているオペレーティングシステムでは、この場所またはこのファイル名でプロジェクトファイルを保存することはできません。"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWriter.py:185
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWriter.py:206
msgctxt "@error:zip"
msgid "Error writing 3mf file."
msgstr "3Mf ファイルの書き込みエラー。"
@@ -842,8 +861,8 @@ msgctxt "@error:file_size"
msgid "The backup exceeds the maximum file size."
msgstr "バックアップが最大ファイルサイズを超えています。"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DriveApiService.py:82
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/RestoreBackupJob.py:23
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DriveApiService.py:86
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/RestoreBackupJob.py:26
msgctxt "@info:backup_status"
msgid "There was an error trying to restore your backup."
msgstr "バックアップのリストア中にエラーが発生しました。"
@@ -853,45 +872,45 @@ msgctxt "@item:inmenu"
msgid "Manage backups"
msgstr "バックアップを管理する"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:356
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:382
msgctxt "@info:status"
msgid "Unable to slice with the current material as it is incompatible with the selected machine or configuration."
msgstr "選ばれたプリンターまたは選ばれたプリント構成が異なるため進行中の材料にてスライスを完了できません。"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:356
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:387
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:411
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:420
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:429
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:441
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:382
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:413
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:437
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:446
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:455
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:467
msgctxt "@info:title"
msgid "Unable to slice"
msgstr "スライスできません"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:386
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:412
#, python-brace-format
msgctxt "@info:status"
msgid "Unable to slice with the current settings. The following settings have errors: {0}"
msgstr "現在の設定でスライスが完了できません。以下の設定にエラーがあります: {0}"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:410
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:436
#, python-brace-format
msgctxt "@info:status"
msgid "Unable to slice due to some per-model settings. The following settings have errors on one or more models: {error_labels}"
msgstr "モデル別の設定があるためスライスできません。1つまたは複数のモデルで以下の設定にエラーが発生しました:{error_labels}"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:419
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:445
msgctxt "@info:status"
msgid "Unable to slice because the prime tower or prime position(s) are invalid."
msgstr "プライムタワーまたはプライム位置が無効なためスライスできません。"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:428
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:454
#, python-format
msgctxt "@info:status"
msgid "Unable to slice because there are objects associated with disabled Extruder %s."
msgstr "無効な Extruder %s に関連付けられている造形物があるため、スライスできません。"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:437
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:463
msgctxt "@info:status"
msgid ""
"Please review settings and check if your models:\n"
@@ -1160,28 +1179,28 @@ msgctxt "@item:intext"
msgid "Removable Drive"
msgstr "リムーバブルドライブ"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:121
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:128
msgctxt "@info:status"
msgid "Cura does not accurately display layers when Wire Printing is enabled."
msgstr "Curaはワイヤープリンティングが有効な場合は正確にレイヤーを表示しません。"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:122
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:129
msgctxt "@info:title"
msgid "Simulation View"
msgstr "シミュレーションビュー"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:123
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:130
msgctxt "@info:status"
msgid "Nothing is shown because you need to slice first."
msgstr "最初にスライスする必要があるため、何も表示されません。"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:123
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:130
msgctxt "@info:title"
msgid "No layers to show"
msgstr "表示するレイヤーがありません"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:124
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:73
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:131
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:74
msgctxt "@info:option_text"
msgid "Do not show this message again"
msgstr "今後このメッセージを表示しない"
@@ -1191,16 +1210,21 @@ msgctxt "@item:inlistbox"
msgid "Layer view"
msgstr "レイヤービュー"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:70
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:71
msgctxt "@info:status"
-msgid "Your model is not manifold. The highlighted areas indicate either missing or extraneous surfaces."
-msgstr "モデルはマニホールドではありません。ハイライトされたエリアは、欠けている表面または無関係な表面を示します。"
+msgid "The highlighted areas indicate either missing or extraneous surfaces. Fix your model and open it again into Cura."
+msgstr "ハイライトされたエリアは、欠けている表面または無関係な表面を示します。モデルを修正してもう一度Curaを開いてください。"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:72
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:73
msgctxt "@info:title"
-msgid "Model errors"
+msgid "Model Errors"
msgstr "モデルエラー"
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:79
+msgctxt "@action:button"
+msgid "Learn more"
+msgstr "詳しく見る"
+
#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/__init__.py:12
msgctxt "@item:inmenu"
msgid "Solid view"
@@ -1227,7 +1251,7 @@ msgctxt "@info:title"
msgid "Changes detected from your Ultimaker account"
msgstr "Ultimakerアカウントから変更が検出されました"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py:146
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py:145
msgctxt "@action:button"
msgid "Sync"
msgstr "同期"
@@ -1263,7 +1287,7 @@ msgctxt "@info:generic"
msgid "You need to quit and restart {} before changes have effect."
msgstr "変更を有効にするために{}を終了して再始動する必要があります。"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/SyncOrchestrator.py:76
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/SyncOrchestrator.py:79
msgctxt "@info:generic"
msgid "{} plugins failed to download"
msgstr "{}プラグインのダウンロードに失敗しました"
@@ -1304,7 +1328,11 @@ msgctxt "@item:inlistbox"
msgid "Ultimaker Format Package"
msgstr "Ultimakerフォーマットパッケージ"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:146
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:57
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:72
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:94
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:149
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:159
msgctxt "@info:error"
msgid "Can't write to UFP file:"
msgstr "UFPファイルに書き込めません:"
@@ -1319,22 +1347,22 @@ msgctxt "@action"
msgid "Select upgrades"
msgstr "アップグレードを選択する"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:152
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:154
msgctxt "@action:button"
msgid "Print via cloud"
msgstr "クラウドからプリントする"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:153
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:155
msgctxt "@properties:tooltip"
msgid "Print via cloud"
msgstr "クラウドからプリントする"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:154
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:156
msgctxt "@info:status"
msgid "Connected via cloud"
msgstr "クラウド経由で接続"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:264
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:270
#, python-brace-format
msgctxt "@error:send"
msgid "Unknown error code when uploading print job: {0}"
@@ -1430,14 +1458,18 @@ msgid ""
msgid_plural ""
"You are about to remove {0} printers from Cura. This action cannot be undone.\n"
"Are you sure you want to continue?"
-msgstr[0] "Curaから{0}台のプリンターを削除しようとしています。この操作は元に戻せません。\n続行してもよろしいですか?"
+msgstr[0] ""
+"Curaから{0}台のプリンターを削除しようとしています。この操作は元に戻せません。\n"
+"続行してもよろしいですか?"
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:468
msgctxt "@label"
msgid ""
"You are about to remove all printers from Cura. This action cannot be undone.\n"
"Are you sure you want to continue?"
-msgstr "Curaからすべてのプリンターを削除しようとしています。この操作は元に戻せません。\n続行してもよろしいですか?"
+msgstr ""
+"Curaからすべてのプリンターを削除しようとしています。この操作は元に戻せません。\n"
+"続行してもよろしいですか?"
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Messages/CloudFlowMessage.py:27
msgctxt "@info:status"
@@ -1621,90 +1653,90 @@ msgctxt "@info:tooltip"
msgid "Some things could be problematic in this print. Click to see tips for adjustment."
msgstr "このプリントの何かが問題です。クリックして調整のヒントをご覧ください。"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:14
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:15
msgctxt "@title:window"
msgid "Open Project"
msgstr "プロジェクトを開く"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:61
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:62
msgctxt "@action:ComboBox Update/override existing profile"
msgid "Update existing"
msgstr "既存を更新する"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:62
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:63
msgctxt "@action:ComboBox Save settings in a new profile"
msgid "Create new"
msgstr "新しいものを作成する"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:74
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:75
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:69
msgctxt "@action:title"
msgid "Summary - Cura Project"
msgstr "サマリーCuraプロジェクト"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:96
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:97
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:93
msgctxt "@action:label"
msgid "Printer settings"
msgstr "プリンターの設定"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:112
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:113
msgctxt "@info:tooltip"
msgid "How should the conflict in the machine be resolved?"
msgstr "このプリンターの問題をどのように解決すればいいか?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:165
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:167
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:102
msgctxt "@action:label"
msgid "Type"
msgstr "タイプ"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:181
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:183
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:117
msgctxt "@action:label"
msgid "Printer Group"
msgstr "プリンターグループ"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:203
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:205
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:218
msgctxt "@action:label"
msgid "Profile settings"
msgstr "プロファイル設定"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:219
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:221
msgctxt "@info:tooltip"
msgid "How should the conflict in the profile be resolved?"
msgstr "このプロファイルの問題をどのように解決すればいいか?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:239
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:349
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:242
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:353
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:117
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:242
msgctxt "@action:label"
msgid "Name"
msgstr "ネーム"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:255
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:258
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:259
msgctxt "@action:label"
msgid "Intent"
msgstr "Intent"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:271
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:274
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:226
msgctxt "@action:label"
msgid "Not in profile"
msgstr "プロファイル内にない"
# Can’t edit the Japanese text
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:276
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:279
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:231
msgctxt "@action:label"
msgid "%1 override"
msgid_plural "%1 overrides"
msgstr[0] "%1個の設定を上書き"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:287
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:290
msgctxt "@action:label"
msgid "Derivative from"
msgstr "次から引き出す"
@@ -1712,48 +1744,48 @@ msgstr "次から引き出す"
# can’t inset the japanese text
# %1: print quality profile name
# %2: number of overridden ssettings
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:292
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:295
msgctxt "@action:label"
msgid "%1, %2 override"
msgid_plural "%1, %2 overrides"
msgstr[0] "%2の%1個の設定を上書き"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:309
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:312
msgctxt "@action:label"
msgid "Material settings"
msgstr "フィラメント設定"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:325
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:328
msgctxt "@info:tooltip"
msgid "How should the conflict in the material be resolved?"
msgstr "このフィラメントの問題をどのように解決すればいいか?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:369
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:373
msgctxt "@action:label"
msgid "Setting visibility"
msgstr "視野設定"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:378
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:382
msgctxt "@action:label"
msgid "Mode"
msgstr "モード"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:394
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:398
msgctxt "@action:label"
msgid "Visible settings:"
msgstr "ビジブル設定:"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:399
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:403
msgctxt "@action:label"
msgid "%1 out of %2"
msgstr "%2のうち%1"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:425
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:429
msgctxt "@action:warning"
msgid "Loading a project will clear all models on the build plate."
msgstr "プロジェクトを読み込むとビルドプレート上のすべてのモデルがクリアされます。"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:453
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:457
msgctxt "@action:button"
msgid "Open"
msgstr "開く"
@@ -1855,8 +1887,8 @@ msgstr "Cura のバックアップおよび同期を設定します。"
#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/qml/pages/WelcomePage.qml:51
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/WelcomePage.qml:39
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:68
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:125
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:53
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:199
msgctxt "@button"
msgid "Sign in"
msgstr "サインイン"
@@ -2090,12 +2122,12 @@ msgctxt "@label"
msgid "Cooling Fan Number"
msgstr "冷却ファンの番号"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:162
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:163
msgctxt "@title:label"
msgid "Extruder Start G-code"
msgstr "エクストルーダーがG-Codeを開始する"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:176
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:177
msgctxt "@title:label"
msgid "Extruder End G-code"
msgstr "エクストルーダーがG-Codeを終了する"
@@ -2180,12 +2212,17 @@ msgctxt "@label"
msgid "Number of Extruders"
msgstr "エクストルーダーの数"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:374
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:345
+msgctxt "@label"
+msgid "Apply Extruder offsets to GCode"
+msgstr "エクストルーダーのオフセットをGCodeに適用します"
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:393
msgctxt "@title:label"
msgid "Start G-code"
msgstr "G-Codeの開始"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:385
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:404
msgctxt "@title:label"
msgid "End G-code"
msgstr "G-codeの終了"
@@ -2212,6 +2249,11 @@ msgctxt "@label link to technical assistance"
msgid "View user manuals online"
msgstr "ユーザーマニュアルをオンラインで見る"
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MonitorStage/MonitorMain.qml:172
+msgctxt "@info"
+msgid "In order to monitor your print from Cura, please connect the printer."
+msgstr "Cura から印刷を監視するには、プリンタを接続してください。"
+
#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml:42
msgctxt "@label"
msgid "Mesh Type"
@@ -2258,7 +2300,7 @@ msgid "Select Settings to Customize for this model"
msgstr "このモデルをカスタマイズする設定を選択する"
#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:55
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:94
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:96
msgctxt "@label:textbox"
msgid "Filter..."
msgstr "フィルター..."
@@ -2268,32 +2310,32 @@ msgctxt "@label:checkbox"
msgid "Show all"
msgstr "すべて表示する"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:18
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:20
msgctxt "@title:window"
msgid "Post Processing Plugin"
msgstr "プラグイン処理後"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:57
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:59
msgctxt "@label"
msgid "Post Processing Scripts"
msgstr "スクリプトの処理後"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:233
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:235
msgctxt "@action"
msgid "Add a script"
msgstr "スクリプトを加える"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:279
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:282
msgctxt "@label"
msgid "Settings"
msgstr "設定"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:499
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:502
msgctxt "@info:tooltip"
msgid "Change active post-processing scripts."
msgstr "処理したアクティブなスクリプトを変更します。"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:503
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:506
msgctxt "@info:tooltip"
msgid "The following script is active:"
msgid_plural "The following scripts are active:"
@@ -2305,78 +2347,93 @@ msgctxt "@label"
msgid "Color scheme"
msgstr "カラースキーム"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:107
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:110
msgctxt "@label:listbox"
msgid "Material Color"
msgstr "フィラメントの色"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:111
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:114
msgctxt "@label:listbox"
msgid "Line Type"
msgstr "ラインタイプ"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:115
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:118
msgctxt "@label:listbox"
msgid "Speed"
msgstr "スピード"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:119
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:122
msgctxt "@label:listbox"
-msgid "Layer thickness"
+msgid "Layer Thickness"
msgstr "レイヤーの厚さ"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:156
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:126
+msgctxt "@label:listbox"
+msgid "Line Width"
+msgstr "ライン幅"
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:130
+msgctxt "@label:listbox"
+msgid "Flow"
+msgstr "フロー"
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:171
msgctxt "@label"
msgid "Compatibility Mode"
msgstr "コンパティビリティモード"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:230
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:245
msgctxt "@label"
msgid "Travels"
msgstr "移動"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:236
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:251
msgctxt "@label"
msgid "Helpers"
msgstr "ヘルプ"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:242
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:257
msgctxt "@label"
msgid "Shell"
msgstr "外郭"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:248
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:263
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedInfillDensitySelector.qml:65
msgctxt "@label"
msgid "Infill"
msgstr "インフィル"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:298
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:271
+msgctxt "@label"
+msgid "Starts"
+msgstr "開始"
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:322
msgctxt "@label"
msgid "Only Show Top Layers"
msgstr "トップのレイヤーを表示する"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:308
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:332
msgctxt "@label"
msgid "Show 5 Detailed Layers On Top"
msgstr "トップの5レイヤーの詳細を表示する"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:322
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:346
msgctxt "@label"
msgid "Top / Bottom"
msgstr "トップ/ボトム"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:326
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:350
msgctxt "@label"
msgid "Inner Wall"
msgstr "インナーウォール"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:384
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:419
msgctxt "@label"
msgid "min"
msgstr "最小"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:433
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:488
msgctxt "@label"
msgid "max"
msgstr "最大"
@@ -2517,7 +2574,7 @@ msgid "Plugins"
msgstr "プラグイン"
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxHeader.qml:44
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:466
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:457
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:89
msgctxt "@title:tab"
msgid "Materials"
@@ -2566,6 +2623,7 @@ msgstr "無視"
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/dialogs/CompatibilityDialog.qml:23
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:123
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/FirstStartMachineActionsContent.qml:77
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:178
msgctxt "@button"
msgid "Next"
msgstr "次"
@@ -2908,7 +2966,7 @@ msgid "Delete"
msgstr "削除"
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:100
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:289
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:290
msgctxt "@label"
msgid "Resume"
msgstr "再開"
@@ -2924,8 +2982,8 @@ msgid "Resuming..."
msgstr "再開しています..."
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:106
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:284
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:293
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:285
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:294
msgctxt "@label"
msgid "Pause"
msgstr "一時停止"
@@ -2966,7 +3024,7 @@ msgid "Are you sure you want to abort %1?"
msgstr "%1 を中止してよろしいですか?"
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:164
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:335
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:336
msgctxt "@window:title"
msgid "Abort print"
msgstr "プリント中止"
@@ -2977,7 +3035,7 @@ msgid "Manage printer"
msgstr "プリンター管理"
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:254
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:519
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:523
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:250
msgctxt "@info"
msgid "Please update your printer's firmware to manage the queue remotely."
@@ -3003,27 +3061,34 @@ msgctxt "@label:status"
msgid "Idle"
msgstr "アイドル"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:365
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:364
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:84
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:86
+msgctxt "@label:status"
+msgid "Preparing..."
+msgstr "準備中..."
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:369
msgctxt "@label:status"
msgid "Printing"
msgstr "プリント中"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:406
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:410
msgctxt "@label"
msgid "Untitled"
msgstr "無題"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:427
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:431
msgctxt "@label"
msgid "Anonymous"
msgstr "匿名"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:454
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:458
msgctxt "@label:status"
msgid "Requires configuration changes"
msgstr "構成の変更が必要です"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:492
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:496
msgctxt "@action:button"
msgid "Details"
msgstr "詳細"
@@ -3050,12 +3115,6 @@ msgctxt "@label:status"
msgid "Finished"
msgstr "終了"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:84
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:86
-msgctxt "@label:status"
-msgid "Preparing..."
-msgstr "準備中..."
-
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:88
msgctxt "@label:status"
msgid "Aborting..."
@@ -3136,27 +3195,27 @@ msgctxt "@action:button"
msgid "Sign in"
msgstr "サインイン"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:40
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:20
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:64
msgctxt "@label"
-msgid "Your key to connected 3D printing"
-msgstr "3Dプリンティング活用の鍵"
+msgid "Sign in to the Ultimaker platform"
+msgstr "Ultimakerのプラットフォームにサインイン"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:51
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:42
msgctxt "@text"
msgid ""
-"- Customize your experience with more print profiles and plugins\n"
-"- Stay flexible by syncing your setup and loading it anywhere\n"
-"- Increase efficiency with a remote workflow on Ultimaker printers"
+"- Add material profiles and plug-ins from the Marketplace\n"
+"- Back-up and sync your material profiles and plug-ins\n"
+"- Share ideas and get help from 48,000+ users in the Ultimaker community"
msgstr ""
-"- より多くのプリントプロファイルとプラグインを使用して作業をカスタマイズする\n"
-"- 設定を同期させ、どこにでも読み込めるようにすることで柔軟性を保つ\n"
-"- Ultimakerプリンターのリモートワークフローを活用して効率を高める"
+"- マーケットプレースから材料プロファイルとプラグインを追加\n"
+"- 材料プロファイルとプラグインのバックアップと同期\n"
+"- Ultimakerコミュニティで48,000人以上のユーザーとアイデアを共有してアドバイスをもらう"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:78
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:142
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:62
msgctxt "@button"
-msgid "Create account"
-msgstr "アカウントを作成する"
+msgid "Create a free Ultimaker account"
+msgstr "無料のUltimakerアカウントを作成"
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/SyncState.qml:28
msgctxt "@label"
@@ -3263,309 +3322,308 @@ msgctxt "@button"
msgid "Cancel"
msgstr "キャンセル"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:82
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:83
msgctxt "@action:inmenu"
msgid "Show Online Troubleshooting Guide"
msgstr "オンラインでトラブルシューティングガイドを表示する"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:89
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:90
msgctxt "@action:inmenu"
msgid "Toggle Full Screen"
msgstr "留め金 フルスクリーン"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:97
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:98
msgctxt "@action:inmenu"
msgid "Exit Full Screen"
msgstr "全画面表示を終了する"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:104
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:105
msgctxt "@action:inmenu menubar:edit"
msgid "&Undo"
msgstr "&取り消す"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:114
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:115
msgctxt "@action:inmenu menubar:edit"
msgid "&Redo"
msgstr "&やりなおす"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:124
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:125
msgctxt "@action:inmenu menubar:file"
msgid "&Quit"
msgstr "&やめる"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:132
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:133
msgctxt "@action:inmenu menubar:view"
msgid "3D View"
msgstr "3Dビュー"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:139
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:140
msgctxt "@action:inmenu menubar:view"
msgid "Front View"
msgstr "フロントビュー"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:146
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:147
msgctxt "@action:inmenu menubar:view"
msgid "Top View"
msgstr "トップビュー"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:153
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:154
+msgctxt "@action:inmenu menubar:view"
+msgid "Bottom View"
+msgstr "底面図"
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:161
msgctxt "@action:inmenu menubar:view"
msgid "Left Side View"
msgstr "左サイドビュー"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:160
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:168
msgctxt "@action:inmenu menubar:view"
msgid "Right Side View"
msgstr "右サイドビュー"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:167
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:175
msgctxt "@action:inmenu"
msgid "Configure Cura..."
msgstr "Curaを構成する..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:174
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:182
msgctxt "@action:inmenu menubar:printer"
msgid "&Add Printer..."
msgstr "&プリンターを追加する..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:180
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:188
msgctxt "@action:inmenu menubar:printer"
msgid "Manage Pr&inters..."
msgstr "プリンターを管理する..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:187
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:195
msgctxt "@action:inmenu"
msgid "Manage Materials..."
msgstr "フィラメントを管理する..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:195
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:203
msgctxt "@action:inmenu"
msgid "Add more materials from Marketplace"
msgstr "マーケットプレイスから材料を追加"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:202
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:210
msgctxt "@action:inmenu menubar:profile"
msgid "&Update profile with current settings/overrides"
msgstr "&現在の設定/無効にプロファイルをアップデートする"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:210
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:218
msgctxt "@action:inmenu menubar:profile"
msgid "&Discard current changes"
msgstr "&変更を破棄する"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:222
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:230
msgctxt "@action:inmenu menubar:profile"
msgid "&Create profile from current settings/overrides..."
msgstr "&今の設定/無効からプロファイルを作成する..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:228
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:236
msgctxt "@action:inmenu menubar:profile"
msgid "Manage Profiles..."
msgstr "プロファイルを管理する..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:236
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:244
msgctxt "@action:inmenu menubar:help"
msgid "Show Online &Documentation"
msgstr "オンラインドキュメントを表示する"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:244
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:252
msgctxt "@action:inmenu menubar:help"
msgid "Report a &Bug"
msgstr "報告&バグ"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:252
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:260
msgctxt "@action:inmenu menubar:help"
msgid "What's New"
msgstr "新情報"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:258
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:266
msgctxt "@action:inmenu menubar:help"
msgid "About..."
msgstr "アバウト..."
-# can’t enter japanese text
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:265
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:273
msgctxt "@action:inmenu menubar:edit"
-msgid "Delete Selected Model"
-msgid_plural "Delete Selected Models"
-msgstr[0] "&選択したモデルを削除"
+msgid "Delete Selected"
+msgstr "選択内容を削除"
-# can’t enter japanese text
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:275
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:283
msgctxt "@action:inmenu menubar:edit"
-msgid "Center Selected Model"
-msgid_plural "Center Selected Models"
-msgstr[0] "選択したモデルを中央に移動"
+msgid "Center Selected"
+msgstr "選択内容を中央に移動"
-# can’t edit japanese text
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:284
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:292
msgctxt "@action:inmenu menubar:edit"
-msgid "Multiply Selected Model"
-msgid_plural "Multiply Selected Models"
-msgstr[0] "選択した複数のモデル"
+msgid "Multiply Selected"
+msgstr "選択内容を増倍"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:293
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:301
msgctxt "@action:inmenu"
msgid "Delete Model"
msgstr "モデルを消去する"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:301
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:309
msgctxt "@action:inmenu"
msgid "Ce&nter Model on Platform"
msgstr "プラットホームの中心にモデルを配置"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:307
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:315
msgctxt "@action:inmenu menubar:edit"
msgid "&Group Models"
msgstr "&モデルグループ"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:327
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:335
msgctxt "@action:inmenu menubar:edit"
msgid "Ungroup Models"
msgstr "モデルを非グループ化"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:337
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:345
msgctxt "@action:inmenu menubar:edit"
msgid "&Merge Models"
msgstr "モ&デルの合体"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:347
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:355
msgctxt "@action:inmenu"
msgid "&Multiply Model..."
msgstr "&モデルを増倍する..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:354
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:362
msgctxt "@action:inmenu menubar:edit"
msgid "Select All Models"
msgstr "すべてのモデル選択"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:364
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:372
msgctxt "@action:inmenu menubar:edit"
msgid "Clear Build Plate"
msgstr "ビルドプレート上のクリア"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:374
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:382
msgctxt "@action:inmenu menubar:file"
msgid "Reload All Models"
msgstr "すべてのモデルを読み込む"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:383
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:391
msgctxt "@action:inmenu menubar:edit"
msgid "Arrange All Models To All Build Plates"
msgstr "すべてのモデルをすべてのビルドプレートに配置"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:390
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:398
msgctxt "@action:inmenu menubar:edit"
msgid "Arrange All Models"
msgstr "すべてのモデルをアレンジする"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:398
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:406
msgctxt "@action:inmenu menubar:edit"
msgid "Arrange Selection"
msgstr "選択をアレンジする"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:405
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:413
msgctxt "@action:inmenu menubar:edit"
msgid "Reset All Model Positions"
msgstr "すべてのモデルのポジションをリセットする"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:412
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:420
msgctxt "@action:inmenu menubar:edit"
msgid "Reset All Model Transformations"
msgstr "すべてのモデル&変更点をリセットする"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:419
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:429
msgctxt "@action:inmenu menubar:file"
msgid "&Open File(s)..."
msgstr "&ファイルを開く(s)..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:427
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:439
msgctxt "@action:inmenu menubar:file"
msgid "&New Project..."
msgstr "&新しいプロジェクト..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:434
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:446
msgctxt "@action:inmenu menubar:help"
msgid "Show Configuration Folder"
msgstr "コンフィグレーションのフォルダーを表示する"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:441
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:538
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:453
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:550
msgctxt "@action:menu"
msgid "Configure setting visibility..."
msgstr "視野のセッティングを構成する..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:448
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:460
msgctxt "@action:menu"
msgid "&Marketplace"
msgstr "&マーケットプレース"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:266
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:257
msgctxt "@label"
msgid "This package will be installed after restarting."
msgstr "このパッケージは再起動後にインストールされます。"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:459
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:15
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:450
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:17
msgctxt "@title:tab"
msgid "General"
msgstr "一般"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:462
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:453
msgctxt "@title:tab"
msgid "Settings"
msgstr "設定"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:464
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:455
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:16
msgctxt "@title:tab"
msgid "Printers"
msgstr "プリンター"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:468
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:459
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:34
msgctxt "@title:tab"
msgid "Profiles"
msgstr "プロファイル"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:587
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:576
msgctxt "@title:window %1 is the application name"
msgid "Closing %1"
msgstr "%1を閉じています"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:588
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:600
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:577
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:589
msgctxt "@label %1 is the application name"
msgid "Are you sure you want to exit %1?"
msgstr "%1を終了しますか?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:638
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:627
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:19
msgctxt "@title:window"
msgid "Open file(s)"
msgstr "ファイルを開く"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:744
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:737
msgctxt "@window:title"
msgid "Install Package"
msgstr "パッケージをインストール"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:752
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:745
msgctxt "@title:window"
msgid "Open File(s)"
msgstr "ファイルを開く(s)"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:755
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:748
msgctxt "@text:window"
msgid "We have found one or more G-Code files within the files you have selected. You can only open one G-Code file at a time. If you want to open a G-Code file, please just select only one."
msgstr "選択したファイルの中に複数のG-codeが存在します。1つのG-codeのみ一度に開けます。G-codeファイルを開く場合は、1点のみ選んでください。"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:858
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:857
msgctxt "@title:window"
msgid "Add Printer"
msgstr "プリンターを追加する"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:866
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:865
msgctxt "@title:window"
msgid "What's New"
msgstr "新情報"
@@ -3713,17 +3771,27 @@ msgctxt "@label"
msgid "Python bindings for libnest2d"
msgstr "libnest2dのPythonバインディング"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:161
+msgctxt "@label"
+msgid "Support library for system keyring access"
+msgstr "システムキーリングアクセスを操作するためのライブラリーサポート"
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:162
msgctxt "@label"
+msgid "Python extensions for Microsoft Windows"
+msgstr "Microsoft Windows用のPython拡張機能"
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:163
+msgctxt "@label"
msgid "Font"
msgstr "フォント"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:163
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:164
msgctxt "@label"
msgid "SVG icons"
msgstr "SVGアイコン"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:164
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:165
msgctxt "@label"
msgid "Linux cross-distribution application deployment"
msgstr "Linux 分散アプリケーションの開発"
@@ -3733,22 +3801,22 @@ msgctxt "@title:window"
msgid "Open project file"
msgstr "プロジェクトを開く"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:93
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:88
msgctxt "@text:window"
msgid "This is a Cura project file. Would you like to open it as a project or import the models from it?"
msgstr "これはCuraのプロジェクトファイルです。プロジェクトとしてあけますか、それともモデルのみ取り込みますか?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:103
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:98
msgctxt "@text:window"
msgid "Remember my choice"
msgstr "選択を記憶させる"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:122
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:117
msgctxt "@action:button"
msgid "Open as project"
msgstr "プロジェクトを開く"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:131
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:126
msgctxt "@action:button"
msgid "Import models"
msgstr "モデルを取り込む"
@@ -3764,7 +3832,10 @@ msgid ""
"You have customized some profile settings.\n"
"Would you like to Keep these changed settings after switching profiles?\n"
"Alternatively, you can discard the changes to load the defaults from '%1'."
-msgstr "一部のプロファイル設定がカスタマイズされています。\nこれらの変更された設定をプロファイルの切り替え後も維持しますか?\n変更を破棄して'%1'からデフォルトの設定を読み込むこともできます。"
+msgstr ""
+"一部のプロファイル設定がカスタマイズされています。\n"
+"これらの変更された設定をプロファイルの切り替え後も維持しますか?\n"
+"変更を破棄して'%1'からデフォルトの設定を読み込むこともできます。"
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:111
msgctxt "@title:column"
@@ -3777,7 +3848,7 @@ msgid "Current changes"
msgstr "現在の変更"
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:158
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:747
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:733
msgctxt "@option:discardOrKeep"
msgid "Always ask me this"
msgstr "毎回確認する"
@@ -3802,12 +3873,12 @@ msgctxt "@action:button"
msgid "Keep changes"
msgstr "変更を維持"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:64
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:59
msgctxt "@text:window"
msgid "We have found one or more project file(s) within the files you have selected. You can open only one project file at a time. We suggest to only import models from those files. Would you like to proceed?"
msgstr "選択したファイルの中に複数のプロジェクトが存在します。1ファイルのみ一度に開けます。ファイルからモデルを先に取り込むことをお勧めします。続けますか?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:99
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:94
msgctxt "@action:button"
msgid "Import all as models"
msgstr "すべてをモデルとして取り入れる"
@@ -3962,7 +4033,7 @@ msgctxt "@label"
msgid "Material"
msgstr "フィラメント"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/CustomConfiguration.qml:394
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/CustomConfiguration.qml:407
msgctxt "@label"
msgid "Use glue for better adhesion with this material combination."
msgstr "この材料の組み合わせの接着に接着材を使用する。"
@@ -3986,17 +4057,17 @@ msgctxt "@label"
msgid "Number of Copies"
msgstr "コピーの数"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:33
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:41
msgctxt "@title:menu menubar:file"
msgid "&Save Project..."
msgstr "プロジェクトを保存... (&S)"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:54
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:74
msgctxt "@title:menu menubar:file"
msgid "&Export..."
msgstr "エクスポート... (&E)"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:65
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:85
msgctxt "@action:inmenu menubar:file"
msgid "Export Selection..."
msgstr "選択エクスポート..."
@@ -4016,6 +4087,11 @@ msgctxt "@label:category menu label"
msgid "Generic"
msgstr "汎用"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/OpenFilesMenu.qml:15
+msgctxt "@title:menu menubar:file"
+msgid "Open File(s)..."
+msgstr "ファイルを開く..."
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/PrinterMenu.qml:25
msgctxt "@label:category menu label"
msgid "Network enabled printers"
@@ -4031,6 +4107,11 @@ msgctxt "@title:menu menubar:file"
msgid "Open &Recent"
msgstr "最近開いたファイルを開く"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SaveProjectMenu.qml:15
+msgctxt "@title:menu menubar:file"
+msgid "Save Project..."
+msgstr "プロジェクトを保存..."
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingsMenu.qml:15
msgctxt "@title:menu menubar:settings"
msgid "&Printer"
@@ -4056,17 +4137,17 @@ msgctxt "@action:inmenu"
msgid "Disable Extruder"
msgstr "エクストルーダーを無効にする"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:13
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:16
msgctxt "@action:inmenu"
msgid "Visible Settings"
msgstr "ビジブル設定"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:42
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:45
msgctxt "@action:inmenu"
msgid "Collapse All Categories"
msgstr "すべてのカテゴリを折りたたむ"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:51
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:54
msgctxt "@action:inmenu"
msgid "Manage Setting Visibility..."
msgstr "視野のセッティングを管理する..."
@@ -4076,22 +4157,22 @@ msgctxt "@action:inmenu menubar:view"
msgid "&Camera position"
msgstr "カメラ位置 (&C)"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:44
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:45
msgctxt "@action:inmenu menubar:view"
msgid "Camera view"
msgstr "カメラビュー"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:47
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:48
msgctxt "@action:inmenu menubar:view"
msgid "Perspective"
msgstr "パースペクティブ表示"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:59
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:60
msgctxt "@action:inmenu menubar:view"
msgid "Orthographic"
msgstr "平行投影表示"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:80
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:81
msgctxt "@action:inmenu menubar:view"
msgid "&Build plate"
msgstr "ビルドプレート (&B)"
@@ -4136,12 +4217,12 @@ msgctxt "@label:MonitorStatus"
msgid "Please remove the print"
msgstr "造形物を取り出してください"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:325
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:326
msgctxt "@label"
msgid "Abort Print"
msgstr "プリント中止"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:337
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:338
msgctxt "@label"
msgid "Are you sure you want to abort the print?"
msgstr "本当にプリントを中止してもいいですか?"
@@ -4182,301 +4263,301 @@ msgctxt "@label"
msgid "Interface"
msgstr "インターフェイス"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:216
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:209
msgctxt "@label"
msgid "Currency:"
msgstr "通貨:"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:229
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:222
msgctxt "@label"
msgid "Theme:"
msgstr "テーマ:"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:285
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:267
msgctxt "@label"
msgid "You will need to restart the application for these changes to have effect."
msgstr "それらの変更を有効にするためにはアプリケーションを再起動しなけらばなりません。"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:302
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:284
msgctxt "@info:tooltip"
msgid "Slice automatically when changing settings."
msgstr "セッティングを変更すると自動にスライスします。"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:310
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:292
msgctxt "@option:check"
msgid "Slice automatically"
msgstr "自動的にスライスする"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:324
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:306
msgctxt "@label"
msgid "Viewport behavior"
msgstr "ビューポイント機能"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:332
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:314
msgctxt "@info:tooltip"
msgid "Highlight unsupported areas of the model in red. Without support these areas will not print properly."
msgstr "赤でサポートができないエリアをハイライトしてください。サポートがない場合、正確にプリントができない場合があります。"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:341
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:323
msgctxt "@option:check"
msgid "Display overhang"
msgstr "ディスプレイオーバーハング"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:351
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:333
msgctxt "@info:tooltip"
msgid "Highlight missing or extraneous surfaces of the model using warning signs. The toolpaths will often be missing parts of the intended geometry."
msgstr "モデルの欠けている部分または不要な表面部分を、警告マークを使用してハイライトします。ツールパスは意図したジオメトリの欠けている部分になることが多くあります。"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:360
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:342
msgctxt "@option:check"
msgid "Display model errors"
msgstr "モデルエラーを表示"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:368
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:350
msgctxt "@info:tooltip"
msgid "Moves the camera so the model is in the center of the view when a model is selected"
msgstr "モデルの選択時にモデルがカメラの中心に見えるようにカメラを移動する"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:373
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:355
msgctxt "@action:button"
msgid "Center camera when item is selected"
msgstr "アイテムを選択するとカメラが中心にきます"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:383
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:365
msgctxt "@info:tooltip"
msgid "Should the default zoom behavior of cura be inverted?"
msgstr "Curaのデフォルトのズーム機能は変更できるべきか?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:388
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:370
msgctxt "@action:button"
msgid "Invert the direction of camera zoom."
msgstr "カメラのズーム方向を反転する。"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:404
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:386
msgctxt "@info:tooltip"
msgid "Should zooming move in the direction of the mouse?"
msgstr "ズームはマウスの方向に動くべきか?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:404
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:386
msgctxt "@info:tooltip"
msgid "Zooming towards the mouse is not supported in the orthographic perspective."
msgstr "マウスに対するズームは、正射投影ではサポートされていません。"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:409
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:391
msgctxt "@action:button"
msgid "Zoom toward mouse direction"
msgstr "マウスの方向にズームする"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:435
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:417
msgctxt "@info:tooltip"
msgid "Should models on the platform be moved so that they no longer intersect?"
msgstr "交差を避けるためにプラットホーム上のモデルを移動するべきですか?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:440
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:422
msgctxt "@option:check"
msgid "Ensure models are kept apart"
msgstr "モデルの距離が離れているように確認する"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:449
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:431
msgctxt "@info:tooltip"
msgid "Should models on the platform be moved down to touch the build plate?"
msgstr "プラットホーム上のモデルはブルドプレートに触れるように下げるべきか?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:454
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:436
msgctxt "@option:check"
msgid "Automatically drop models to the build plate"
msgstr "自動的にモデルをビルドプレートに落とす"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:466
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:448
msgctxt "@info:tooltip"
msgid "Show caution message in g-code reader."
msgstr "G-codeリーダーに注意メッセージを表示します。"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:475
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:457
msgctxt "@option:check"
msgid "Caution message in g-code reader"
msgstr "G-codeリーダーに注意メッセージ"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:483
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:465
msgctxt "@info:tooltip"
msgid "Should layer be forced into compatibility mode?"
msgstr "レイヤーはコンパティビリティモードに強制されるべきか?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:488
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:470
msgctxt "@option:check"
msgid "Force layer view compatibility mode (restart required)"
msgstr "レイヤービューコンパティビリティモードを強制する。(再起動が必要)"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:498
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:480
msgctxt "@info:tooltip"
msgid "Should Cura open at the location it was closed?"
msgstr "Curaを終了した場所で開くようにしますか?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:503
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:485
msgctxt "@option:check"
msgid "Restore window position on start"
msgstr "開始時にウィンドウの位置を復元"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:513
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:495
msgctxt "@info:tooltip"
msgid "What type of camera rendering should be used?"
msgstr "どのような種類のカメラレンダリングを使用する必要がありますか?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:520
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:502
msgctxt "@window:text"
msgid "Camera rendering:"
msgstr "カメラレンダリング:"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:531
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:509
msgid "Perspective"
msgstr "パースペクティブ表示"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:532
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:510
msgid "Orthographic"
msgstr "平行投影表示"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:563
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:548
msgctxt "@label"
msgid "Opening and saving files"
msgstr "ファイルを開くまた保存"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:570
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:555
msgctxt "@info:tooltip"
msgid "Should opening files from the desktop or external applications open in the same instance of Cura?"
msgstr "デスクトップまたは外部アプリケーションから開いたファイルをCuraの同じインスタンスで開く必要がありますか?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:575
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:560
msgctxt "@option:check"
msgid "Use a single instance of Cura"
msgstr "Curaの単一インスタンスを使用"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:585
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:570
msgctxt "@info:tooltip"
msgid "Should models be scaled to the build volume if they are too large?"
msgstr "モデルがビルドボリュームに対して大きすぎる場合はスケールされるべきか?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:590
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:575
msgctxt "@option:check"
msgid "Scale large models"
msgstr "大きなモデルをスケールする"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:600
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:585
msgctxt "@info:tooltip"
msgid "An model may appear extremely small if its unit is for example in meters rather than millimeters. Should these models be scaled up?"
msgstr "ユニット値がミリメートルではなくメートルの場合、モデルが極端に小さく現れる場合があります。モデルはスケールアップされるべきですか?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:605
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:590
msgctxt "@option:check"
msgid "Scale extremely small models"
msgstr "極端に小さなモデルをスケールアップする"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:615
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:600
msgctxt "@info:tooltip"
msgid "Should models be selected after they are loaded?"
msgstr "モデルはロード後に選択しますか?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:620
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:605
msgctxt "@option:check"
msgid "Select models when loaded"
msgstr "ロード後にモデルを選択"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:630
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:615
msgctxt "@info:tooltip"
msgid "Should a prefix based on the printer name be added to the print job name automatically?"
msgstr "プリンター名の敬称はプリントジョブの名前に自動的に加えられるべきか?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:635
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:620
msgctxt "@option:check"
msgid "Add machine prefix to job name"
msgstr "プリンターの敬称をジョブネームに加える"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:645
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:630
msgctxt "@info:tooltip"
msgid "Should a summary be shown when saving a project file?"
msgstr "プロジェクトファイルを保存時にサマリーを表示するべきか?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:649
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:634
msgctxt "@option:check"
msgid "Show summary dialog when saving project"
msgstr "プロジェクトを保存時にダイアログサマリーを表示する"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:659
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:644
msgctxt "@info:tooltip"
msgid "Default behavior when opening a project file"
msgstr "プロジェクトファイルを開く際のデフォルト機能"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:667
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:652
msgctxt "@window:text"
msgid "Default behavior when opening a project file: "
msgstr "プロジェクトファイル開く際のデフォルト機能: "
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:681
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:666
msgctxt "@option:openProject"
msgid "Always ask me this"
msgstr "毎回確認する"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:682
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:667
msgctxt "@option:openProject"
msgid "Always open as a project"
msgstr "常にプロジェクトとして開く"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:683
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:668
msgctxt "@option:openProject"
msgid "Always import models"
msgstr "常にモデルを取り込む"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:719
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:705
msgctxt "@info:tooltip"
msgid "When you have made changes to a profile and switched to a different one, a dialog will be shown asking whether you want to keep your modifications or not, or you can choose a default behaviour and never show that dialog again."
msgstr "プロファイル内を変更し異なるプロファイルにしました、どこの変更点を保持、破棄したいのダイアログが表示されます、また何度もダイアログが表示されないようにデフォルト機能を選ぶことができます。"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:728
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:714
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedQualityProfileSelector.qml:52
msgctxt "@label"
msgid "Profiles"
msgstr "プロファイル"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:733
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:719
msgctxt "@window:text"
msgid "Default behavior for changed setting values when switching to a different profile: "
msgstr "プロファイル交換時に設定値を変更するためのデフォルト処理: "
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:748
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:734
msgctxt "@option:discardOrKeep"
msgid "Always discard changed settings"
msgstr "常に変更した設定を廃棄する"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:749
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:735
msgctxt "@option:discardOrKeep"
msgid "Always transfer changed settings to new profile"
msgstr "常に変更した設定を新しいプロファイルに送信する"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:783
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:770
msgctxt "@label"
msgid "Privacy"
msgstr "プライバシー"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:790
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:777
msgctxt "@info:tooltip"
msgid "Should Cura check for updates when the program is started?"
msgstr "Curaのプログラム開始時にアップデートがあるかチェックしますか?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:795
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:782
msgctxt "@option:check"
msgid "Check for updates on start"
msgstr "スタート時にアップデートあるかどうかのチェック"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:805
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:792
msgctxt "@info:tooltip"
msgid "Should anonymous data about your print be sent to Ultimaker? Note, no models, IP addresses or other personally identifiable information is sent or stored."
msgstr "プリンターの不明なデータをUltimakerにおくりますか?メモ、モデル、IPアドレス、個人的な情報は送信されたり保存されたりはしません。"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:810
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:797
msgctxt "@option:check"
msgid "Send (anonymous) print information"
msgstr "(不特定な) プリントインフォメーションを送信"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:819
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:806
msgctxt "@action:button"
msgid "More information"
msgstr "詳細"
@@ -4516,55 +4597,65 @@ msgctxt "@action:button"
msgid "Export"
msgstr "書き出す"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:234
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:199
+msgctxt "@action:button Sending materials to printers"
+msgid "Sync with Printers"
+msgstr "プリンターと同期する"
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:248
msgctxt "@action:label"
msgid "Printer"
msgstr "プリンター"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:298
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:274
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:312
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:277
msgctxt "@title:window"
msgid "Confirm Remove"
msgstr "モデルを取り除きました"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:301
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:275
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:315
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:278
msgctxt "@label (%1 is object name)"
msgid "Are you sure you wish to remove %1? This cannot be undone!"
msgstr "%1を取り外しますか?この作業はやり直しが効きません!"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:315
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:323
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:329
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:337
msgctxt "@title:window"
msgid "Import Material"
msgstr "フィラメントを取り込む"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:324
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:338
msgctxt "@info:status Don't translate the XML tags or !"
msgid "Could not import material %1: %2"
msgstr "%1フィラメントを取り込むことができない: %2"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:328
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:342
msgctxt "@info:status Don't translate the XML tag !"
msgid "Successfully imported material %1"
msgstr "フィラメント%1の取り込みに成功しました"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:346
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:354
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:360
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:368
msgctxt "@title:window"
msgid "Export Material"
msgstr "フィラメントを書き出す"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:358
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:372
msgctxt "@info:status Don't translate the XML tags and !"
msgid "Failed to export material to %1: %2"
msgstr "フィラメントの書き出しに失敗しました %1: %2"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:364
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:378
msgctxt "@info:status Don't translate the XML tag !"
msgid "Successfully exported material to %1"
msgstr "フィラメントの%1への書き出しが完了ました"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:388
+msgctxt "@title:window"
+msgid "Export All Materials"
+msgstr "すべての材料を書き出す"
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:72
msgctxt "@title"
msgid "Information"
@@ -4676,53 +4767,53 @@ msgctxt "@info"
msgid "Please provide a name for this profile."
msgstr "このプロファイルの名前を指定してください。"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:260
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:263
msgctxt "@title:window"
msgid "Duplicate Profile"
msgstr "プロファイルを複製する"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:291
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:294
msgctxt "@title:window"
msgid "Rename Profile"
msgstr "プロファイル名を変える"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:304
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:307
msgctxt "@title:window"
msgid "Import Profile"
msgstr "プロファイルを取り込む"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:333
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:336
msgctxt "@title:window"
msgid "Export Profile"
msgstr "プロファイルを書き出す"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:396
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:399
msgctxt "@label %1 is printer name"
msgid "Printer: %1"
msgstr "プリンター:%1"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:554
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:557
msgctxt "@action:button"
msgid "Update profile with current settings/overrides"
msgstr "プロファイルを現在のセッティング"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:561
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:564
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Custom/QualitiesWithIntentMenu.qml:244
msgctxt "@action:button"
msgid "Discard current changes"
msgstr "今の変更を破棄する"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:580
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:583
msgctxt "@action:label"
msgid "This profile uses the defaults specified by the printer, so it has no settings/overrides in the list below."
msgstr "このプロファイルはプリンターによりデフォルトを使用、従いこのプロファイルはセッティング/書き換えが以下のリストにありません。"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:588
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:591
msgctxt "@action:label"
msgid "Your current settings match the selected profile."
msgstr "設定は選択したプロファイルにマッチしています。"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:606
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:609
msgctxt "@title:tab"
msgid "Global Settings"
msgstr "グローバル設定"
@@ -4752,12 +4843,12 @@ msgctxt "@title:column"
msgid "Unit"
msgstr "ユニット"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:14
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:16
msgctxt "@title:tab"
msgid "Setting Visibility"
msgstr "視野設定"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:46
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:48
msgctxt "@label:textbox"
msgid "Check all"
msgstr "全てを調べる"
@@ -5090,27 +5181,27 @@ msgctxt "@label:textbox"
msgid "Search settings"
msgstr "検索設定"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:456
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:468
msgctxt "@action:menu"
msgid "Copy value to all extruders"
msgstr "すべてのエクストルーダーの値をコピーする"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:465
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:477
msgctxt "@action:menu"
msgid "Copy all changed values to all extruders"
msgstr "すべてのエクストルーダーに対して変更された値をコピーする"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:502
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:514
msgctxt "@action:menu"
msgid "Hide this setting"
msgstr "この設定を非表示にする"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:515
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:527
msgctxt "@action:menu"
msgid "Don't show this setting"
msgstr "この設定を表示しない"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:519
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:531
msgctxt "@action:menu"
msgid "Keep this setting visible"
msgstr "常に見えるように設定する"
@@ -5170,11 +5261,6 @@ msgctxt "@button"
msgid "Add printer manually"
msgstr "プリンタを手動で追加する"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddCloudPrintersView.qml:218
-msgctxt "@button"
-msgid "Finish"
-msgstr "終わる"
-
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddLocalPrinterScrollView.qml:230
msgctxt "@label"
msgid "Manufacturer"
@@ -5281,32 +5367,32 @@ msgctxt "@button"
msgid "Connect"
msgstr "接続"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:43
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/ChangelogContent.qml:24
msgctxt "@label"
-msgid "Ultimaker Account"
-msgstr "Ultimakerアカウント"
+msgid "Release Notes"
+msgstr "リリースノート"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:84
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:124
msgctxt "@text"
-msgid "Your key to connected 3D printing"
-msgstr "3Dプリンティング活用の鍵"
+msgid "Add material settings and plugins from the Marketplace"
+msgstr "マーケットプレイスから材料設定とプラグインを追加"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:101
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:154
msgctxt "@text"
-msgid "- Customize your experience with more print profiles and plugins"
-msgstr "- より多くの成果物プロファイルとプラグインを使用して作業をカスタマイズする"
+msgid "Backup and sync your material settings and plugins"
+msgstr "材料設定とプラグインのバックアップと同期"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:104
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:184
msgctxt "@text"
-msgid "- Stay flexible by syncing your setup and loading it anywhere"
-msgstr "- 設定を同期させ、どこにでも読み込めるようにすることで柔軟性を保つ"
+msgid "Share ideas and get help from 48,000+ users in the Ultimaker Community"
+msgstr "Ultimakerコミュニティで48,000人以上のユーザーとアイデアを共有してアドバイスをもらう"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:107
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:217
msgctxt "@text"
-msgid "- Increase efficiency with a remote workflow on Ultimaker printers"
-msgstr "- Ultimakerプリンターのリモートワークフローを活用して効率を高める"
+msgid "Create a free Ultimaker Account"
+msgstr "無料のUltimakerアカウントを作成"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:157
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:230
msgctxt "@button"
msgid "Skip"
msgstr "スキップ"
@@ -5366,29 +5452,32 @@ msgctxt "@button"
msgid "Decline and close"
msgstr "拒否して閉じる"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:29
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:56
msgctxt "@label"
msgid "Welcome to Ultimaker Cura"
msgstr "Ultimaker Cura にようこそ"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:47
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:68
msgctxt "@text"
-msgid ""
-"Please follow these steps to set up\n"
-"Ultimaker Cura. This will only take a few moments."
+msgid "Please follow these steps to set up Ultimaker Cura. This will only take a few moments."
msgstr ""
"以下の手順で\n"
"Ultimaker Cura を設定してください。数秒で完了します。"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:58
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:86
msgctxt "@button"
msgid "Get started"
msgstr "はじめに"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:24
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:28
msgctxt "@label"
-msgid "What's new in Ultimaker Cura"
-msgstr "Ultimaker Cura の新機能"
+msgid "What's New"
+msgstr "新情報"
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Widgets/ComboBox.qml:24
+msgctxt "@label"
+msgid "No items to select from"
+msgstr "選択するアイテムがありません"
#: ModelChecker/plugin.json
msgctxt "description"
@@ -5470,6 +5559,16 @@ msgctxt "name"
msgid "Cura Profile Writer"
msgstr "Curaプロファイルライター"
+#: DigitalLibrary/plugin.json
+msgctxt "description"
+msgid "Connects to the Digital Library, allowing Cura to open files from and save files to the Digital Library."
+msgstr "Digital Libraryに接続し、CuraでDigital Libraryからファイルを開いたりDigital Libraryにファイルを保存したりできるようにします。"
+
+#: DigitalLibrary/plugin.json
+msgctxt "name"
+msgid "Ultimaker Digital Library"
+msgstr "Ultimaker Digital Library"
+
#: FirmwareUpdateChecker/plugin.json
msgctxt "description"
msgid "Checks for firmware updates."
@@ -5940,6 +6039,26 @@ msgctxt "name"
msgid "Version Upgrade 4.7 to 4.8"
msgstr "バージョン4.7から4.8へのアップグレード"
+#: VersionUpgrade/VersionUpgrade48to49/plugin.json
+msgctxt "description"
+msgid "Upgrades configurations from Cura 4.8 to Cura 4.9."
+msgstr "Cura 4.8からCura 4.9に設定をアップグレードします。"
+
+#: VersionUpgrade/VersionUpgrade48to49/plugin.json
+msgctxt "name"
+msgid "Version Upgrade 4.8 to 4.9"
+msgstr "バージョン4.8から4.9へのアップグレード"
+
+#: VersionUpgrade/VersionUpgrade49to410/plugin.json
+msgctxt "description"
+msgid "Upgrades configurations from Cura 4.9 to Cura 4.10."
+msgstr "Cura 4.9からCura 4.10に設定をアップグレードします。"
+
+#: VersionUpgrade/VersionUpgrade49to410/plugin.json
+msgctxt "name"
+msgid "Version Upgrade 4.9 to 4.10"
+msgstr "バージョン4.9から4.10へのアップグレード"
+
#: X3DReader/plugin.json
msgctxt "description"
msgid "Provides support for reading X3D files."
@@ -5970,6 +6089,94 @@ msgctxt "name"
msgid "X-Ray View"
msgstr "透視ビュー"
+#~ msgctxt "@info:status"
+#~ msgid "Global stack is missing."
+#~ msgstr "グローバルスタックがありません。"
+
+#~ msgctxt "@info:status"
+#~ msgid "Your model is not manifold. The highlighted areas indicate either missing or extraneous surfaces."
+#~ msgstr "モデルはマニホールドではありません。ハイライトされたエリアは、欠けている表面または無関係な表面を示します。"
+
+#~ msgctxt "@info:title"
+#~ msgid "Model errors"
+#~ msgstr "モデルエラー"
+
+#~ msgctxt "@label:listbox"
+#~ msgid "Layer thickness"
+#~ msgstr "レイヤーの厚さ"
+
+#~ msgctxt "@label"
+#~ msgid "Your key to connected 3D printing"
+#~ msgstr "3Dプリンティング活用の鍵"
+
+#~ msgctxt "@text"
+#~ msgid ""
+#~ "- Customize your experience with more print profiles and plugins\n"
+#~ "- Stay flexible by syncing your setup and loading it anywhere\n"
+#~ "- Increase efficiency with a remote workflow on Ultimaker printers"
+#~ msgstr ""
+#~ "- より多くのプリントプロファイルとプラグインを使用して作業をカスタマイズする\n"
+#~ "- 設定を同期させ、どこにでも読み込めるようにすることで柔軟性を保つ\n"
+#~ "- Ultimakerプリンターのリモートワークフローを活用して効率を高める"
+
+#~ msgctxt "@button"
+#~ msgid "Create account"
+#~ msgstr "アカウントを作成する"
+
+# can’t enter japanese text
+#~ msgctxt "@action:inmenu menubar:edit"
+#~ msgid "Delete Selected Model"
+#~ msgid_plural "Delete Selected Models"
+#~ msgstr[0] "&選択したモデルを削除"
+
+# can’t enter japanese text
+#~ msgctxt "@action:inmenu menubar:edit"
+#~ msgid "Center Selected Model"
+#~ msgid_plural "Center Selected Models"
+#~ msgstr[0] "選択したモデルを中央に移動"
+
+# can’t edit japanese text
+#~ msgctxt "@action:inmenu menubar:edit"
+#~ msgid "Multiply Selected Model"
+#~ msgid_plural "Multiply Selected Models"
+#~ msgstr[0] "選択した複数のモデル"
+
+#~ msgctxt "@button"
+#~ msgid "Finish"
+#~ msgstr "終わる"
+
+#~ msgctxt "@label"
+#~ msgid "Ultimaker Account"
+#~ msgstr "Ultimakerアカウント"
+
+#~ msgctxt "@text"
+#~ msgid "Your key to connected 3D printing"
+#~ msgstr "3Dプリンティング活用の鍵"
+
+#~ msgctxt "@text"
+#~ msgid "- Customize your experience with more print profiles and plugins"
+#~ msgstr "- より多くの成果物プロファイルとプラグインを使用して作業をカスタマイズする"
+
+#~ msgctxt "@text"
+#~ msgid "- Stay flexible by syncing your setup and loading it anywhere"
+#~ msgstr "- 設定を同期させ、どこにでも読み込めるようにすることで柔軟性を保つ"
+
+#~ msgctxt "@text"
+#~ msgid "- Increase efficiency with a remote workflow on Ultimaker printers"
+#~ msgstr "- Ultimakerプリンターのリモートワークフローを活用して効率を高める"
+
+#~ msgctxt "@text"
+#~ msgid ""
+#~ "Please follow these steps to set up\n"
+#~ "Ultimaker Cura. This will only take a few moments."
+#~ msgstr ""
+#~ "以下の手順で\n"
+#~ "Ultimaker Cura を設定してください。数秒で完了します。"
+
+#~ msgctxt "@label"
+#~ msgid "What's new in Ultimaker Cura"
+#~ msgstr "Ultimaker Cura の新機能"
+
#~ msgctxt "@label ({} is object name)"
#~ msgid "Are you sure you wish to remove {}? This cannot be undone!"
#~ msgstr "{}を取り除いてもよろしいですか?この操作は元に戻せません。"
diff --git a/resources/i18n/ja_JP/fdmextruder.def.json.po b/resources/i18n/ja_JP/fdmextruder.def.json.po
index 43e72922b6..dc0d42f7d6 100644
--- a/resources/i18n/ja_JP/fdmextruder.def.json.po
+++ b/resources/i18n/ja_JP/fdmextruder.def.json.po
@@ -1,20 +1,20 @@
# Cura
-# Copyright (C) 2020 Ultimaker B.V.
+# Copyright (C) 2021 Ultimaker B.V.
# This file is distributed under the same license as the Cura package.
#
msgid ""
msgstr ""
-"Project-Id-Version: Cura 4.8\n"
+"Project-Id-Version: Cura 4.10\n"
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
-"POT-Creation-Date: 2020-10-19 13:15+0000\n"
-"PO-Revision-Date: 2019-03-13 14:00+0200\n"
+"POT-Creation-Date: 2021-06-10 17:35+0000\n"
+"PO-Revision-Date: 2021-04-16 14:59+0200\n"
"Last-Translator: Bothof \n"
"Language-Team: Japanese\n"
"Language: ja_JP\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: Poedit 2.0.6\n"
+"X-Generator: Poedit 2.4.1\n"
#: fdmextruder.def.json
msgctxt "machine_settings label"
diff --git a/resources/i18n/ja_JP/fdmprinter.def.json.po b/resources/i18n/ja_JP/fdmprinter.def.json.po
index e3f350e8ae..d5cc2fdc2f 100644
--- a/resources/i18n/ja_JP/fdmprinter.def.json.po
+++ b/resources/i18n/ja_JP/fdmprinter.def.json.po
@@ -1,13 +1,13 @@
# Cura
-# Copyright (C) 2020 Ultimaker B.V.
+# Copyright (C) 2021 Ultimaker B.V.
# This file is distributed under the same license as the Cura package.
#
msgid ""
msgstr ""
-"Project-Id-Version: Cura 4.8\n"
+"Project-Id-Version: Cura 4.10\n"
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
-"POT-Creation-Date: 2020-10-19 13:15+0000\n"
-"PO-Revision-Date: 2020-08-21 13:40+0200\n"
+"POT-Creation-Date: 2021-06-10 17:35+0000\n"
+"PO-Revision-Date: 2021-04-16 15:00+0200\n"
"Last-Translator: Lionbridge \n"
"Language-Team: Japanese , Japanese \n"
"Language: ja_JP\n"
@@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Poedit 2.2.1\n"
+"X-Generator: Poedit 2.4.1\n"
#: fdmprinter.def.json
msgctxt "machine_settings label"
@@ -447,6 +447,26 @@ msgctxt "machine_extruders_share_heater description"
msgid "Whether the extruders share a single heater rather than each extruder having its own heater."
msgstr "各エクストルーダーが独自のヒーターを持つのではなく、単一のヒーターを共有するかどうか。"
+#: fdmprinter.def.json
+msgctxt "machine_extruders_share_nozzle label"
+msgid "Extruders Share Nozzle"
+msgstr "エクストルーダーの共有ノズル"
+
+#: fdmprinter.def.json
+msgctxt "machine_extruders_share_nozzle description"
+msgid "Whether the extruders share a single nozzle rather than each extruder having its own nozzle. When set to true, it is expected that the printer-start gcode script properly sets up all extruders in an initial retraction state that is known and mutually compatible (either zero or one filament not retracted); in that case the initial retraction status is described, per extruder, by the 'machine_extruders_shared_nozzle_initial_retraction' parameter."
+msgstr "各エクストルーダーが独自のノズルを持つのではなく、単一のノズルを共有するかどうか。初期設定した場合、プリンター起動gcodeスクリプトにより、すべてのエクストルーダーが初期の引き戻し状態が互換性のあるように設定されます(引き戻されていない状態のフィラメントが0個または1個のいずれか)。この場合、初期引き戻しステータスは「machine_extruders_shared_nozzle_initial_retraction」パラメーターによってエクストルーダーごとに規定されます。"
+
+#: fdmprinter.def.json
+msgctxt "machine_extruders_shared_nozzle_initial_retraction label"
+msgid "Shared Nozzle Initial Retraction"
+msgstr "共有ノズルの初期引き戻し"
+
+#: fdmprinter.def.json
+msgctxt "machine_extruders_shared_nozzle_initial_retraction description"
+msgid "How much the filament of each extruder is assumed to have been retracted from the shared nozzle tip at the completion of the printer-start gcode script; the value should be equal to or greater than the length of the common part of the nozzle's ducts."
+msgstr "プリンタ起動gcodeスクリプト完了時に、各エクストルーダーのフィラメントが共有ノズルの先端部分から引き戻されていると想定される量。この値は、ノズルのダクトの共通部分の長さ以上にする必要があります。"
+
#: fdmprinter.def.json
msgctxt "machine_disallowed_areas label"
msgid "Disallowed Areas"
@@ -515,8 +535,8 @@ msgstr "エクストルーダーのオフセット"
#: fdmprinter.def.json
msgctxt "machine_use_extruder_offset_to_offset_coords description"
-msgid "Apply the extruder offset to the coordinate system."
-msgstr "エクストルーダーのオフセットを座標システムに適用します。"
+msgid "Apply the extruder offset to the coordinate system. Affects all extruders."
+msgstr "エクストルーダーのオフセットを座標システムに適用します。すべてのエクストルーダーが影響を受けます。"
#: fdmprinter.def.json
msgctxt "extruder_prime_pos_z label"
@@ -915,8 +935,8 @@ msgstr "最初のレイヤーに線幅の乗数です。この値を増やすと
#: fdmprinter.def.json
msgctxt "shell label"
-msgid "Shell"
-msgstr "外郭"
+msgid "Walls"
+msgstr "ウォール"
# msgstr "外郭"
#: fdmprinter.def.json
@@ -988,170 +1008,6 @@ msgctxt "wall_0_wipe_dist description"
msgid "Distance of a travel move inserted after the outer wall, to hide the Z seam better."
msgstr "外壁の後に挿入された移動の距離はZシームをよりよく隠します。"
-#: fdmprinter.def.json
-msgctxt "roofing_extruder_nr label"
-msgid "Top Surface Skin Extruder"
-msgstr "上部表面用エクストルーダー"
-
-# msgstr "上層表面スキンエクストルーダー"
-#: fdmprinter.def.json
-msgctxt "roofing_extruder_nr description"
-msgid "The extruder train used for printing the top most skin. This is used in multi-extrusion."
-msgstr "上部の表面印刷用のエクストルーダー。デュアルノズル印刷時に使用。"
-
-#: fdmprinter.def.json
-msgctxt "roofing_layer_count label"
-msgid "Top Surface Skin Layers"
-msgstr "上部表面レイヤー"
-
-# msgstr "上の表皮層"
-#: fdmprinter.def.json
-msgctxt "roofing_layer_count description"
-msgid "The number of top most skin layers. Usually only one top most layer is sufficient to generate higher quality top surfaces."
-msgstr "上部表面のレイヤー数。通常一層で綺麗に出来上がります。"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_extruder_nr label"
-msgid "Top/Bottom Extruder"
-msgstr "上部/底面エクストルーダー"
-
-# msgstr "トップ/ボトムエクストルーダー"
-#: fdmprinter.def.json
-msgctxt "top_bottom_extruder_nr description"
-msgid "The extruder train used for printing the top and bottom skin. This is used in multi-extrusion."
-msgstr "上部と下部の表面を印刷する時に使われるエクストルーダー。デュアルノズル印刷時に使用。"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_thickness label"
-msgid "Top/Bottom Thickness"
-msgstr "上部/底面の厚さ"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_thickness description"
-msgid "The thickness of the top/bottom layers in the print. This value divided by the layer height defines the number of top/bottom layers."
-msgstr "プリント時の最上面、最底面の厚み。これを積層ピッチで割った値で最上面、最低面のレイヤーの数を定義します。"
-
-#: fdmprinter.def.json
-msgctxt "top_thickness label"
-msgid "Top Thickness"
-msgstr "上部厚さ"
-
-#: fdmprinter.def.json
-msgctxt "top_thickness description"
-msgid "The thickness of the top layers in the print. This value divided by the layer height defines the number of top layers."
-msgstr "プリント時の最上面の厚み。これを積層ピッチで割った値で最上面のレイヤーの数を定義します。"
-
-#: fdmprinter.def.json
-msgctxt "top_layers label"
-msgid "Top Layers"
-msgstr "上部レイヤー"
-
-#: fdmprinter.def.json
-msgctxt "top_layers description"
-msgid "The number of top layers. When calculated by the top thickness, this value is rounded to a whole number."
-msgstr "最上面のレイヤー数。トップの厚さを計算する場合、この値は整数になります。"
-
-#: fdmprinter.def.json
-msgctxt "bottom_thickness label"
-msgid "Bottom Thickness"
-msgstr "底面厚さ"
-
-#: fdmprinter.def.json
-msgctxt "bottom_thickness description"
-msgid "The thickness of the bottom layers in the print. This value divided by the layer height defines the number of bottom layers."
-msgstr "プリント時の最底面の厚み。これを積層ピッチで割った値で最低面のレイヤーの数を定義します。"
-
-#: fdmprinter.def.json
-msgctxt "bottom_layers label"
-msgid "Bottom Layers"
-msgstr "底面レイヤー"
-
-#: fdmprinter.def.json
-msgctxt "bottom_layers description"
-msgid "The number of bottom layers. When calculated by the bottom thickness, this value is rounded to a whole number."
-msgstr "最底面のレイヤー数。下の厚さで計算すると、この値は整数に変換されます。"
-
-#: fdmprinter.def.json
-msgctxt "initial_bottom_layers label"
-msgid "Initial Bottom Layers"
-msgstr "初期底面レイヤー"
-
-#: fdmprinter.def.json
-msgctxt "initial_bottom_layers description"
-msgid "The number of initial bottom layers, from the build-plate upwards. When calculated by the bottom thickness, this value is rounded to a whole number."
-msgstr "ビルドプレートから上にある初期底面レイヤーの数。下の厚さで計算すると、この値は整数に変換されます。"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern label"
-msgid "Top/Bottom Pattern"
-msgstr "上層/底層パターン"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern description"
-msgid "The pattern of the top/bottom layers."
-msgstr "上層/底層のパターン。"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern option lines"
-msgid "Lines"
-msgstr "直線"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern option concentric"
-msgid "Concentric"
-msgstr "同心円"
-
-# msgstr "同心"
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern option zigzag"
-msgid "Zig Zag"
-msgstr "ジグザグ"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 label"
-msgid "Bottom Pattern Initial Layer"
-msgstr "底層初期レイヤー"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 description"
-msgid "The pattern on the bottom of the print on the first layer."
-msgstr "第1層のプリントの底部のパターン。"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 option lines"
-msgid "Lines"
-msgstr "直線"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 option concentric"
-msgid "Concentric"
-msgstr "同心円"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 option zigzag"
-msgid "Zig Zag"
-msgstr "ジグザグ"
-
-#: fdmprinter.def.json
-msgctxt "connect_skin_polygons label"
-msgid "Connect Top/Bottom Polygons"
-msgstr "上層/底層ポリゴンに接合"
-
-#: fdmprinter.def.json
-msgctxt "connect_skin_polygons description"
-msgid "Connect top/bottom skin paths where they run next to each other. For the concentric pattern enabling this setting greatly reduces the travel time, but because the connections can happen midway over infill this feature can reduce the top surface quality."
-msgstr "互いに次に実行する上層/底層スキンパスに接合します。同心円のパターンの場合、この設定を有効にすることにより、移動時間が短縮されますが、インフィルまでの途中で接合があるため、この機能で上層面の品質が損なわれることがあります。"
-
-#: fdmprinter.def.json
-msgctxt "skin_angles label"
-msgid "Top/Bottom Line Directions"
-msgstr "上層/底層ラインの向き"
-
-#: fdmprinter.def.json
-msgctxt "skin_angles description"
-msgid "A list of integer line directions to use when the top/bottom layers use the lines or zig zag pattern. Elements from the list are used sequentially as the layers progress and when the end of the list is reached, it starts at the beginning again. The list items are separated by commas and the whole list is contained in square brackets. Default is an empty list which means use the traditional default angles (45 and 135 degrees)."
-msgstr "上/下のレイヤーが線またはジグザグパターンを使う際の整数線の方向のリスト。リストの要素は、層が進行するにつれて順番に使用され、リストの終わりに達すると、最初から再び開始されます。リスト項目はコンマで区切られ、リスト全体は大括弧で囲まれています。デフォルトは、従来のデフォルト角度(45度と135度)を使用する空のリストです。"
-
#: fdmprinter.def.json
msgctxt "wall_0_inset label"
msgid "Outer Wall Inset"
@@ -1467,6 +1323,180 @@ msgctxt "z_seam_relative description"
msgid "When enabled, the z seam coordinates are relative to each part's centre. When disabled, the coordinates define an absolute position on the build plate."
msgstr "有効時は、Zシームは各パーツの真ん中に設定されます。無効時はプラットフォームのサイズによって設定されます。"
+#: fdmprinter.def.json
+msgctxt "top_bottom label"
+msgid "Top/Bottom"
+msgstr "トップ/ボトム"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom description"
+msgid "Top/Bottom"
+msgstr "トップ/ボトム"
+
+#: fdmprinter.def.json
+msgctxt "roofing_extruder_nr label"
+msgid "Top Surface Skin Extruder"
+msgstr "上部表面用エクストルーダー"
+
+# msgstr "上層表面スキンエクストルーダー"
+#: fdmprinter.def.json
+msgctxt "roofing_extruder_nr description"
+msgid "The extruder train used for printing the top most skin. This is used in multi-extrusion."
+msgstr "上部の表面印刷用のエクストルーダー。デュアルノズル印刷時に使用。"
+
+#: fdmprinter.def.json
+msgctxt "roofing_layer_count label"
+msgid "Top Surface Skin Layers"
+msgstr "上部表面レイヤー"
+
+# msgstr "上の表皮層"
+#: fdmprinter.def.json
+msgctxt "roofing_layer_count description"
+msgid "The number of top most skin layers. Usually only one top most layer is sufficient to generate higher quality top surfaces."
+msgstr "上部表面のレイヤー数。通常一層で綺麗に出来上がります。"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_extruder_nr label"
+msgid "Top/Bottom Extruder"
+msgstr "上部/底面エクストルーダー"
+
+# msgstr "トップ/ボトムエクストルーダー"
+#: fdmprinter.def.json
+msgctxt "top_bottom_extruder_nr description"
+msgid "The extruder train used for printing the top and bottom skin. This is used in multi-extrusion."
+msgstr "上部と下部の表面を印刷する時に使われるエクストルーダー。デュアルノズル印刷時に使用。"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_thickness label"
+msgid "Top/Bottom Thickness"
+msgstr "上部/底面の厚さ"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_thickness description"
+msgid "The thickness of the top/bottom layers in the print. This value divided by the layer height defines the number of top/bottom layers."
+msgstr "プリント時の最上面、最底面の厚み。これを積層ピッチで割った値で最上面、最低面のレイヤーの数を定義します。"
+
+#: fdmprinter.def.json
+msgctxt "top_thickness label"
+msgid "Top Thickness"
+msgstr "上部厚さ"
+
+#: fdmprinter.def.json
+msgctxt "top_thickness description"
+msgid "The thickness of the top layers in the print. This value divided by the layer height defines the number of top layers."
+msgstr "プリント時の最上面の厚み。これを積層ピッチで割った値で最上面のレイヤーの数を定義します。"
+
+#: fdmprinter.def.json
+msgctxt "top_layers label"
+msgid "Top Layers"
+msgstr "上部レイヤー"
+
+#: fdmprinter.def.json
+msgctxt "top_layers description"
+msgid "The number of top layers. When calculated by the top thickness, this value is rounded to a whole number."
+msgstr "最上面のレイヤー数。トップの厚さを計算する場合、この値は整数になります。"
+
+#: fdmprinter.def.json
+msgctxt "bottom_thickness label"
+msgid "Bottom Thickness"
+msgstr "底面厚さ"
+
+#: fdmprinter.def.json
+msgctxt "bottom_thickness description"
+msgid "The thickness of the bottom layers in the print. This value divided by the layer height defines the number of bottom layers."
+msgstr "プリント時の最底面の厚み。これを積層ピッチで割った値で最低面のレイヤーの数を定義します。"
+
+#: fdmprinter.def.json
+msgctxt "bottom_layers label"
+msgid "Bottom Layers"
+msgstr "底面レイヤー"
+
+#: fdmprinter.def.json
+msgctxt "bottom_layers description"
+msgid "The number of bottom layers. When calculated by the bottom thickness, this value is rounded to a whole number."
+msgstr "最底面のレイヤー数。下の厚さで計算すると、この値は整数に変換されます。"
+
+#: fdmprinter.def.json
+msgctxt "initial_bottom_layers label"
+msgid "Initial Bottom Layers"
+msgstr "初期底面レイヤー"
+
+#: fdmprinter.def.json
+msgctxt "initial_bottom_layers description"
+msgid "The number of initial bottom layers, from the build-plate upwards. When calculated by the bottom thickness, this value is rounded to a whole number."
+msgstr "ビルドプレートから上にある初期底面レイヤーの数。下の厚さで計算すると、この値は整数に変換されます。"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern label"
+msgid "Top/Bottom Pattern"
+msgstr "上層/底層パターン"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern description"
+msgid "The pattern of the top/bottom layers."
+msgstr "上層/底層のパターン。"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern option lines"
+msgid "Lines"
+msgstr "直線"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern option concentric"
+msgid "Concentric"
+msgstr "同心円"
+
+# msgstr "同心"
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern option zigzag"
+msgid "Zig Zag"
+msgstr "ジグザグ"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 label"
+msgid "Bottom Pattern Initial Layer"
+msgstr "底層初期レイヤー"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 description"
+msgid "The pattern on the bottom of the print on the first layer."
+msgstr "第1層のプリントの底部のパターン。"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 option lines"
+msgid "Lines"
+msgstr "直線"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 option concentric"
+msgid "Concentric"
+msgstr "同心円"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 option zigzag"
+msgid "Zig Zag"
+msgstr "ジグザグ"
+
+#: fdmprinter.def.json
+msgctxt "connect_skin_polygons label"
+msgid "Connect Top/Bottom Polygons"
+msgstr "上層/底層ポリゴンに接合"
+
+#: fdmprinter.def.json
+msgctxt "connect_skin_polygons description"
+msgid "Connect top/bottom skin paths where they run next to each other. For the concentric pattern enabling this setting greatly reduces the travel time, but because the connections can happen midway over infill this feature can reduce the top surface quality."
+msgstr "互いに次に実行する上層/底層スキンパスに接合します。同心円のパターンの場合、この設定を有効にすることにより、移動時間が短縮されますが、インフィルまでの途中で接合があるため、この機能で上層面の品質が損なわれることがあります。"
+
+#: fdmprinter.def.json
+msgctxt "skin_angles label"
+msgid "Top/Bottom Line Directions"
+msgstr "上層/底層ラインの向き"
+
+#: fdmprinter.def.json
+msgctxt "skin_angles description"
+msgid "A list of integer line directions to use when the top/bottom layers use the lines or zig zag pattern. Elements from the list are used sequentially as the layers progress and when the end of the list is reached, it starts at the beginning again. The list items are separated by commas and the whole list is contained in square brackets. Default is an empty list which means use the traditional default angles (45 and 135 degrees)."
+msgstr "上/下のレイヤーが線またはジグザグパターンを使う際の整数線の方向のリスト。リストの要素は、層が進行するにつれて順番に使用され、リストの終わりに達すると、最初から再び開始されます。リスト項目はコンマで区切られ、リスト全体は大括弧で囲まれています。デフォルトは、従来のデフォルト角度(45度と135度)を使用する空のリストです。"
+
#: fdmprinter.def.json
msgctxt "skin_no_small_gaps_heuristic label"
msgid "No Skin in Z Gaps"
@@ -1618,6 +1648,91 @@ msgctxt "skin_overlap_mm description"
msgid "Adjust the amount of overlap between the walls and (the endpoints of) the skin-centerlines. A slight overlap allows the walls to connect firmly to the skin. Note that, given an equal skin and wall line-width, any value over half the width of the wall may already cause any skin to go past the wall, because at that point the position of the nozzle of the skin-extruder may already reach past the middle of the wall."
msgstr "壁とスキンの中央ライン(のエンドポイント)が交差する量を調整します。わずかな交差によって、壁がスキンにしっかりつながります。スキンと壁のライン幅が同じで、壁の幅が半分以上の値になると、スキンが壁を通過している可能性があります。これは、その時点で、スキン押出機のノズルの位置が、すでに壁の真ん中を過ぎている可能性があるためです。"
+#: fdmprinter.def.json
+msgctxt "skin_preshrink label"
+msgid "Skin Removal Width"
+msgstr "表面除去幅"
+
+# msgstr "スキン除去幅"
+#: fdmprinter.def.json
+msgctxt "skin_preshrink description"
+msgid "The largest width of skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top/bottom skin at slanted surfaces in the model."
+msgstr "取り除くスキンエリアの最大幅。この値より小さいすべてのスキンエリアは消えます。これは、モデルの傾斜表面の上部/下部スキンに費やした時間のや材料の量を制限することができます。"
+
+#: fdmprinter.def.json
+msgctxt "top_skin_preshrink label"
+msgid "Top Skin Removal Width"
+msgstr "上面除去幅"
+
+# msgstr "トップスキン除去幅"
+#: fdmprinter.def.json
+msgctxt "top_skin_preshrink description"
+msgid "The largest width of top skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top skin at slanted surfaces in the model."
+msgstr "取り除くスキンエリアの最大幅。この値より小さいすべてのスキンエリアは消えます。これは、モデルの傾斜表面の上部/下部スキンに費やした時間のや材料の量を制限することができます。"
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_preshrink label"
+msgid "Bottom Skin Removal Width"
+msgstr "底面除去幅"
+
+# msgstr "ボトムのスキン除去幅"
+#: fdmprinter.def.json
+msgctxt "bottom_skin_preshrink description"
+msgid "The largest width of bottom skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing bottom skin at slanted surfaces in the model."
+msgstr "取り除くスキンエリアの最大幅。この値より小さいすべてのスキンエリアは消えます。これは、モデルの傾斜表面の上部/下部スキンに費やした時間のや材料の量を制限することができます。"
+
+#: fdmprinter.def.json
+msgctxt "expand_skins_expand_distance label"
+msgid "Skin Expand Distance"
+msgstr "表面展開距離"
+
+#: fdmprinter.def.json
+msgctxt "expand_skins_expand_distance description"
+msgid "The distance the skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on neighboring layers adhere better to the skin. Lower values save amount of material used."
+msgstr "スキンがインフィルまで到達する距離です。高い数値の場合、スキンはインフィルのパターンに隣接しやすく、近接する壁のレイヤーもスキンに密着しやすくなります。低値の場合、材料の使用量を節約します。"
+
+#: fdmprinter.def.json
+msgctxt "top_skin_expand_distance label"
+msgid "Top Skin Expand Distance"
+msgstr "上面展開距離"
+
+# msgstr "トップのスキンの展開距離"
+#: fdmprinter.def.json
+msgctxt "top_skin_expand_distance description"
+msgid "The distance the top skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on the layer above adhere better to the skin. Lower values save amount of material used."
+msgstr "スキンがインフィルまで到達する距離です。高い数値の場合、スキンはインフィルのパターンに隣接しやすく、近接する壁のレイヤーもスキンに密着しやすくなります。低値の場合、材料の使用量を節約します。"
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_expand_distance label"
+msgid "Bottom Skin Expand Distance"
+msgstr "底面展開距離"
+
+# msgstr "ボトムのスキンの展開距離"
+#: fdmprinter.def.json
+msgctxt "bottom_skin_expand_distance description"
+msgid "The distance the bottom skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the skin adhere better to the walls on the layer below. Lower values save amount of material used."
+msgstr "スキンがインフィルまで到達する距離です。高い数値の場合、スキンはインフィルのパターンに隣接しやすく、近接する壁のレイヤーもスキンに密着しやすくなります。低値の場合、材料の使用量を節約します。"
+
+#: fdmprinter.def.json
+msgctxt "max_skin_angle_for_expansion label"
+msgid "Maximum Skin Angle for Expansion"
+msgstr "表面展開最大角"
+
+#: fdmprinter.def.json
+msgctxt "max_skin_angle_for_expansion description"
+msgid "Top and/or bottom surfaces of your object with an angle larger than this setting, won't have their top/bottom skin expanded. This avoids expanding the narrow skin areas that are created when the model surface has a near vertical slope. An angle of 0° is horizontal and will cause no skin to be expanded, while an angle of 90° is vertical and will cause all skin to be expanded."
+msgstr "この設定より大きい角を持つオブジェクトの上部または底部の表面は、その表面のスキンを拡大しません。これにより、モデルの表面に垂直に近い斜面がある場合に作成される狭いスキン領域の拡大を回避します。0°の角度は水平方向で、スキンは拡大しません。90°の角度は垂直方向で、すべてのスキンが拡大します。"
+
+#: fdmprinter.def.json
+msgctxt "min_skin_width_for_expansion label"
+msgid "Minimum Skin Width for Expansion"
+msgstr "表面展開最小角"
+
+#: fdmprinter.def.json
+msgctxt "min_skin_width_for_expansion description"
+msgid "Skin areas narrower than this are not expanded. This avoids expanding the narrow skin areas that are created when the model surface has a slope close to the vertical."
+msgstr "これより狭いスキン領域は展開されません。モデル表面に、垂直に近い斜面がある場合に作成される狭いスキン領域の拡大を回避するためです。"
+
#: fdmprinter.def.json
msgctxt "infill label"
msgid "Infill"
@@ -1938,91 +2053,6 @@ msgctxt "infill_support_angle description"
msgid "The minimum angle of internal overhangs for which infill is added. At a value of 0° objects are totally filled with infill, 90° will not provide any infill."
msgstr "インフィルが追加される内部オーバーハングの最小角度。0° のとき、対象物は完全にインフィルが充填され、90° ではインフィルが提供されません。"
-#: fdmprinter.def.json
-msgctxt "skin_preshrink label"
-msgid "Skin Removal Width"
-msgstr "表面除去幅"
-
-# msgstr "スキン除去幅"
-#: fdmprinter.def.json
-msgctxt "skin_preshrink description"
-msgid "The largest width of skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top/bottom skin at slanted surfaces in the model."
-msgstr "取り除くスキンエリアの最大幅。この値より小さいすべてのスキンエリアは消えます。これは、モデルの傾斜表面の上部/下部スキンに費やした時間のや材料の量を制限することができます。"
-
-#: fdmprinter.def.json
-msgctxt "top_skin_preshrink label"
-msgid "Top Skin Removal Width"
-msgstr "上面除去幅"
-
-# msgstr "トップスキン除去幅"
-#: fdmprinter.def.json
-msgctxt "top_skin_preshrink description"
-msgid "The largest width of top skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top skin at slanted surfaces in the model."
-msgstr "取り除くスキンエリアの最大幅。この値より小さいすべてのスキンエリアは消えます。これは、モデルの傾斜表面の上部/下部スキンに費やした時間のや材料の量を制限することができます。"
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_preshrink label"
-msgid "Bottom Skin Removal Width"
-msgstr "底面除去幅"
-
-# msgstr "ボトムのスキン除去幅"
-#: fdmprinter.def.json
-msgctxt "bottom_skin_preshrink description"
-msgid "The largest width of bottom skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing bottom skin at slanted surfaces in the model."
-msgstr "取り除くスキンエリアの最大幅。この値より小さいすべてのスキンエリアは消えます。これは、モデルの傾斜表面の上部/下部スキンに費やした時間のや材料の量を制限することができます。"
-
-#: fdmprinter.def.json
-msgctxt "expand_skins_expand_distance label"
-msgid "Skin Expand Distance"
-msgstr "表面展開距離"
-
-#: fdmprinter.def.json
-msgctxt "expand_skins_expand_distance description"
-msgid "The distance the skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on neighboring layers adhere better to the skin. Lower values save amount of material used."
-msgstr "スキンがインフィルまで到達する距離です。高い数値の場合、スキンはインフィルのパターンに隣接しやすく、近接する壁のレイヤーもスキンに密着しやすくなります。低値の場合、材料の使用量を節約します。"
-
-#: fdmprinter.def.json
-msgctxt "top_skin_expand_distance label"
-msgid "Top Skin Expand Distance"
-msgstr "上面展開距離"
-
-# msgstr "トップのスキンの展開距離"
-#: fdmprinter.def.json
-msgctxt "top_skin_expand_distance description"
-msgid "The distance the top skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on the layer above adhere better to the skin. Lower values save amount of material used."
-msgstr "スキンがインフィルまで到達する距離です。高い数値の場合、スキンはインフィルのパターンに隣接しやすく、近接する壁のレイヤーもスキンに密着しやすくなります。低値の場合、材料の使用量を節約します。"
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_expand_distance label"
-msgid "Bottom Skin Expand Distance"
-msgstr "底面展開距離"
-
-# msgstr "ボトムのスキンの展開距離"
-#: fdmprinter.def.json
-msgctxt "bottom_skin_expand_distance description"
-msgid "The distance the bottom skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the skin adhere better to the walls on the layer below. Lower values save amount of material used."
-msgstr "スキンがインフィルまで到達する距離です。高い数値の場合、スキンはインフィルのパターンに隣接しやすく、近接する壁のレイヤーもスキンに密着しやすくなります。低値の場合、材料の使用量を節約します。"
-
-#: fdmprinter.def.json
-msgctxt "max_skin_angle_for_expansion label"
-msgid "Maximum Skin Angle for Expansion"
-msgstr "表面展開最大角"
-
-#: fdmprinter.def.json
-msgctxt "max_skin_angle_for_expansion description"
-msgid "Top and/or bottom surfaces of your object with an angle larger than this setting, won't have their top/bottom skin expanded. This avoids expanding the narrow skin areas that are created when the model surface has a near vertical slope. An angle of 0° is horizontal, while an angle of 90° is vertical."
-msgstr "この設定より大きい角を持つオブジェクトの上部または底部の表面、その表面のスキンはを拡大しません。これは、モデルのサーフェスに近い垂直斜面がある場合に作成される狭いスキン領域の拡大を回避します。0 ° の角度は水平方向、90 ° の角度が垂直方向です。"
-
-#: fdmprinter.def.json
-msgctxt "min_skin_width_for_expansion label"
-msgid "Minimum Skin Width for Expansion"
-msgstr "表面展開最小角"
-
-#: fdmprinter.def.json
-msgctxt "min_skin_width_for_expansion description"
-msgid "Skin areas narrower than this are not expanded. This avoids expanding the narrow skin areas that are created when the model surface has a slope close to the vertical."
-msgstr "これより狭いスキン領域は展開されません。モデル表面に、垂直に近い斜面がある場合に作成される狭いスキン領域の拡大を回避するためです。"
-
#: fdmprinter.def.json
msgctxt "skin_edge_support_thickness label"
msgid "Skin Edge Support Thickness"
@@ -2643,8 +2673,8 @@ msgstr "初期レイヤー速度"
#: fdmprinter.def.json
msgctxt "speed_layer_0 description"
-msgid "The speed for the initial layer. A lower value is advised to improve adhesion to the build plate."
-msgstr "一層目での速度。ビルトプレートへの接着を向上するため低速を推奨します。"
+msgid "The speed for the initial layer. A lower value is advised to improve adhesion to the build plate. Does not affect the build plate adhesion structures themselves, like brim and raft."
+msgstr "初期レイヤーでの速度。ビルドプレートへの接着を改善するため低速を推奨します。ブリムやラフトなどのビルドプレート接着構造自体には影響しません。"
#: fdmprinter.def.json
msgctxt "speed_print_layer_0 label"
@@ -3259,8 +3289,8 @@ msgstr "引き戻しのない最大コム距離"
#: fdmprinter.def.json
msgctxt "retraction_combing_max_distance description"
-msgid "When non-zero, combing travel moves that are longer than this distance will use retraction."
-msgstr "ゼロ以外の場合、この距離より移動量が多い場合は、引き戻しを使用します。"
+msgid "When greater than zero, combing travel moves that are longer than this distance will use retraction. If set to zero, there is no maximum and combing moves will not use retraction."
+msgstr "ゼロを超える場合、この距離より長い移動量をコーミングすると、引き戻しが使用されます。ゼロに設定した場合、最大値はなく、コーミング移動では引き戻しを使用しません。"
#: fdmprinter.def.json
msgctxt "travel_retract_before_outer_wall label"
@@ -5195,8 +5225,8 @@ msgstr "メッシュ処理ランク"
#: fdmprinter.def.json
msgctxt "infill_mesh_order description"
-msgid "Determines the priority of this mesh when considering multiple overlapping infill meshes. Areas where multiple infill meshes overlap will take on the settings of the mesh with the lowest rank. An infill mesh with a higher order will modify the infill of infill meshes with lower order and normal meshes."
-msgstr "インフィルメッシュの重なりが複数生じた場合のこのメッシュの優先度を決定します。複数のインフィルメッシュの重なりがあるエリアでは、最もランクが低いメッシュの設定になります。順序が高いインフィルメッシュは、順序が低いインフィルメッシュのインフィルと通常のメッシュを変更します。"
+msgid "Determines the priority of this mesh when considering multiple overlapping infill meshes. Areas where multiple infill meshes overlap will take on the settings of the mesh with the highest rank. An infill mesh with a higher rank will modify the infill of infill meshes with lower rank and normal meshes."
+msgstr "インフィルメッシュの重なりが複数生じた場合のこのメッシュの優先度を決定します。複数のインフィルメッシュの重なりがあるエリアでは、最もランクが高いメッシュの設定になります。ランクが高いインフィルメッシュは、ランクが低いインフィルメッシュのインフィルと通常のメッシュを変更します。"
#: fdmprinter.def.json
msgctxt "cutting_mesh label"
@@ -5557,6 +5587,16 @@ msgctxt "conical_overhang_angle description"
msgid "The maximum angle of overhangs after the they have been made printable. At a value of 0° all overhangs are replaced by a piece of model connected to the build plate, 90° will not change the model in any way."
msgstr "印刷可能になったオーバーハングの最大角度。 0°の値では、すべてのオーバーハングがビルドプレートに接続されたモデルの一部に置き換えられます。90°では、モデルは決して変更されません。"
+#: fdmprinter.def.json
+msgctxt "conical_overhang_hole_size label"
+msgid "Maximum Overhang Hole Area"
+msgstr "オーバーハングした穴の最大領域"
+
+#: fdmprinter.def.json
+msgctxt "conical_overhang_hole_size description"
+msgid "The maximum area of a hole in the base of the model before it's removed by Make Overhang Printable. Holes smaller than this will be retained. A value of 0 mm² will fill all holes in the models base."
+msgstr "モデル底部にある穴の最大領域(「オーバーハング印刷可能」で削除する前の値)。これより小さい穴は保持されます。値が0 mm²の場合、モデル底部にあるすべての穴は充填されます。"
+
#: fdmprinter.def.json
msgctxt "coasting_enable label"
msgid "Enable Coasting"
@@ -6495,6 +6535,30 @@ msgctxt "mesh_rotation_matrix description"
msgid "Transformation matrix to be applied to the model when loading it from file."
msgstr "ファイルから読み込むときに、モデルに適用するトランスフォーメーションマトリックス。"
+#~ msgctxt "retraction_combing_max_distance description"
+#~ msgid "When non-zero, combing travel moves that are longer than this distance will use retraction."
+#~ msgstr "ゼロ以外の場合、この距離より移動量が多い場合は、引き戻しを使用します。"
+
+#~ msgctxt "machine_use_extruder_offset_to_offset_coords description"
+#~ msgid "Apply the extruder offset to the coordinate system."
+#~ msgstr "エクストルーダーのオフセットを座標システムに適用します。"
+
+#~ msgctxt "shell label"
+#~ msgid "Shell"
+#~ msgstr "外郭"
+
+#~ msgctxt "max_skin_angle_for_expansion description"
+#~ msgid "Top and/or bottom surfaces of your object with an angle larger than this setting, won't have their top/bottom skin expanded. This avoids expanding the narrow skin areas that are created when the model surface has a near vertical slope. An angle of 0° is horizontal, while an angle of 90° is vertical."
+#~ msgstr "この設定より大きい角を持つオブジェクトの上部または底部の表面、その表面のスキンはを拡大しません。これは、モデルのサーフェスに近い垂直斜面がある場合に作成される狭いスキン領域の拡大を回避します。0 ° の角度は水平方向、90 ° の角度が垂直方向です。"
+
+#~ msgctxt "speed_layer_0 description"
+#~ msgid "The speed for the initial layer. A lower value is advised to improve adhesion to the build plate."
+#~ msgstr "一層目での速度。ビルトプレートへの接着を向上するため低速を推奨します。"
+
+#~ msgctxt "infill_mesh_order description"
+#~ msgid "Determines the priority of this mesh when considering multiple overlapping infill meshes. Areas where multiple infill meshes overlap will take on the settings of the mesh with the lowest rank. An infill mesh with a higher order will modify the infill of infill meshes with lower order and normal meshes."
+#~ msgstr "インフィルメッシュの重なりが複数生じた場合のこのメッシュの優先度を決定します。複数のインフィルメッシュの重なりがあるエリアでは、最もランクが低いメッシュの設定になります。順序が高いインフィルメッシュは、順序が低いインフィルメッシュのインフィルと通常のメッシュを変更します。"
+
#~ msgctxt "material_bed_temperature description"
#~ msgid "The temperature used for the heated build plate. If this is 0, the bed temperature will not be adjusted."
#~ msgstr "加熱式ビルドプレート温度。これが 0 の場合、ベッド温度は調整されません。"
diff --git a/resources/i18n/ko_KR/cura.po b/resources/i18n/ko_KR/cura.po
index 31c687c231..0ae53eb3d4 100644
--- a/resources/i18n/ko_KR/cura.po
+++ b/resources/i18n/ko_KR/cura.po
@@ -1,13 +1,13 @@
# Cura
-# Copyright (C) 2020 Ultimaker B.V.
+# Copyright (C) 2021 Ultimaker B.V.
# This file is distributed under the same license as the Cura package.
#
msgid ""
msgstr ""
-"Project-Id-Version: Cura 4.8\n"
+"Project-Id-Version: Cura 4.10\n"
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
-"POT-Creation-Date: 2020-10-19 13:15+0200\n"
-"PO-Revision-Date: 2020-11-09 14:08+0100\n"
+"POT-Creation-Date: 2021-06-10 17:35+0200\n"
+"PO-Revision-Date: 2021-04-16 15:01+0200\n"
"Last-Translator: Lionbridge \n"
"Language-Team: Korean , Jinbum Kim , Korean \n"
"Language: ko_KR\n"
@@ -17,8 +17,12 @@ msgstr ""
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Poedit 2.4.1\n"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/DiscoveredPrintersModel.py:83 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:110 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/QualityManagementModel.py:361
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1581 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:130 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:171
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/DiscoveredPrintersModel.py:83
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:110
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/QualityManagementModel.py:361
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1612
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:130
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:171
msgctxt "@label"
msgid "Unknown"
msgstr "알 수 없는"
@@ -44,47 +48,56 @@ msgctxt "@label {0} is the name of a printer that's about to be deleted."
msgid "Are you sure you wish to remove {0}? This cannot be undone!"
msgstr "정말로 {0}을(를) 제거하시겠습니까? 이 작업을 실행 취소할 수 없습니다."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:42 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:11 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/QualityManagementModel.py:338
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:42
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:11
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/QualityManagementModel.py:338
msgctxt "@label"
msgid "Default"
msgstr "Default"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:45 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:14
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:45
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:14
msgctxt "@label"
msgid "Visual"
msgstr "뛰어난 외관"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:46 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:15
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:46
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:15
msgctxt "@text"
msgid "The visual profile is designed to print visual prototypes and models with the intent of high visual and surface quality."
msgstr "시각적 프로파일은 높은 시각적 및 표면 품질의 의도를 지니고 시각적 프로토타입과 모델을 인쇄하기 위해 설계되었습니다."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:49 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:18
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:49
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:18
msgctxt "@label"
msgid "Engineering"
msgstr "Engineering"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:50 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:19
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:50
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:19
msgctxt "@text"
msgid "The engineering profile is designed to print functional prototypes and end-use parts with the intent of better accuracy and for closer tolerances."
msgstr "엔지니어링 프로파일은 정확도를 개선하고 허용 오차를 좁히려는 의도로 기능 프로토타입 및 최종 사용 부품을 인쇄하도록 설계되었습니다."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:53 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:22
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:53
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:22
msgctxt "@label"
msgid "Draft"
msgstr "초안"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:54 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:23
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:54
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:23
msgctxt "@text"
msgid "The draft profile is designed to print initial prototypes and concept validation with the intent of significant print time reduction."
msgstr "초안 프로파일은 인쇄 시간을 상당히 줄이려는 의도로 초기 프로토타입과 컨셉트 확인을 인쇄하도록 설계되었습니다."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:226
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:234
msgctxt "@label"
msgid "Custom Material"
msgstr "사용자 정의 소재"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:227 /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationMenu.qml:205
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:235
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationMenu.qml:205
msgctxt "@label"
msgid "Custom"
msgstr "사용자 정의"
@@ -105,51 +118,63 @@ msgctxt "@item:inlistbox"
msgid "All Files (*)"
msgstr "모든 파일 (*)"
-#: /home/trin/Gedeeld/Projects/Cura/cura/API/Account.py:178
+#: /home/trin/Gedeeld/Projects/Cura/cura/API/Account.py:181
msgctxt "@info:title"
msgid "Login failed"
msgstr "로그인 실패"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:67 /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:24
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:67
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:24
msgctxt "@info:status"
msgid "Finding new location for objects"
msgstr "객체의 새 위치 찾기"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:71 /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:28
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:71
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:28
msgctxt "@info:title"
msgid "Finding Location"
msgstr "위치 찾기"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:150 /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:41 /home/trin/Gedeeld/Projects/Cura/cura/MultiplyObjectsJob.py:76
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:150
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:41
+#: /home/trin/Gedeeld/Projects/Cura/cura/MultiplyObjectsJob.py:76
msgctxt "@info:status"
msgid "Unable to find a location within the build volume for all objects"
msgstr "모든 개체가 출력할 수 있는 최대 사이즈 내에 위치할 수 없습니다"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:151 /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:42
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:151
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:42
msgctxt "@info:title"
msgid "Can't Find Location"
msgstr "위치를 찾을 수 없음"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:104
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:116
msgctxt "@info:backup_failed"
msgid "Could not create archive from user data directory: {}"
msgstr "사용자 데이터 디렉터리에서 압축 파일을 만들 수 없습니다: {}"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:110 /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:107 /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:113
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:122
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:107
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:113
msgctxt "@info:title"
msgid "Backup"
msgstr "백업"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:123
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:135
msgctxt "@info:backup_failed"
msgid "Tried to restore a Cura backup without having proper data or meta data."
msgstr "적절한 데이터 또는 메타 데이터 없이 Cura 백업을 복원하려고 시도했습니다."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:134
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:146
msgctxt "@info:backup_failed"
msgid "Tried to restore a Cura backup that is higher than the current version."
msgstr "현재 버전보다 높은 Cura 백업을 복원하려고 시도했습니다."
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:157
+msgctxt "@info:backup_failed"
+msgid "The following error occurred while trying to restore a Cura backup:"
+msgstr "다음의 오류는 Cura 백업을 복원하려고 시도하는 동안 발생했습니다."
+
#: /home/trin/Gedeeld/Projects/Cura/cura/BuildVolume.py:98
msgctxt "@info:status"
msgid "The build volume height has been reduced due to the value of the \"Print Sequence\" setting to prevent the gantry from colliding with printed models."
@@ -299,71 +324,76 @@ msgctxt "@action:button"
msgid "Send report"
msgstr "보고서 전송"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:521
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:527
msgctxt "@info:progress"
msgid "Loading machines..."
msgstr "기기로드 중 ..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:528
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:534
msgctxt "@info:progress"
msgid "Setting up preferences..."
msgstr "환경 설정을 설정하는 중..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:657
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:672
msgctxt "@info:progress"
msgid "Initializing Active Machine..."
msgstr "활성 기기 초기화 중..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:788
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:803
msgctxt "@info:progress"
msgid "Initializing machine manager..."
msgstr "패키지 관리자 초기화 중..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:802
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:817
msgctxt "@info:progress"
msgid "Initializing build volume..."
msgstr "출력 사이즈 초기화 중..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:870
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:888
msgctxt "@info:progress"
msgid "Setting up scene..."
msgstr "장면 설정 중..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:906
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:924
msgctxt "@info:progress"
msgid "Loading interface..."
msgstr "인터페이스 로드 중 ..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:911
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:929
msgctxt "@info:progress"
msgid "Initializing engine..."
msgstr "엔진 초기화 중..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1221
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1246
#, python-format
msgctxt "@info 'width', 'depth' and 'height' are variable names that must NOT be translated; just translate the format of ##x##x## mm."
msgid "%(width).1f x %(depth).1f x %(height).1f mm"
msgstr "%(width).1f x %(depth).1f x %(height).1f mm"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1777
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1799
#, python-brace-format
msgctxt "@info:status"
msgid "Only one G-code file can be loaded at a time. Skipped importing {0}"
msgstr "한 번에 하나의 G-코드 파일만 로드 할 수 있습니다. {0} 가져 오기를 건너 뛰었습니다."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1778 /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:188 /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:242
-#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:153 /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:165
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1800
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:190
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:244
+#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:153
+#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:165
msgctxt "@info:title"
msgid "Warning"
msgstr "경고"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1787
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1809
#, python-brace-format
msgctxt "@info:status"
msgid "Can't open any other file if G-code is loading. Skipped importing {0}"
msgstr "G-코드가 로드되어 있으면 다른 파일을 열 수 없습니다. {0} 가져 오기를 건너 뛰었습니다."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1788 /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:146 /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:153
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1810
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:146
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:153
#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:139
msgctxt "@info:title"
msgid "Error"
@@ -384,7 +414,7 @@ msgctxt "@info:title"
msgid "Placing Object"
msgstr "개체 배치 중"
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationHelpers.py:90
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationHelpers.py:92
msgctxt "@message"
msgid "Could not read response."
msgstr "응답을 읽을 수 없습니다."
@@ -404,28 +434,31 @@ msgctxt "@message"
msgid "Something unexpected happened when trying to log in, please try again."
msgstr "로그인을 시도할 때 예기치 못한 문제가 발생했습니다. 다시 시도하십시오."
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:187
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:189
msgctxt "@info"
msgid "Unable to start a new sign in process. Check if another sign in attempt is still active."
msgstr "새 로그인 작업을 시작할 수 없습니다. 다른 로그인 작업이 진행 중인지 확인하십시오."
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:242
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:244
msgctxt "@info"
msgid "Unable to reach the Ultimaker account server."
msgstr "Ultimaker 계정 서버에 도달할 수 없음."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:205 /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:132
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:205
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:132
msgctxt "@title:window"
msgid "File Already Exists"
msgstr "파일이 이미 있습니다"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:206 /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:133
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:206
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:133
#, python-brace-format
msgctxt "@label Don't translate the XML tag !"
msgid "The file {0} already exists. Are you sure you want to overwrite it?"
msgstr "파일 {0}이 이미 있습니다. 덮어 쓰시겠습니까?"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:452 /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:455
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:457
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:460
msgctxt "@info:status"
msgid "Invalid file URL:"
msgstr "유효하지 않은 파일 URL:"
@@ -477,7 +510,8 @@ msgctxt "@info:status Don't translate the XML tags !"
msgid "Failed to import profile from {0}:"
msgstr "{0}에서 프로파일을 가져오지 못했습니다:"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:235 /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:245
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:235
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:245
#, python-brace-format
msgctxt "@info:status Don't translate the XML tags !"
msgid "This profile {0} contains incorrect data, could not import it."
@@ -507,33 +541,33 @@ msgctxt "@info:status"
msgid "Profile {0} has an unknown file type or is corrupted."
msgstr "프로파일 {0}에 알 수 없는 파일 유형이 있거나 손상되었습니다."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:423
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:426
msgctxt "@label"
msgid "Custom profile"
msgstr "사용자 정의 프로파일"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:439
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:442
msgctxt "@info:status"
msgid "Profile is missing a quality type."
msgstr "프로파일에 품질 타입이 누락되었습니다."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:443
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:446
msgctxt "@info:status"
-msgid "Global stack is missing."
-msgstr "전체 스택이 누락되었습니다."
+msgid "There is no active printer yet."
+msgstr "아직 활성화된 프린터가 없습니다."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:449
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:452
msgctxt "@info:status"
msgid "Unable to add the profile."
msgstr "프로파일을 추가할 수 없습니다."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:463
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:466
#, python-brace-format
msgctxt "@info:status"
msgid "Quality type '{0}' is not compatible with the current active machine definition '{1}'."
msgstr "'{0}' 품질 타입은 현재 활성 기기 정의 '{1}'와(과) 호환되지 않습니다."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:468
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:471
#, python-brace-format
msgctxt "@info:status"
msgid "Warning: The profile is not visible because its quality type '{0}' is not available for the current configuration. Switch to a material/nozzle combination that can use this quality type."
@@ -549,40 +583,51 @@ msgctxt "@info:No intent profile selected"
msgid "Default"
msgstr "Default"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:712 /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:216
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:713
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:216
msgctxt "@label"
msgid "Nozzle"
msgstr "노즐"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:860
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:856
msgctxt "@info:message Followed by a list of settings."
msgid "Settings have been changed to match the current availability of extruders:"
msgstr "익스트루더의 현재 가용성과 일치하도록 설정이 변경되었습니다:"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:862
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:858
msgctxt "@info:title"
msgid "Settings updated"
msgstr "설정이 업데이트되었습니다"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1447
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1478
msgctxt "@info:title"
msgid "Extruder(s) Disabled"
msgstr "익스트루더 비활성화됨"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:17 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:67 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:48
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:17
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:67
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:48
msgctxt "@action:button"
msgid "Add"
msgstr "추가"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:26 /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:263
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:26
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:272
msgctxt "@action:button"
msgid "Finish"
msgstr "종료"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:33 /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:441 /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:234 /home/trin/Gedeeld/Projects/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:150
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxProgressButton.qml:19 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/dialogs/ToolboxConfirmUninstallResetDialog.qml:81
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:352 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:58 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/PrintWindow.qml:42
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:87 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:292
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:33
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:445
+#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:234
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:150
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxProgressButton.qml:19
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/dialogs/ToolboxConfirmUninstallResetDialog.qml:81
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:352
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:58
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/PrintWindow.qml:42
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:82
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:292
msgctxt "@action:button"
msgid "Cancel"
msgstr "취소"
@@ -593,73 +638,84 @@ msgctxt "@label"
msgid "Group #{group_nr}"
msgstr "그룹 #{group_nr}"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:83
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:82
msgctxt "@tooltip"
msgid "Outer Wall"
msgstr "외벽"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:84
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:83
msgctxt "@tooltip"
msgid "Inner Walls"
msgstr "내벽"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:85
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:84
msgctxt "@tooltip"
msgid "Skin"
msgstr "스킨"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:86
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:85
msgctxt "@tooltip"
msgid "Infill"
msgstr "내부채움"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:87
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:86
msgctxt "@tooltip"
msgid "Support Infill"
msgstr "내부채움 서포트"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:88
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:87
msgctxt "@tooltip"
msgid "Support Interface"
msgstr "지원하는 인터페이스"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:89
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:88
msgctxt "@tooltip"
msgid "Support"
msgstr "서포트"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:90
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:89
msgctxt "@tooltip"
msgid "Skirt"
msgstr "스커트"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:91
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:90
msgctxt "@tooltip"
msgid "Prime Tower"
msgstr "프라임 타워"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:92
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:91
msgctxt "@tooltip"
msgid "Travel"
msgstr "움직임 경로"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:93
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:92
msgctxt "@tooltip"
msgid "Retractions"
msgstr "리트랙션"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:94
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:93
msgctxt "@tooltip"
msgid "Other"
msgstr "다른"
#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:56
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:259
msgctxt "@action:button"
msgid "Next"
msgstr "다음"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WhatsNewPagesModel.py:17 /home/trin/Gedeeld/Projects/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:185 /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:128
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:482 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:173 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:127
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:268
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WhatsNewPagesModel.py:55
+msgctxt "@action:button"
+msgid "Skip"
+msgstr "건너뛰기"
+
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WhatsNewPagesModel.py:60
+#: /home/trin/Gedeeld/Projects/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:185
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:128
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:485
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:174
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:127
msgctxt "@action:button"
msgid "Close"
msgstr "닫기"
@@ -683,29 +739,36 @@ msgstr ""
"
"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:535
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:540
#, python-brace-format
msgctxt "@info:status Don't translate the XML tags or !"
msgid "Project file {0} contains an unknown machine type {1}. Cannot import the machine. Models will be imported instead."
msgstr "프로젝트 파일 {0}에 알 수 없는 기기 유형 {1}이(가) 포함되어 있습니다. 기기를 가져올 수 없습니다. 대신 모델을 가져옵니다."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:538
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:543
msgctxt "@info:title"
msgid "Open Project File"
msgstr "프로젝트 파일 열기"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:634
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:639
#, python-brace-format
msgctxt "@info:error Don't translate the XML tags or !"
msgid "Project file {0} is suddenly inaccessible: {1}."
msgstr "프로젝트 파일 {0}에 갑자기 접근할 수 없습니다: {1}."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:635
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:640
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:647
msgctxt "@info:title"
msgid "Can't Open Project File"
msgstr "프로젝트 파일 열 수 없음"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:686
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:646
+#, python-brace-format
+msgctxt "@info:error Don't translate the XML tags or !"
+msgid "Project file {0} is corrupt: {1}."
+msgstr "프로젝트 파일 {0}이 손상됨: {1}."
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:698
#, python-brace-format
msgctxt "@info:error Don't translate the XML tag !"
msgid "Project file {0} is made using profiles that are unknown to this version of Ultimaker Cura."
@@ -721,7 +784,8 @@ msgctxt "@title:tab"
msgid "Custom"
msgstr "사용자 정의"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/__init__.py:27 /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/__init__.py:33
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/__init__.py:27
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/__init__.py:33
msgctxt "@item:inlistbox"
msgid "3MF File"
msgstr "3MF 파일"
@@ -731,7 +795,8 @@ msgctxt "@error:zip"
msgid "3MF Writer plug-in is corrupt."
msgstr "3MF 기록기 플러그인이 손상되었습니다."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:59 /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:92
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:59
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:92
msgctxt "@error:zip"
msgid "No permission to write the workspace here."
msgstr "여기서 작업 환경을 작성할 권한이 없습니다."
@@ -741,7 +806,7 @@ msgctxt "@error:zip"
msgid "The operating system does not allow saving a project file to this location or with this file name."
msgstr "운영 체제가 프로젝트 파일을 이 위치로 또는 이 파일명으로 저장하지 못합니다."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWriter.py:185
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWriter.py:206
msgctxt "@error:zip"
msgid "Error writing 3mf file."
msgstr "3MF 파일 작성 중 오류."
@@ -796,7 +861,8 @@ msgctxt "@error:file_size"
msgid "The backup exceeds the maximum file size."
msgstr "백업이 최대 파일 크기를 초과했습니다."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DriveApiService.py:82 /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/RestoreBackupJob.py:23
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DriveApiService.py:86
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/RestoreBackupJob.py:26
msgctxt "@info:backup_status"
msgid "There was an error trying to restore your backup."
msgstr "백업 복원 시도 중 오류가 있었습니다."
@@ -806,41 +872,45 @@ msgctxt "@item:inmenu"
msgid "Manage backups"
msgstr "백업 관리"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:356
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:382
msgctxt "@info:status"
msgid "Unable to slice with the current material as it is incompatible with the selected machine or configuration."
msgstr "선택한 소재 또는 구성과 호환되지 않기 때문에 현재 소재로 슬라이스 할 수 없습니다."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:356 /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:387 /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:411
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:420 /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:429 /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:441
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:382
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:413
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:437
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:446
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:455
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:467
msgctxt "@info:title"
msgid "Unable to slice"
msgstr "슬라이스 할 수 없습니다"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:386
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:412
#, python-brace-format
msgctxt "@info:status"
msgid "Unable to slice with the current settings. The following settings have errors: {0}"
msgstr "현재 설정으로 슬라이스 할 수 없습니다. 다음 설정에는 오류가 있습니다 : {0}"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:410
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:436
#, python-brace-format
msgctxt "@info:status"
msgid "Unable to slice due to some per-model settings. The following settings have errors on one or more models: {error_labels}"
msgstr "일부 모델별 설정으로 인해 슬라이스할 수 없습니다. 하나 이상의 모델에서 다음 설정에 오류가 있습니다. {error_labels}"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:419
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:445
msgctxt "@info:status"
msgid "Unable to slice because the prime tower or prime position(s) are invalid."
msgstr "프라임 타워 또는 위치가 유효하지 않아 슬라이스 할 수 없습니다."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:428
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:454
#, python-format
msgctxt "@info:status"
msgid "Unable to slice because there are objects associated with disabled Extruder %s."
msgstr "비활성화된 익스트루더 %s(와)과 연결된 개체가 있기 때문에 슬라이스할 수 없습니다."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:437
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:463
msgctxt "@info:status"
msgid ""
"Please review settings and check if your models:\n"
@@ -853,7 +923,8 @@ msgstr ""
"- 활성화된 익스트루더로 할당됨\n"
"- 수정자 메쉬로 전체 설정되지 않음"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/ProcessSlicedLayersJob.py:52 /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/ProcessSlicedLayersJob.py:260
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/ProcessSlicedLayersJob.py:52
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/ProcessSlicedLayersJob.py:260
msgctxt "@info:status"
msgid "Processing Layers"
msgstr "레이어 처리 중"
@@ -863,7 +934,8 @@ msgctxt "@info:title"
msgid "Information"
msgstr "정보"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraProfileReader/__init__.py:14 /home/trin/Gedeeld/Projects/Cura/plugins/CuraProfileWriter/__init__.py:14
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraProfileReader/__init__.py:14
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraProfileWriter/__init__.py:14
msgctxt "@item:inlistbox"
msgid "Cura Profile"
msgstr "Cura 프로파일"
@@ -895,7 +967,8 @@ msgctxt "@action"
msgid "Update Firmware"
msgstr "펌웨어 업데이트"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeGzReader/__init__.py:17 /home/trin/Gedeeld/Projects/Cura/plugins/GCodeGzWriter/__init__.py:17
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeGzReader/__init__.py:17
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeGzWriter/__init__.py:17
msgctxt "@item:inlistbox"
msgid "Compressed G-code File"
msgstr "압축된 G-code 파일"
@@ -905,7 +978,9 @@ msgctxt "@error:not supported"
msgid "GCodeGzWriter does not support text mode."
msgstr "GCodeGzWriter는 텍스트 모드는 지원하지 않습니다."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeProfileReader/__init__.py:14 /home/trin/Gedeeld/Projects/Cura/plugins/GCodeReader/__init__.py:14 /home/trin/Gedeeld/Projects/Cura/plugins/GCodeWriter/__init__.py:16
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeProfileReader/__init__.py:14
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeReader/__init__.py:14
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeWriter/__init__.py:16
msgctxt "@item:inlistbox"
msgid "G-code File"
msgstr "G-code 파일"
@@ -915,7 +990,8 @@ msgctxt "@info:status"
msgid "Parsing G-code"
msgstr "G 코드 파싱"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeReader/FlavorParser.py:349 /home/trin/Gedeeld/Projects/Cura/plugins/GCodeReader/FlavorParser.py:503
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeReader/FlavorParser.py:349
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeReader/FlavorParser.py:503
msgctxt "@info:title"
msgid "G-code Details"
msgstr "G-코드 세부 정보"
@@ -935,7 +1011,8 @@ msgctxt "@error:not supported"
msgid "GCodeWriter does not support non-text mode."
msgstr "GCodeWriter는 텍스트가 아닌 모드는 지원하지 않습니다."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeWriter/GCodeWriter.py:80 /home/trin/Gedeeld/Projects/Cura/plugins/GCodeWriter/GCodeWriter.py:96
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeWriter/GCodeWriter.py:80
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeWriter/GCodeWriter.py:96
msgctxt "@warning:status"
msgid "Please prepare G-code before exporting."
msgstr "내보내기 전에 G-code를 준비하십시오."
@@ -1021,7 +1098,8 @@ msgctxt "@item:inlistbox"
msgid "Save to Removable Drive {0}"
msgstr "이동식 드라이브 {0}에 저장"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:66 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/MeshFormatHandler.py:118
+#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:66
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/MeshFormatHandler.py:118
msgctxt "@info:status"
msgid "There are no file formats available to write with!"
msgstr "쓸 수있는 파일 형식이 없습니다!"
@@ -1037,7 +1115,8 @@ msgctxt "@info:title"
msgid "Saving"
msgstr "저장"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:106 /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:109
+#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:106
+#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:109
#, python-brace-format
msgctxt "@info:status Don't translate the XML tags or !"
msgid "Could not save to {0}: {1}"
@@ -1049,7 +1128,8 @@ msgctxt "@info:status Don't translate the tag {device}!"
msgid "Could not find a file name when trying to write to {device}."
msgstr "{device} 장치에 쓸 때 파일 이름을 찾을 수 없습니다."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:138 /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:153
+#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:138
+#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:153
#, python-brace-format
msgctxt "@info:status"
msgid "Could not save to removable drive {0}: {1}"
@@ -1099,27 +1179,28 @@ msgctxt "@item:intext"
msgid "Removable Drive"
msgstr "이동식 드라이브"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:121
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:128
msgctxt "@info:status"
msgid "Cura does not accurately display layers when Wire Printing is enabled."
msgstr "와이어 프린팅이 활성화되어 있을 때 Cura는 레이어를 정확하게 표시하지 않습니다."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:122
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:129
msgctxt "@info:title"
msgid "Simulation View"
msgstr "시뮬레이션 뷰"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:123
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:130
msgctxt "@info:status"
msgid "Nothing is shown because you need to slice first."
msgstr "먼저 슬라이스해야 하기 때문에 아무것도 표시되지 않습니다."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:123
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:130
msgctxt "@info:title"
msgid "No layers to show"
msgstr "표시할 레이어 없음"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:124 /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:73
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:131
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:74
msgctxt "@info:option_text"
msgid "Do not show this message again"
msgstr "다시 메시지 표시 안 함"
@@ -1129,15 +1210,20 @@ msgctxt "@item:inlistbox"
msgid "Layer view"
msgstr "레이어 뷰"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:70
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:71
msgctxt "@info:status"
-msgid "Your model is not manifold. The highlighted areas indicate either missing or extraneous surfaces."
-msgstr "매니폴드 모델이 아닙니다. 강조 표시된 영역은 누락되거나 관련 없는 표면을 표시합니다."
+msgid "The highlighted areas indicate either missing or extraneous surfaces. Fix your model and open it again into Cura."
+msgstr "강조 표시된 영역은 누락되거나 관련 없는 표면을 표시합니다. 모델을 수정하고 Cura에서 다시 엽니다."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:72
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:73
msgctxt "@info:title"
-msgid "Model errors"
-msgstr "모델 오류"
+msgid "Model Errors"
+msgstr "모델 에러"
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:79
+msgctxt "@action:button"
+msgid "Learn more"
+msgstr "자세히 알아보기"
#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/__init__.py:12
msgctxt "@item:inmenu"
@@ -1159,12 +1245,13 @@ msgctxt "@info:generic"
msgid "Do you want to sync material and software packages with your account?"
msgstr "귀하의 계정으로 재료와 소프트웨어 패키지를 동기화하시겠습니까?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py:143 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/DownloadPresenter.py:93
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py:143
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/DownloadPresenter.py:93
msgctxt "@info:title"
msgid "Changes detected from your Ultimaker account"
msgstr "Ultimaker 계정에서 변경 사항이 감지되었습니다"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py:146
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py:145
msgctxt "@action:button"
msgid "Sync"
msgstr "동기화"
@@ -1179,7 +1266,8 @@ msgctxt "@button"
msgid "Decline"
msgstr "거절"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/LicenseModel.py:10 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/UserAgreementContent.qml:56
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/LicenseModel.py:10
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/UserAgreementContent.qml:56
msgctxt "@button"
msgid "Agree"
msgstr "동의"
@@ -1199,7 +1287,7 @@ msgctxt "@info:generic"
msgid "You need to quit and restart {} before changes have effect."
msgstr "변경 사항이 적용되기 전에 {}을(를) 멈추고 다시 시작해야 합니다."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/SyncOrchestrator.py:76
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/SyncOrchestrator.py:79
msgctxt "@info:generic"
msgid "{} plugins failed to download"
msgstr "{}개의 플러그인을 다운로드하지 못했습니다"
@@ -1234,12 +1322,17 @@ msgctxt "@item:inlistbox"
msgid "Compressed COLLADA Digital Asset Exchange"
msgstr "Compressed COLLADA Digital Asset Exchange"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPReader/__init__.py:22 /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/__init__.py:28
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPReader/__init__.py:22
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/__init__.py:28
msgctxt "@item:inlistbox"
msgid "Ultimaker Format Package"
msgstr "Ultimaker 포맷 패키지"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:146
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:57
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:72
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:94
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:149
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:159
msgctxt "@info:error"
msgid "Can't write to UFP file:"
msgstr "UFP 파일에 쓸 수 없음:"
@@ -1254,22 +1347,22 @@ msgctxt "@action"
msgid "Select upgrades"
msgstr "업그레이드 선택"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:152
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:154
msgctxt "@action:button"
msgid "Print via cloud"
msgstr "Cloud를 통해 프린팅"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:153
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:155
msgctxt "@properties:tooltip"
msgid "Print via cloud"
msgstr "Cloud를 통해 프린팅"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:154
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:156
msgctxt "@info:status"
msgid "Connected via cloud"
msgstr "Cloud를 통해 연결됨"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:264
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:270
#, python-brace-format
msgctxt "@error:send"
msgid "Unknown error code when uploading print job: {0}"
@@ -1311,7 +1404,8 @@ msgid "This printer is not linked to the Digital Factory:"
msgid_plural "These printers are not linked to the Digital Factory:"
msgstr[0] "다음 프린터는 Digital Factory에 연결되어 있지 않습니다:"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:329 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:419
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:329
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:419
msgctxt "info:name"
msgid "Ultimaker Digital Factory"
msgstr "Ultimaker Digital Factory"
@@ -1559,125 +1653,135 @@ msgctxt "@info:tooltip"
msgid "Some things could be problematic in this print. Click to see tips for adjustment."
msgstr "이 출력물에는 문제가있을 수 있습니다. 조정을 위한 도움말을 보려면 클릭하십시오."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:14
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:15
msgctxt "@title:window"
msgid "Open Project"
msgstr "프로젝트 열기"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:61
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:62
msgctxt "@action:ComboBox Update/override existing profile"
msgid "Update existing"
msgstr "기존 업데이트"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:62
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:63
msgctxt "@action:ComboBox Save settings in a new profile"
msgid "Create new"
msgstr "새로 만들기"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:74 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:69
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:75
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:69
msgctxt "@action:title"
msgid "Summary - Cura Project"
msgstr "요약 - Cura 프로젝트"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:96 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:93
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:97
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:93
msgctxt "@action:label"
msgid "Printer settings"
msgstr "프린터 설정"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:112
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:113
msgctxt "@info:tooltip"
msgid "How should the conflict in the machine be resolved?"
msgstr "기기의 충돌을 어떻게 해결해야합니까?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:165 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:102
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:167
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:102
msgctxt "@action:label"
msgid "Type"
msgstr "유형"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:181 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:117
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:183
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:117
msgctxt "@action:label"
msgid "Printer Group"
msgstr "프린터 그룹"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:203 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:218
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:205
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:218
msgctxt "@action:label"
msgid "Profile settings"
msgstr "프로파일 설정"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:219
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:221
msgctxt "@info:tooltip"
msgid "How should the conflict in the profile be resolved?"
msgstr "프로파일의 충돌을 어떻게 해결해야합니까?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:239 /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:349 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:117
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:242
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:353
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:117
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:242
msgctxt "@action:label"
msgid "Name"
msgstr "이름"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:255 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:259
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:258
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:259
msgctxt "@action:label"
msgid "Intent"
msgstr "Intent"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:271 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:226
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:274
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:226
msgctxt "@action:label"
msgid "Not in profile"
msgstr "프로파일에 없음"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:276 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:231
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:279
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:231
msgctxt "@action:label"
msgid "%1 override"
msgid_plural "%1 overrides"
msgstr[0] "%1 무시"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:287
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:290
msgctxt "@action:label"
msgid "Derivative from"
msgstr "Derivative from"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:292
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:295
msgctxt "@action:label"
msgid "%1, %2 override"
msgid_plural "%1, %2 overrides"
msgstr[0] "%1, %2 무시"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:309
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:312
msgctxt "@action:label"
msgid "Material settings"
msgstr "재료 설정"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:325
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:328
msgctxt "@info:tooltip"
msgid "How should the conflict in the material be resolved?"
msgstr "재료의 충돌은 어떻게 해결되어야합니까?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:369
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:373
msgctxt "@action:label"
msgid "Setting visibility"
msgstr "표시 설정"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:378
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:382
msgctxt "@action:label"
msgid "Mode"
msgstr "종류"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:394
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:398
msgctxt "@action:label"
msgid "Visible settings:"
msgstr "표시 설정 :"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:399
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:403
msgctxt "@action:label"
msgid "%1 out of %2"
msgstr "1 out of %2"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:425
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:429
msgctxt "@action:warning"
msgid "Loading a project will clear all models on the build plate."
msgstr "프로젝트를 로드하면 빌드 플레이트의 모든 모델이 지워집니다."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:453
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:457
msgctxt "@action:button"
msgid "Open"
msgstr "열기"
@@ -1777,8 +1881,10 @@ msgctxt "@description"
msgid "Backup and synchronize your Cura settings."
msgstr "Cura 설정을 백업, 동기화하십시오."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/qml/pages/WelcomePage.qml:51 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/WelcomePage.qml:39 /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:68
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:125
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/qml/pages/WelcomePage.qml:51
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/WelcomePage.qml:39
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:53
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:199
msgctxt "@button"
msgid "Sign in"
msgstr "로그인"
@@ -1928,7 +2034,8 @@ msgctxt "@item:inlistbox"
msgid "Linear"
msgstr "직선 모양"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:161 /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:172
+#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:161
+#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:172
msgctxt "@item:inlistbox"
msgid "Translucency"
msgstr "반투명성"
@@ -1953,7 +2060,9 @@ msgctxt "@action:label"
msgid "Smoothing"
msgstr "스무딩(smoothing)"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:227 /home/trin/Gedeeld/Projects/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:139 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:361
+#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:227
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:139
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:361
msgctxt "@action:button"
msgid "OK"
msgstr "확인"
@@ -1973,10 +2082,18 @@ msgctxt "@label"
msgid "Nozzle size"
msgstr "노즐 크기"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:79 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:93 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:109
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:124 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:74 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:89
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:104 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:205 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:225
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:245 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:265 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:283
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:79
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:93
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:109
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:124
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:74
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:89
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:104
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:205
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:225
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:245
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:265
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:283
msgctxt "@label"
msgid "mm"
msgstr "mm"
@@ -2001,12 +2118,12 @@ msgctxt "@label"
msgid "Cooling Fan Number"
msgstr "냉각 팬 번호"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:162
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:163
msgctxt "@title:label"
msgid "Extruder Start G-code"
msgstr "익스트루더 시작 Gcode"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:176
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:177
msgctxt "@title:label"
msgid "Extruder End G-code"
msgstr "익스트루더 종료 Gcode"
@@ -2091,12 +2208,17 @@ msgctxt "@label"
msgid "Number of Extruders"
msgstr "익스트루더의 수"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:374
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:345
+msgctxt "@label"
+msgid "Apply Extruder offsets to GCode"
+msgstr "익스트루더 오프셋을 GCode에 적용"
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:393
msgctxt "@title:label"
msgid "Start G-code"
msgstr "시작 GCode"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:385
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:404
msgctxt "@title:label"
msgid "End G-code"
msgstr "End GCode"
@@ -2122,6 +2244,11 @@ msgctxt "@label link to technical assistance"
msgid "View user manuals online"
msgstr "사용자 매뉴얼 온라인 보기"
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MonitorStage/MonitorMain.qml:172
+msgctxt "@info"
+msgid "In order to monitor your print from Cura, please connect the printer."
+msgstr "Cura에서 프린트를 모니터링하려면 프린터를 연결하십시오."
+
#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml:42
msgctxt "@label"
msgid "Mesh Type"
@@ -2167,7 +2294,8 @@ msgctxt "@title:window"
msgid "Select Settings to Customize for this model"
msgstr "이 모델에 맞게 사용자 정의 설정을 선택하십시오"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:55 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:94
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:55
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:96
msgctxt "@label:textbox"
msgid "Filter..."
msgstr "필터..."
@@ -2177,113 +2305,130 @@ msgctxt "@label:checkbox"
msgid "Show all"
msgstr "모두 보이기"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:18
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:20
msgctxt "@title:window"
msgid "Post Processing Plugin"
msgstr "후처리 플러그인"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:57
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:59
msgctxt "@label"
msgid "Post Processing Scripts"
msgstr "후처리 스크립트"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:233
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:235
msgctxt "@action"
msgid "Add a script"
msgstr "스크립트 추가"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:279
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:282
msgctxt "@label"
msgid "Settings"
msgstr "설정"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:499
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:502
msgctxt "@info:tooltip"
msgid "Change active post-processing scripts."
msgstr "활성 사후 처리 스크립트를 변경하십시오."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:503
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:506
msgctxt "@info:tooltip"
msgid "The following script is active:"
msgid_plural "The following scripts are active:"
msgstr[0] "다음 스크립트들이 활성화됩니다:"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:20 /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:49
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:20
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:49
msgctxt "@label"
msgid "Color scheme"
msgstr "색 구성표"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:107
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:110
msgctxt "@label:listbox"
msgid "Material Color"
msgstr "재료 색상"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:111
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:114
msgctxt "@label:listbox"
msgid "Line Type"
msgstr "라인 유형"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:115
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:118
msgctxt "@label:listbox"
msgid "Speed"
msgstr "속도"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:119
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:122
msgctxt "@label:listbox"
-msgid "Layer thickness"
+msgid "Layer Thickness"
msgstr "레이어 두께"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:156
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:126
+msgctxt "@label:listbox"
+msgid "Line Width"
+msgstr "선 두께"
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:130
+msgctxt "@label:listbox"
+msgid "Flow"
+msgstr "유량"
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:171
msgctxt "@label"
msgid "Compatibility Mode"
msgstr "호환 모드"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:230
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:245
msgctxt "@label"
msgid "Travels"
msgstr "이동"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:236
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:251
msgctxt "@label"
msgid "Helpers"
msgstr "도움말"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:242
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:257
msgctxt "@label"
msgid "Shell"
msgstr "외곽"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:248 /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedInfillDensitySelector.qml:65
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:263
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedInfillDensitySelector.qml:65
msgctxt "@label"
msgid "Infill"
msgstr "내부채움"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:298
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:271
+msgctxt "@label"
+msgid "Starts"
+msgstr "시작"
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:322
msgctxt "@label"
msgid "Only Show Top Layers"
msgstr "상단 레이어 만 표시"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:308
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:332
msgctxt "@label"
msgid "Show 5 Detailed Layers On Top"
msgstr "상단에 5 개의 세부 레이어 표시"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:322
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:346
msgctxt "@label"
msgid "Top / Bottom"
msgstr "위 / 아래"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:326
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:350
msgctxt "@label"
msgid "Inner Wall"
msgstr "내벽"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:384
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:419
msgctxt "@label"
msgid "min"
msgstr "최소"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:433
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:488
msgctxt "@label"
msgid "max"
msgstr "최대"
@@ -2358,7 +2503,8 @@ msgctxt "@action:label"
msgid "Website"
msgstr "웹 사이트"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:46 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxProgressButton.qml:20
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:46
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxProgressButton.qml:20
msgctxt "@action:button"
msgid "Installed"
msgstr "설치됨"
@@ -2373,17 +2519,20 @@ msgctxt "@label:The string between and is the highlighted link"
msgid "Buy material spools"
msgstr "재료 스플 구입"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:96 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxInstalledTileActions.qml:34
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:96
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxInstalledTileActions.qml:34
msgctxt "@action:button"
msgid "Update"
msgstr "업데이트"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:97 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxInstalledTileActions.qml:35
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:97
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxInstalledTileActions.qml:35
msgctxt "@action:button"
msgid "Updating"
msgstr "업데이트 중"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:98 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxInstalledTileActions.qml:36
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:98
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxInstalledTileActions.qml:36
msgctxt "@action:button"
msgid "Updated"
msgstr "업데이트됨"
@@ -2393,7 +2542,8 @@ msgctxt "@label"
msgid "Premium"
msgstr "프리미엄"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDownloadsShowcase.qml:39 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxHeader.qml:86
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDownloadsShowcase.qml:39
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxHeader.qml:86
msgctxt "@info:tooltip"
msgid "Go to Web Marketplace"
msgstr "웹 마켓플레이스로 이동"
@@ -2418,7 +2568,9 @@ msgctxt "@title:tab"
msgid "Plugins"
msgstr "플러그인"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxHeader.qml:44 /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:466 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:89
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxHeader.qml:44
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:457
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:89
msgctxt "@title:tab"
msgid "Materials"
msgstr "재료"
@@ -2463,7 +2615,10 @@ msgctxt "@button"
msgid "Dismiss"
msgstr "취소"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/dialogs/CompatibilityDialog.qml:23 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:123 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/FirstStartMachineActionsContent.qml:77
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/dialogs/CompatibilityDialog.qml:23
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:123
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/FirstStartMachineActionsContent.qml:77
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:178
msgctxt "@button"
msgid "Next"
msgstr "다음 것"
@@ -2528,7 +2683,8 @@ msgctxt "@label"
msgid "Last updated"
msgstr "마지막으로 업데이트한 날짜"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:103 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:138
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:103
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:138
msgctxt "@label"
msgid "Brand"
msgstr "상표"
@@ -2658,7 +2814,9 @@ msgctxt "@action:button"
msgid "Edit"
msgstr "편집"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:88 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:55 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:156
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:88
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:55
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:156
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:138
msgctxt "@action:button"
msgid "Remove"
@@ -2674,17 +2832,20 @@ msgctxt "@label"
msgid "If your printer is not listed, read the network printing troubleshooting guide"
msgstr "프린터가 목록에 없으면 네트워크 프린팅 문제 해결 가이드를 읽어보십시오"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:205 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:263
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:205
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:263
msgctxt "@label"
msgid "Type"
msgstr "유형"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:225 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:279
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:225
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:279
msgctxt "@label"
msgid "Firmware version"
msgstr "펌웨어 버전"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:239 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:295
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:239
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:295
msgctxt "@label"
msgid "Address"
msgstr "주소"
@@ -2714,7 +2875,8 @@ msgctxt "@title:window"
msgid "Invalid IP address"
msgstr "잘못된 IP 주소"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:297 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:146
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:297
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:146
msgctxt "@text"
msgid "Please enter a valid IP address."
msgstr "유효한 IP 주소를 입력하십시오."
@@ -2724,7 +2886,8 @@ msgctxt "@title:window"
msgid "Printer Address"
msgstr "프린터 주소"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:331 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:102
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:331
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:102
msgctxt "@label"
msgid "Enter the IP address of your printer on the network."
msgstr "네트워크에 있는 프린터의 IP 주소를 입력하십시오."
@@ -2775,7 +2938,8 @@ msgctxt "@label"
msgid "Override will use the specified settings with the existing printer configuration. This may result in a failed print."
msgstr "무시하기는 기존 프린터 구성과 함께 지정된 설정을 사용하게 됩니다. 이는 인쇄 실패로 이어질 수 있습니다."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:153 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:191
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:153
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:191
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:184
msgctxt "@label"
msgid "Glass"
@@ -2796,7 +2960,8 @@ msgctxt "@label"
msgid "Delete"
msgstr "삭제"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:100 /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:289
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:100
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:290
msgctxt "@label"
msgid "Resume"
msgstr "재개"
@@ -2811,7 +2976,9 @@ msgctxt "@label"
msgid "Resuming..."
msgstr "다시 시작..."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:106 /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:284 /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:293
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:106
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:285
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:294
msgctxt "@label"
msgid "Pause"
msgstr "중지"
@@ -2851,7 +3018,8 @@ msgctxt "@label %1 is the name of a print job."
msgid "Are you sure you want to abort %1?"
msgstr "%1(을)를 정말로 중지하시겠습니까?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:164 /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:335
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:164
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:336
msgctxt "@window:title"
msgid "Abort print"
msgstr "프린팅 중단"
@@ -2861,7 +3029,9 @@ msgctxt "@label link to Connect and Cloud interfaces"
msgid "Manage printer"
msgstr "프린터 관리"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:254 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:519 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:250
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:254
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:523
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:250
msgctxt "@info"
msgid "Please update your printer's firmware to manage the queue remotely."
msgstr "대기열을 원격으로 관리하려면 프린터 펌웨어를 업데이트하십시오."
@@ -2886,27 +3056,34 @@ msgctxt "@label:status"
msgid "Idle"
msgstr "대기 상태"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:365
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:364
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:84
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:86
+msgctxt "@label:status"
+msgid "Preparing..."
+msgstr "준비 중..."
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:369
msgctxt "@label:status"
msgid "Printing"
msgstr "프린팅"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:406
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:410
msgctxt "@label"
msgid "Untitled"
msgstr "제목 없음"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:427
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:431
msgctxt "@label"
msgid "Anonymous"
msgstr "익명"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:454
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:458
msgctxt "@label:status"
msgid "Requires configuration changes"
msgstr "구성 변경 필요"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:492
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:496
msgctxt "@action:button"
msgid "Details"
msgstr "세부 사항"
@@ -2921,21 +3098,18 @@ msgctxt "@label"
msgid "First available"
msgstr "첫 번째로 사용 가능"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:78 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:90
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:78
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:90
msgctxt "@label:status"
msgid "Aborted"
msgstr "중단됨"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:80 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:82
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:80
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:82
msgctxt "@label:status"
msgid "Finished"
msgstr "끝마친"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:84 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:86
-msgctxt "@label:status"
-msgid "Preparing..."
-msgstr "준비 중..."
-
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:88
msgctxt "@label:status"
msgid "Aborting..."
@@ -3016,26 +3190,27 @@ msgctxt "@action:button"
msgid "Sign in"
msgstr "로그인"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:40
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:20
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:64
msgctxt "@label"
-msgid "Your key to connected 3D printing"
-msgstr "연결된 3D 프린팅의 핵심"
+msgid "Sign in to the Ultimaker platform"
+msgstr "Ultimaker 플랫폼에 로그인"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:51
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:42
msgctxt "@text"
msgid ""
-"- Customize your experience with more print profiles and plugins\n"
-"- Stay flexible by syncing your setup and loading it anywhere\n"
-"- Increase efficiency with a remote workflow on Ultimaker printers"
+"- Add material profiles and plug-ins from the Marketplace\n"
+"- Back-up and sync your material profiles and plug-ins\n"
+"- Share ideas and get help from 48,000+ users in the Ultimaker community"
msgstr ""
-"- 보다 많은 프린트 프로파일과 플러그인으로 자신에게 맞게 환경 조정\n"
-"- 어디서든지 유연하게 설정을 동기화하고 로딩\n"
-"- Ultimaker 프린터에서 원격 워크플로로 효율성 증대"
+"- 재료 설정 및 Marketplace 플러그인 추가\n"
+"- 재료 설정과 플러그인 백업 및 동기화\n"
+"- Ultimaker 커뮤니티에서 48,000명 이상의 사용자와 아이디어를 공유하고 도움 받기"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:78 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:142
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:62
msgctxt "@button"
-msgid "Create account"
-msgstr "계정 생성"
+msgid "Create a free Ultimaker account"
+msgstr "Ultimaker 계정 무료 생성"
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/SyncState.qml:28
msgctxt "@label"
@@ -3142,300 +3317,308 @@ msgctxt "@button"
msgid "Cancel"
msgstr "취소"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:82
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:83
msgctxt "@action:inmenu"
msgid "Show Online Troubleshooting Guide"
msgstr "온라인 문제 해결 가이드 표시"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:89
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:90
msgctxt "@action:inmenu"
msgid "Toggle Full Screen"
msgstr "전채 화면 전환"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:97
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:98
msgctxt "@action:inmenu"
msgid "Exit Full Screen"
msgstr "전체 화면 종료"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:104
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:105
msgctxt "@action:inmenu menubar:edit"
msgid "&Undo"
msgstr "되돌리기(&U)"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:114
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:115
msgctxt "@action:inmenu menubar:edit"
msgid "&Redo"
msgstr "다시하기(&R)"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:124
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:125
msgctxt "@action:inmenu menubar:file"
msgid "&Quit"
msgstr "종료(&Q)"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:132
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:133
msgctxt "@action:inmenu menubar:view"
msgid "3D View"
msgstr "3D 보기"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:139
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:140
msgctxt "@action:inmenu menubar:view"
msgid "Front View"
msgstr "앞에서 보기"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:146
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:147
msgctxt "@action:inmenu menubar:view"
msgid "Top View"
msgstr "위에서 보기"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:153
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:154
+msgctxt "@action:inmenu menubar:view"
+msgid "Bottom View"
+msgstr "하단 뷰"
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:161
msgctxt "@action:inmenu menubar:view"
msgid "Left Side View"
msgstr "왼쪽에서 보기"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:160
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:168
msgctxt "@action:inmenu menubar:view"
msgid "Right Side View"
msgstr "오른쪽에서 보기"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:167
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:175
msgctxt "@action:inmenu"
msgid "Configure Cura..."
msgstr "Cura 구성 ..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:174
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:182
msgctxt "@action:inmenu menubar:printer"
msgid "&Add Printer..."
msgstr "프린터 추가..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:180
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:188
msgctxt "@action:inmenu menubar:printer"
msgid "Manage Pr&inters..."
msgstr "프린터 관리 ..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:187
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:195
msgctxt "@action:inmenu"
msgid "Manage Materials..."
msgstr "재료 관리..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:195
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:203
msgctxt "@action:inmenu"
msgid "Add more materials from Marketplace"
msgstr "마켓플레이스에서 더 많은 재료 추가"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:202
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:210
msgctxt "@action:inmenu menubar:profile"
msgid "&Update profile with current settings/overrides"
msgstr "현재 설정으로로 프로파일 업데이트"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:210
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:218
msgctxt "@action:inmenu menubar:profile"
msgid "&Discard current changes"
msgstr "현재 변경 사항 무시"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:222
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:230
msgctxt "@action:inmenu menubar:profile"
msgid "&Create profile from current settings/overrides..."
msgstr "현재 설정으로 프로파일 생성..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:228
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:236
msgctxt "@action:inmenu menubar:profile"
msgid "Manage Profiles..."
msgstr "프로파일 관리..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:236
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:244
msgctxt "@action:inmenu menubar:help"
msgid "Show Online &Documentation"
msgstr "온라인 문서 표시"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:244
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:252
msgctxt "@action:inmenu menubar:help"
msgid "Report a &Bug"
msgstr "버그 리포트"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:252
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:260
msgctxt "@action:inmenu menubar:help"
msgid "What's New"
msgstr "새로운 기능"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:258
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:266
msgctxt "@action:inmenu menubar:help"
msgid "About..."
msgstr "소개..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:265
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:273
msgctxt "@action:inmenu menubar:edit"
-msgid "Delete Selected Model"
-msgid_plural "Delete Selected Models"
-msgstr[0] "선택한 모델 삭제"
+msgid "Delete Selected"
+msgstr "선택 항목 삭제"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:275
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:283
msgctxt "@action:inmenu menubar:edit"
-msgid "Center Selected Model"
-msgid_plural "Center Selected Models"
-msgstr[0] "선택한 모델 중심에 놓기"
+msgid "Center Selected"
+msgstr "선택 항목 가운데 정렬"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:284
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:292
msgctxt "@action:inmenu menubar:edit"
-msgid "Multiply Selected Model"
-msgid_plural "Multiply Selected Models"
-msgstr[0] "선택한 모델 복제"
+msgid "Multiply Selected"
+msgstr "선택 항목 복제"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:293
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:301
msgctxt "@action:inmenu"
msgid "Delete Model"
msgstr "모델 삭제"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:301
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:309
msgctxt "@action:inmenu"
msgid "Ce&nter Model on Platform"
msgstr "플랫폼중심에 모델 위치하기"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:307
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:315
msgctxt "@action:inmenu menubar:edit"
msgid "&Group Models"
msgstr "모델 그룹화"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:327
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:335
msgctxt "@action:inmenu menubar:edit"
msgid "Ungroup Models"
msgstr "모델 그룹 해제"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:337
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:345
msgctxt "@action:inmenu menubar:edit"
msgid "&Merge Models"
msgstr "모델 합치기"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:347
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:355
msgctxt "@action:inmenu"
msgid "&Multiply Model..."
msgstr "모델 복제..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:354
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:362
msgctxt "@action:inmenu menubar:edit"
msgid "Select All Models"
msgstr "모든 모델 선택"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:364
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:372
msgctxt "@action:inmenu menubar:edit"
msgid "Clear Build Plate"
msgstr "빌드 플레이트 지우기"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:374
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:382
msgctxt "@action:inmenu menubar:file"
msgid "Reload All Models"
msgstr "모든 모델 다시 로드"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:383
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:391
msgctxt "@action:inmenu menubar:edit"
msgid "Arrange All Models To All Build Plates"
msgstr "모든 모델을 모든 빌드 플레이트에 정렬"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:390
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:398
msgctxt "@action:inmenu menubar:edit"
msgid "Arrange All Models"
msgstr "모든 모델 정렬"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:398
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:406
msgctxt "@action:inmenu menubar:edit"
msgid "Arrange Selection"
msgstr "선택한 모델 정렬"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:405
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:413
msgctxt "@action:inmenu menubar:edit"
msgid "Reset All Model Positions"
msgstr "모든 모델의 위치 재설정"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:412
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:420
msgctxt "@action:inmenu menubar:edit"
msgid "Reset All Model Transformations"
msgstr "모든 모델의 변환 재설정"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:419
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:429
msgctxt "@action:inmenu menubar:file"
msgid "&Open File(s)..."
msgstr "파일 열기..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:427
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:439
msgctxt "@action:inmenu menubar:file"
msgid "&New Project..."
msgstr "새로운 프로젝트..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:434
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:446
msgctxt "@action:inmenu menubar:help"
msgid "Show Configuration Folder"
msgstr "설정 폴더 표시"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:441 /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:538
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:453
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:550
msgctxt "@action:menu"
msgid "Configure setting visibility..."
msgstr "설정 보기..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:448
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:460
msgctxt "@action:menu"
msgid "&Marketplace"
msgstr "&시장"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:266
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:257
msgctxt "@label"
msgid "This package will be installed after restarting."
msgstr "다시 시작한 후에 이 패키지가 설치됩니다."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:459 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:15
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:450
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:17
msgctxt "@title:tab"
msgid "General"
msgstr "일반"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:462
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:453
msgctxt "@title:tab"
msgid "Settings"
msgstr "설정"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:464 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:16
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:455
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:16
msgctxt "@title:tab"
msgid "Printers"
msgstr "프린터"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:468 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:34
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:459
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:34
msgctxt "@title:tab"
msgid "Profiles"
msgstr "프로파일"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:587
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:576
msgctxt "@title:window %1 is the application name"
msgid "Closing %1"
msgstr "%1 닫기"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:588 /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:600
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:577
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:589
msgctxt "@label %1 is the application name"
msgid "Are you sure you want to exit %1?"
msgstr "%1을(를) 정말로 종료하시겠습니까?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:638 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:19
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:627
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:19
msgctxt "@title:window"
msgid "Open file(s)"
msgstr "파일 열기"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:744
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:737
msgctxt "@window:title"
msgid "Install Package"
msgstr "패키지 설치"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:752
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:745
msgctxt "@title:window"
msgid "Open File(s)"
msgstr "파일 열기"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:755
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:748
msgctxt "@text:window"
msgid "We have found one or more G-Code files within the files you have selected. You can only open one G-Code file at a time. If you want to open a G-Code file, please just select only one."
msgstr "선택한 파일 내에 하나 이상의 G-코드 파일이 있습니다. 한 번에 하나의 G-코드 파일 만 열 수 있습니다. G-코드 파일을 열려면 하나만 선택하십시오."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:858
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:857
msgctxt "@title:window"
msgid "Add Printer"
msgstr "프린터 추가"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:866
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:865
msgctxt "@title:window"
msgid "What's New"
msgstr "새로운 기능"
@@ -3564,7 +3747,8 @@ msgctxt "@Label"
msgid "Static type checker for Python"
msgstr "Python용 정적 유형 검사기"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:156 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:157
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:156
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:157
msgctxt "@Label"
msgid "Root Certificates for validating SSL trustworthiness"
msgstr "SSL 신뢰성 검증용 루트 인증서"
@@ -3584,17 +3768,27 @@ msgctxt "@label"
msgid "Python bindings for libnest2d"
msgstr "libnest2d용 Python 바인딩"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:161
+msgctxt "@label"
+msgid "Support library for system keyring access"
+msgstr "시스템 키링 액세스를 위한 서포트 라이브러리"
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:162
msgctxt "@label"
+msgid "Python extensions for Microsoft Windows"
+msgstr "Microsoft Windows용 Python 확장"
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:163
+msgctxt "@label"
msgid "Font"
msgstr "폰트"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:163
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:164
msgctxt "@label"
msgid "SVG icons"
msgstr "SVG 아이콘"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:164
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:165
msgctxt "@label"
msgid "Linux cross-distribution application deployment"
msgstr "Linux 교차 배포 응용 프로그램 배포"
@@ -3604,22 +3798,22 @@ msgctxt "@title:window"
msgid "Open project file"
msgstr "프로젝트 파일 열기"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:93
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:88
msgctxt "@text:window"
msgid "This is a Cura project file. Would you like to open it as a project or import the models from it?"
msgstr "이 파일은 Cura 프로젝트 파일입니다. 프로젝트로 열거나 모델을 가져 오시겠습니까?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:103
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:98
msgctxt "@text:window"
msgid "Remember my choice"
msgstr "선택 기억하기"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:122
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:117
msgctxt "@action:button"
msgid "Open as project"
msgstr "프로젝트로 열기"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:131
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:126
msgctxt "@action:button"
msgid "Import models"
msgstr "모델 가져 오기"
@@ -3650,7 +3844,8 @@ msgctxt "@title:column"
msgid "Current changes"
msgstr "현재 변경 사항"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:158 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:747
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:158
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:733
msgctxt "@option:discardOrKeep"
msgid "Always ask me this"
msgstr "항상 묻기"
@@ -3675,12 +3870,12 @@ msgctxt "@action:button"
msgid "Keep changes"
msgstr "변경 사항 유지"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:64
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:59
msgctxt "@text:window"
msgid "We have found one or more project file(s) within the files you have selected. You can open only one project file at a time. We suggest to only import models from those files. Would you like to proceed?"
msgstr "선택한 파일 내에 하나 이상의 프로젝트 파일이 있습니다. 한 번에 하나의 프로젝트 파일 만 열 수 있습니다. 해당 파일에서 모델 만 가져 오기를 권장합니다. 계속 하시겠습니까?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:99
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:94
msgctxt "@action:button"
msgid "Import all as models"
msgstr "모두 모델로 가져 오기"
@@ -3726,7 +3921,8 @@ msgctxt "@text Print job name"
msgid "Untitled"
msgstr "제목 없음"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MainWindow/ApplicationMenu.qml:27 /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:13
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MainWindow/ApplicationMenu.qml:27
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:13
msgctxt "@title:menu menubar:toplevel"
msgid "&File"
msgstr "파일"
@@ -3736,12 +3932,14 @@ msgctxt "@title:menu menubar:toplevel"
msgid "&Edit"
msgstr "편집(&E)"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MainWindow/ApplicationMenu.qml:49 /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:12
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MainWindow/ApplicationMenu.qml:49
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:12
msgctxt "@title:menu menubar:toplevel"
msgid "&View"
msgstr "보기(&V)"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MainWindow/ApplicationMenu.qml:51 /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingsMenu.qml:13
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MainWindow/ApplicationMenu.qml:51
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingsMenu.qml:13
msgctxt "@title:menu menubar:toplevel"
msgid "&Settings"
msgstr "설정"
@@ -3831,7 +4029,7 @@ msgctxt "@label"
msgid "Material"
msgstr "재료"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/CustomConfiguration.qml:394
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/CustomConfiguration.qml:407
msgctxt "@label"
msgid "Use glue for better adhesion with this material combination."
msgstr "더 나은 접착력을 위해 이 재료 조합과 함께 접착제를 사용하십시오.."
@@ -3853,17 +4051,17 @@ msgctxt "@label"
msgid "Number of Copies"
msgstr "복제할 수"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:33
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:41
msgctxt "@title:menu menubar:file"
msgid "&Save Project..."
msgstr "프로젝트 저장(&S)..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:54
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:74
msgctxt "@title:menu menubar:file"
msgid "&Export..."
msgstr "내보내기(&E)..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:65
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:85
msgctxt "@action:inmenu menubar:file"
msgid "Export Selection..."
msgstr "내보내기 선택..."
@@ -3883,6 +4081,11 @@ msgctxt "@label:category menu label"
msgid "Generic"
msgstr "일반"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/OpenFilesMenu.qml:15
+msgctxt "@title:menu menubar:file"
+msgid "Open File(s)..."
+msgstr "파일 여는 중..."
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/PrinterMenu.qml:25
msgctxt "@label:category menu label"
msgid "Network enabled printers"
@@ -3898,6 +4101,11 @@ msgctxt "@title:menu menubar:file"
msgid "Open &Recent"
msgstr "최근 열어본 파일 열기"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SaveProjectMenu.qml:15
+msgctxt "@title:menu menubar:file"
+msgid "Save Project..."
+msgstr "프로젝트 저장 중..."
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingsMenu.qml:15
msgctxt "@title:menu menubar:settings"
msgid "&Printer"
@@ -3923,17 +4131,17 @@ msgctxt "@action:inmenu"
msgid "Disable Extruder"
msgstr "익스트루더 사용하지 않음"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:13
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:16
msgctxt "@action:inmenu"
msgid "Visible Settings"
msgstr "표시 설정"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:42
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:45
msgctxt "@action:inmenu"
msgid "Collapse All Categories"
msgstr "모든 카테고리 붕괴"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:51
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:54
msgctxt "@action:inmenu"
msgid "Manage Setting Visibility..."
msgstr "보기 설정 관리..."
@@ -3943,22 +4151,22 @@ msgctxt "@action:inmenu menubar:view"
msgid "&Camera position"
msgstr "카메라 위치(&C)"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:44
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:45
msgctxt "@action:inmenu menubar:view"
msgid "Camera view"
msgstr "카메라 뷰"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:47
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:48
msgctxt "@action:inmenu menubar:view"
msgid "Perspective"
msgstr "원근"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:59
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:60
msgctxt "@action:inmenu menubar:view"
msgid "Orthographic"
msgstr "직교"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:80
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:81
msgctxt "@action:inmenu menubar:view"
msgid "&Build plate"
msgstr "빌드 플레이트(&B)"
@@ -4003,12 +4211,12 @@ msgctxt "@label:MonitorStatus"
msgid "Please remove the print"
msgstr "프린트물을 제거하십시오"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:325
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:326
msgctxt "@label"
msgid "Abort Print"
msgstr "프린팅 중단"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:337
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:338
msgctxt "@label"
msgid "Are you sure you want to abort the print?"
msgstr "프린팅를 중단 하시겠습니까?"
@@ -4049,310 +4257,314 @@ msgctxt "@label"
msgid "Interface"
msgstr "인터페이스"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:216
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:209
msgctxt "@label"
msgid "Currency:"
msgstr "통화:"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:229
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:222
msgctxt "@label"
msgid "Theme:"
msgstr "테마:"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:285
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:267
msgctxt "@label"
msgid "You will need to restart the application for these changes to have effect."
msgstr "이러한 변경 사항을 적용하려면 응용 프로그램을 다시 시작해야합니다."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:302
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:284
msgctxt "@info:tooltip"
msgid "Slice automatically when changing settings."
msgstr "설정이 변경되면 자동으로 슬라이싱 합니다."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:310
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:292
msgctxt "@option:check"
msgid "Slice automatically"
msgstr "자동으로 슬라이싱"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:324
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:306
msgctxt "@label"
msgid "Viewport behavior"
msgstr "뷰포트 동작"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:332
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:314
msgctxt "@info:tooltip"
msgid "Highlight unsupported areas of the model in red. Without support these areas will not print properly."
msgstr "지원되지 않는 모델 영역을 빨간색으로 강조 표시하십시오. 서포트가 없으면 이 영역이 제대로 프린팅되지 않습니다."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:341
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:323
msgctxt "@option:check"
msgid "Display overhang"
msgstr "오버행 표시"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:351
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:333
msgctxt "@info:tooltip"
msgid "Highlight missing or extraneous surfaces of the model using warning signs. The toolpaths will often be missing parts of the intended geometry."
msgstr "경고 기호를 사용해 모델에서 누락되거나 관계 없는 표면을 강조 표시합니다. 도구 경로에서는 종종 의도한 형상의 일부가 누락됩니다."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:360
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:342
msgctxt "@option:check"
msgid "Display model errors"
msgstr "모델 오류 표시"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:368
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:350
msgctxt "@info:tooltip"
msgid "Moves the camera so the model is in the center of the view when a model is selected"
msgstr "모델을 선택하면 모델이 뷰의 가운데에 오도록 카메라를 이동합니다"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:373
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:355
msgctxt "@action:button"
msgid "Center camera when item is selected"
msgstr "항목을 선택하면 카메라를 중앙에 위치"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:383
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:365
msgctxt "@info:tooltip"
msgid "Should the default zoom behavior of cura be inverted?"
msgstr "큐라의 기본 확대 동작을 반전시켜야 합니까?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:388
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:370
msgctxt "@action:button"
msgid "Invert the direction of camera zoom."
msgstr "카메라 줌의 방향을 반전시키기."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:404
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:386
msgctxt "@info:tooltip"
msgid "Should zooming move in the direction of the mouse?"
msgstr "확대가 마우스 방향으로 이동해야 합니까?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:404
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:386
msgctxt "@info:tooltip"
msgid "Zooming towards the mouse is not supported in the orthographic perspective."
msgstr "정투영법 시점에서는 마우스 방향으로 확대가 지원되지 않습니다."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:409
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:391
msgctxt "@action:button"
msgid "Zoom toward mouse direction"
msgstr "마우스 방향으로 확대"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:435
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:417
msgctxt "@info:tooltip"
msgid "Should models on the platform be moved so that they no longer intersect?"
msgstr "모델을 더 이상 교차시키지 않도록 이동해야합니까?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:440
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:422
msgctxt "@option:check"
msgid "Ensure models are kept apart"
msgstr "모델이 분리되어 있는지 확인"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:449
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:431
msgctxt "@info:tooltip"
msgid "Should models on the platform be moved down to touch the build plate?"
msgstr "모델을 빌드 플레이트에 닿도록 아래로 움직여야합니까?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:454
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:436
msgctxt "@option:check"
msgid "Automatically drop models to the build plate"
msgstr "모델을 빌드 플레이트에 자동으로 놓기"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:466
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:448
msgctxt "@info:tooltip"
msgid "Show caution message in g-code reader."
msgstr "g-code 리더에 주의 메시지를 표시하기."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:475
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:457
msgctxt "@option:check"
msgid "Caution message in g-code reader"
msgstr "g-code 리더의 주의 메시지"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:483
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:465
msgctxt "@info:tooltip"
msgid "Should layer be forced into compatibility mode?"
msgstr "레이어가 호환 모드로 강제 설정되어야합니까?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:488
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:470
msgctxt "@option:check"
msgid "Force layer view compatibility mode (restart required)"
msgstr "레이어 뷰 호환성 모드로 전환 (다시 시작해야 함)"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:498
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:480
msgctxt "@info:tooltip"
msgid "Should Cura open at the location it was closed?"
msgstr "닫힌 위치에서 Cura를 열어야 합니까?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:503
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:485
msgctxt "@option:check"
msgid "Restore window position on start"
msgstr "시작 시 창 위치 복원"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:513
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:495
msgctxt "@info:tooltip"
msgid "What type of camera rendering should be used?"
msgstr "어떤 유형의 카메라 렌더링을 사용해야 합니까?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:520
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:502
msgctxt "@window:text"
msgid "Camera rendering:"
msgstr "카메라 렌더링:"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:531
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:509
msgid "Perspective"
msgstr "원근"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:532
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:510
msgid "Orthographic"
msgstr "정투영"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:563
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:548
msgctxt "@label"
msgid "Opening and saving files"
msgstr "파일 열기 및 저장"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:570
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:555
msgctxt "@info:tooltip"
msgid "Should opening files from the desktop or external applications open in the same instance of Cura?"
msgstr "데스크톱 또는 외부 애플리케이션의 파일을 동일한 Cura 인스턴스에서 엽니까?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:575
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:560
msgctxt "@option:check"
msgid "Use a single instance of Cura"
msgstr "Cura의 단일 인스턴스 사용"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:585
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:570
msgctxt "@info:tooltip"
msgid "Should models be scaled to the build volume if they are too large?"
msgstr "크기가 너무 큰 경우 모델을 빌드 볼륨에 맞게 조정해야합니까?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:590
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:575
msgctxt "@option:check"
msgid "Scale large models"
msgstr "큰 모델의 사이즈 수정"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:600
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:585
msgctxt "@info:tooltip"
msgid "An model may appear extremely small if its unit is for example in meters rather than millimeters. Should these models be scaled up?"
msgstr "단위가 밀리미터가 아닌 미터 단위 인 경우 모델이 매우 작게 나타날 수 있습니다. 이 모델을 확대할까요?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:605
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:590
msgctxt "@option:check"
msgid "Scale extremely small models"
msgstr "매우 작은 모델의 크기 조정"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:615
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:600
msgctxt "@info:tooltip"
msgid "Should models be selected after they are loaded?"
msgstr "모델을 로드한 후에 선택해야 합니까?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:620
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:605
msgctxt "@option:check"
msgid "Select models when loaded"
msgstr "로드된 경우 모델 선택"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:630
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:615
msgctxt "@info:tooltip"
msgid "Should a prefix based on the printer name be added to the print job name automatically?"
msgstr "프린터 이름에 기반한 접두어가 프린팅 작업 이름에 자동으로 추가되어야합니까?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:635
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:620
msgctxt "@option:check"
msgid "Add machine prefix to job name"
msgstr "작업 이름에 기기 접두어 추가"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:645
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:630
msgctxt "@info:tooltip"
msgid "Should a summary be shown when saving a project file?"
msgstr "프로젝트 파일을 저장할 때 요약이 표시되어야합니까?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:649
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:634
msgctxt "@option:check"
msgid "Show summary dialog when saving project"
msgstr "프로젝트 저장시 요약 대화 상자 표시"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:659
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:644
msgctxt "@info:tooltip"
msgid "Default behavior when opening a project file"
msgstr "프로젝트 파일을 열 때 기본 동작"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:667
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:652
msgctxt "@window:text"
msgid "Default behavior when opening a project file: "
msgstr "프로젝트 파일을 열 때 기본 동작 "
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:681
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:666
msgctxt "@option:openProject"
msgid "Always ask me this"
msgstr "항상 묻기"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:682
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:667
msgctxt "@option:openProject"
msgid "Always open as a project"
msgstr "항상 프로젝트로 열기"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:683
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:668
msgctxt "@option:openProject"
msgid "Always import models"
msgstr "항상 모델 가져 오기"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:719
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:705
msgctxt "@info:tooltip"
msgid "When you have made changes to a profile and switched to a different one, a dialog will be shown asking whether you want to keep your modifications or not, or you can choose a default behaviour and never show that dialog again."
msgstr "프로파일을 변경하고 다른 프로파일로 전환하면 수정 사항을 유지할지 여부를 묻는 대화 상자가 표시됩니다. 기본 행동을 선택하면 해당 대화 상자를 다시 표시 하지 않을 수 있습니다."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:728 /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedQualityProfileSelector.qml:52
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:714
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedQualityProfileSelector.qml:52
msgctxt "@label"
msgid "Profiles"
msgstr "프로파일"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:733
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:719
msgctxt "@window:text"
msgid "Default behavior for changed setting values when switching to a different profile: "
msgstr "다른 프로파일로 변경하는 경우 변경된 설정값에 대한 기본 동작 "
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:748
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:734
msgctxt "@option:discardOrKeep"
msgid "Always discard changed settings"
msgstr "항상 변경된 설정 삭제"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:749
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:735
msgctxt "@option:discardOrKeep"
msgid "Always transfer changed settings to new profile"
msgstr "항상 변경된 설정을 새 프로파일로 전송"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:783
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:770
msgctxt "@label"
msgid "Privacy"
msgstr "보안"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:790
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:777
msgctxt "@info:tooltip"
msgid "Should Cura check for updates when the program is started?"
msgstr "Cura가 프로그램이 시작될 때 업데이트를 확인할까요?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:795
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:782
msgctxt "@option:check"
msgid "Check for updates on start"
msgstr "시작시 업데이트 확인"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:805
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:792
msgctxt "@info:tooltip"
msgid "Should anonymous data about your print be sent to Ultimaker? Note, no models, IP addresses or other personally identifiable information is sent or stored."
msgstr "프린터에 대한 익명의 데이터를 Ultimaker로 보낼까요? 모델, IP 주소 또는 기타 개인 식별 정보는 전송되거나 저장되지 않습니다."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:810
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:797
msgctxt "@option:check"
msgid "Send (anonymous) print information"
msgstr "(익명) 프린터 정보 보내기"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:819
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:806
msgctxt "@action:button"
msgid "More information"
msgstr "추가 정보"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:40 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:108 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:84
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:40
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:108
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:84
msgctxt "@action:button"
msgid "Activate"
msgstr "활성화"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:63 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:152
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:63
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:152
msgctxt "@action:button"
msgid "Rename"
msgstr "이름 바꾸기"
@@ -4367,61 +4579,77 @@ msgctxt "@action:button"
msgid "Duplicate"
msgstr "복제"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:171 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:167
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:171
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:167
msgctxt "@action:button"
msgid "Import"
msgstr "가져오기"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:185 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:179
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:185
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:179
msgctxt "@action:button"
msgid "Export"
msgstr "내보내기"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:234
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:199
+msgctxt "@action:button Sending materials to printers"
+msgid "Sync with Printers"
+msgstr "프린터와 동기화"
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:248
msgctxt "@action:label"
msgid "Printer"
msgstr "프린터"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:298 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:274
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:312
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:277
msgctxt "@title:window"
msgid "Confirm Remove"
msgstr "제거 확인"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:301 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:275
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:315
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:278
msgctxt "@label (%1 is object name)"
msgid "Are you sure you wish to remove %1? This cannot be undone!"
msgstr "%1을 제거 하시겠습니까? 이것은 취소 할 수 없습니다!"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:315 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:323
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:329
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:337
msgctxt "@title:window"
msgid "Import Material"
msgstr "재료 가져 오기"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:324
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:338
msgctxt "@info:status Don't translate the XML tags or !"
msgid "Could not import material %1: %2"
msgstr "재료를 가져올 수 없습니다"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:328
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:342
msgctxt "@info:status Don't translate the XML tag !"
msgid "Successfully imported material %1"
msgstr "재료를 성공적으로 가져왔습니다"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:346 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:354
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:360
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:368
msgctxt "@title:window"
msgid "Export Material"
msgstr "재료 내보내기"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:358
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:372
msgctxt "@info:status Don't translate the XML tags and !"
msgid "Failed to export material to %1: %2"
msgstr "재료를 내보내는데 실패했습니다"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:364
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:378
msgctxt "@info:status Don't translate the XML tag !"
msgid "Successfully exported material to %1"
msgstr "재료를 성공적으로 내보냈습니다"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:388
+msgctxt "@title:window"
+msgid "Export All Materials"
+msgstr "모든 재료 내보내기"
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:72
msgctxt "@title"
msgid "Information"
@@ -4507,7 +4735,8 @@ msgctxt "@label"
msgid "Adhesion Information"
msgstr "접착 정보"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:374 /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/PrintSetupSelector.qml:19
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:374
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/PrintSetupSelector.qml:19
msgctxt "@label"
msgid "Print settings"
msgstr "프린팅 설정"
@@ -4532,52 +4761,53 @@ msgctxt "@info"
msgid "Please provide a name for this profile."
msgstr "이 프로파일에 대한 이름을 제공하십시오."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:260
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:263
msgctxt "@title:window"
msgid "Duplicate Profile"
msgstr "프로파일 복제하기"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:291
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:294
msgctxt "@title:window"
msgid "Rename Profile"
msgstr "프로파일 이름 바꾸기"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:304
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:307
msgctxt "@title:window"
msgid "Import Profile"
msgstr "프로파일 가져 오기"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:333
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:336
msgctxt "@title:window"
msgid "Export Profile"
msgstr "프로파일 내보내기"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:396
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:399
msgctxt "@label %1 is printer name"
msgid "Printer: %1"
msgstr "프린터: %1"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:554
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:557
msgctxt "@action:button"
msgid "Update profile with current settings/overrides"
msgstr "현재 설정 / 재정의 프로파일 업데이트"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:561 /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Custom/QualitiesWithIntentMenu.qml:244
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:564
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Custom/QualitiesWithIntentMenu.qml:244
msgctxt "@action:button"
msgid "Discard current changes"
msgstr "현재 변경 사항 삭제"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:580
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:583
msgctxt "@action:label"
msgid "This profile uses the defaults specified by the printer, so it has no settings/overrides in the list below."
msgstr "이 프로파일은 프린터에서 지정한 기본값을 사용하므로 아래 목록에 아무런 설정/재정의가 없습니다."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:588
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:591
msgctxt "@action:label"
msgid "Your current settings match the selected profile."
msgstr "현재 설정이 선택한 프로파일과 일치합니다."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:606
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:609
msgctxt "@title:tab"
msgid "Global Settings"
msgstr "전역 설정"
@@ -4607,12 +4837,12 @@ msgctxt "@title:column"
msgid "Unit"
msgstr "단위"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:14
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:16
msgctxt "@title:tab"
msgid "Setting Visibility"
msgstr "보기 설정"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:46
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:48
msgctxt "@label:textbox"
msgid "Check all"
msgstr "모두 확인"
@@ -4637,12 +4867,14 @@ msgctxt "@tooltip of temperature input"
msgid "The temperature to pre-heat the hotend to."
msgstr "노즐을 예열하기 위한 온도."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:341 /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:332
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:341
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:332
msgctxt "@button Cancel pre-heating"
msgid "Cancel"
msgstr "취소"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:344 /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:335
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:344
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:335
msgctxt "@button"
msgid "Pre-heat"
msgstr "예열"
@@ -4947,27 +5179,27 @@ msgctxt "@label:textbox"
msgid "Search settings"
msgstr "검색 설정"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:456
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:468
msgctxt "@action:menu"
msgid "Copy value to all extruders"
msgstr "모든 익스트루더에 값 복사"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:465
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:477
msgctxt "@action:menu"
msgid "Copy all changed values to all extruders"
msgstr "변경된 사항을 모든 익스트루더에 복사"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:502
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:514
msgctxt "@action:menu"
msgid "Hide this setting"
msgstr "이 설정 숨기기"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:515
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:527
msgctxt "@action:menu"
msgid "Don't show this setting"
msgstr "이 설정을 표시하지 않음"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:519
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:531
msgctxt "@action:menu"
msgid "Keep this setting visible"
msgstr "이 설정을 계속 표시하십시오"
@@ -5027,11 +5259,6 @@ msgctxt "@button"
msgid "Add printer manually"
msgstr "수동으로 프린터 추가"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddCloudPrintersView.qml:218
-msgctxt "@button"
-msgid "Finish"
-msgstr "종료"
-
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddLocalPrinterScrollView.qml:230
msgctxt "@label"
msgid "Manufacturer"
@@ -5112,7 +5339,8 @@ msgctxt "@label"
msgid "Could not connect to device."
msgstr "장치에 연결할 수 없습니다."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:207 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:212
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:207
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:212
msgctxt "@label"
msgid "Can't connect to your Ultimaker printer?"
msgstr "Ultimaker 프린터로 연결할 수 없습니까?"
@@ -5137,32 +5365,32 @@ msgctxt "@button"
msgid "Connect"
msgstr "연결"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:43
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/ChangelogContent.qml:24
msgctxt "@label"
-msgid "Ultimaker Account"
-msgstr "Ultimaker 계정"
+msgid "Release Notes"
+msgstr "릴리즈 노트"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:84
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:124
msgctxt "@text"
-msgid "Your key to connected 3D printing"
-msgstr "연결된 3D 프린팅의 핵심"
+msgid "Add material settings and plugins from the Marketplace"
+msgstr "재료 설정 및 Marketplace 플러그인 추가"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:101
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:154
msgctxt "@text"
-msgid "- Customize your experience with more print profiles and plugins"
-msgstr "- 보다 많은 프린트 프로파일과 플러그인으로 자신에게 맞게 환경 조정"
+msgid "Backup and sync your material settings and plugins"
+msgstr "재료 설정과 플러그인 백업 및 동기화"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:104
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:184
msgctxt "@text"
-msgid "- Stay flexible by syncing your setup and loading it anywhere"
-msgstr "- 어디서든지 유연하게 설정을 동기화하고 로딩"
+msgid "Share ideas and get help from 48,000+ users in the Ultimaker Community"
+msgstr "Ultimaker 커뮤니티에서 48,000명 이상의 사용자와 아이디어를 공유하고 도움 받기"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:107
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:217
msgctxt "@text"
-msgid "- Increase efficiency with a remote workflow on Ultimaker printers"
-msgstr "- Ultimaker 프린터에서 원격 워크플로로 효율성 증대"
+msgid "Create a free Ultimaker Account"
+msgstr "Ultimaker 계정 무료 생성"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:157
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:230
msgctxt "@button"
msgid "Skip"
msgstr "건너뛰기"
@@ -5222,27 +5450,30 @@ msgctxt "@button"
msgid "Decline and close"
msgstr "거절 및 닫기"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:29
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:56
msgctxt "@label"
msgid "Welcome to Ultimaker Cura"
msgstr "Ultimaker Cura에 오신 것을 환영합니다"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:47
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:68
msgctxt "@text"
-msgid ""
-"Please follow these steps to set up\n"
-"Ultimaker Cura. This will only take a few moments."
-msgstr "Ultimaker Cura를 설정하려면 다음 단계를 따르십시오. 오래 걸리지 않습니다."
+msgid "Please follow these steps to set up Ultimaker Cura. This will only take a few moments."
+msgstr "Ultimaker Cura를 설정하려면 다음 단계로 이동하세요. 오래 걸리지 않습니다."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:58
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:86
msgctxt "@button"
msgid "Get started"
msgstr "시작하기"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:24
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:28
msgctxt "@label"
-msgid "What's new in Ultimaker Cura"
-msgstr "Ultimaker Cura의 새로운 기능"
+msgid "What's New"
+msgstr "새로운 기능"
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Widgets/ComboBox.qml:24
+msgctxt "@label"
+msgid "No items to select from"
+msgstr "선택할 항목 없음"
#: ModelChecker/plugin.json
msgctxt "description"
@@ -5324,6 +5555,16 @@ msgctxt "name"
msgid "Cura Profile Writer"
msgstr "Cura 프로파일 작성자"
+#: DigitalLibrary/plugin.json
+msgctxt "description"
+msgid "Connects to the Digital Library, allowing Cura to open files from and save files to the Digital Library."
+msgstr "디지털 라이브러리와 연결하여 Cura에서 디지털 라이브러리를 통해 파일을 열고 저장할 수 있도록 합니다."
+
+#: DigitalLibrary/plugin.json
+msgctxt "name"
+msgid "Ultimaker Digital Library"
+msgstr "Ultimaker 디지털 라이브러리"
+
#: FirmwareUpdateChecker/plugin.json
msgctxt "description"
msgid "Checks for firmware updates."
@@ -5794,6 +6035,26 @@ msgctxt "name"
msgid "Version Upgrade 4.7 to 4.8"
msgstr "4.7에서 4.8로 버전 업그레이드"
+#: VersionUpgrade/VersionUpgrade48to49/plugin.json
+msgctxt "description"
+msgid "Upgrades configurations from Cura 4.8 to Cura 4.9."
+msgstr "Cura 4.8에서 Cura 4.9로 구성을 업그레이드합니다."
+
+#: VersionUpgrade/VersionUpgrade48to49/plugin.json
+msgctxt "name"
+msgid "Version Upgrade 4.8 to 4.9"
+msgstr "4.8에서 4.9로 버전 업그레이드"
+
+#: VersionUpgrade/VersionUpgrade49to410/plugin.json
+msgctxt "description"
+msgid "Upgrades configurations from Cura 4.9 to Cura 4.10."
+msgstr "Cura 4.9에서 Cura 4.10으로 구성을 업그레이드합니다."
+
+#: VersionUpgrade/VersionUpgrade49to410/plugin.json
+msgctxt "name"
+msgid "Version Upgrade 4.9 to 4.10"
+msgstr "4.9에서 4.10으로 버전 업그레이드"
+
#: X3DReader/plugin.json
msgctxt "description"
msgid "Provides support for reading X3D files."
@@ -5824,6 +6085,89 @@ msgctxt "name"
msgid "X-Ray View"
msgstr "엑스레이 뷰"
+#~ msgctxt "@info:status"
+#~ msgid "Global stack is missing."
+#~ msgstr "전체 스택이 누락되었습니다."
+
+#~ msgctxt "@info:status"
+#~ msgid "Your model is not manifold. The highlighted areas indicate either missing or extraneous surfaces."
+#~ msgstr "매니폴드 모델이 아닙니다. 강조 표시된 영역은 누락되거나 관련 없는 표면을 표시합니다."
+
+#~ msgctxt "@info:title"
+#~ msgid "Model errors"
+#~ msgstr "모델 오류"
+
+#~ msgctxt "@label:listbox"
+#~ msgid "Layer thickness"
+#~ msgstr "레이어 두께"
+
+#~ msgctxt "@label"
+#~ msgid "Your key to connected 3D printing"
+#~ msgstr "연결된 3D 프린팅의 핵심"
+
+#~ msgctxt "@text"
+#~ msgid ""
+#~ "- Customize your experience with more print profiles and plugins\n"
+#~ "- Stay flexible by syncing your setup and loading it anywhere\n"
+#~ "- Increase efficiency with a remote workflow on Ultimaker printers"
+#~ msgstr ""
+#~ "- 보다 많은 프린트 프로파일과 플러그인으로 자신에게 맞게 환경 조정\n"
+#~ "- 어디서든지 유연하게 설정을 동기화하고 로딩\n"
+#~ "- Ultimaker 프린터에서 원격 워크플로로 효율성 증대"
+
+#~ msgctxt "@button"
+#~ msgid "Create account"
+#~ msgstr "계정 생성"
+
+#~ msgctxt "@action:inmenu menubar:edit"
+#~ msgid "Delete Selected Model"
+#~ msgid_plural "Delete Selected Models"
+#~ msgstr[0] "선택한 모델 삭제"
+
+#~ msgctxt "@action:inmenu menubar:edit"
+#~ msgid "Center Selected Model"
+#~ msgid_plural "Center Selected Models"
+#~ msgstr[0] "선택한 모델 중심에 놓기"
+
+#~ msgctxt "@action:inmenu menubar:edit"
+#~ msgid "Multiply Selected Model"
+#~ msgid_plural "Multiply Selected Models"
+#~ msgstr[0] "선택한 모델 복제"
+
+#~ msgctxt "@button"
+#~ msgid "Finish"
+#~ msgstr "종료"
+
+#~ msgctxt "@label"
+#~ msgid "Ultimaker Account"
+#~ msgstr "Ultimaker 계정"
+
+#~ msgctxt "@text"
+#~ msgid "Your key to connected 3D printing"
+#~ msgstr "연결된 3D 프린팅의 핵심"
+
+#~ msgctxt "@text"
+#~ msgid "- Customize your experience with more print profiles and plugins"
+#~ msgstr "- 보다 많은 프린트 프로파일과 플러그인으로 자신에게 맞게 환경 조정"
+
+#~ msgctxt "@text"
+#~ msgid "- Stay flexible by syncing your setup and loading it anywhere"
+#~ msgstr "- 어디서든지 유연하게 설정을 동기화하고 로딩"
+
+#~ msgctxt "@text"
+#~ msgid "- Increase efficiency with a remote workflow on Ultimaker printers"
+#~ msgstr "- Ultimaker 프린터에서 원격 워크플로로 효율성 증대"
+
+#~ msgctxt "@text"
+#~ msgid ""
+#~ "Please follow these steps to set up\n"
+#~ "Ultimaker Cura. This will only take a few moments."
+#~ msgstr "Ultimaker Cura를 설정하려면 다음 단계를 따르십시오. 오래 걸리지 않습니다."
+
+#~ msgctxt "@label"
+#~ msgid "What's new in Ultimaker Cura"
+#~ msgstr "Ultimaker Cura의 새로운 기능"
+
#~ msgctxt "@label ({} is object name)"
#~ msgid "Are you sure you wish to remove {}? This cannot be undone!"
#~ msgstr "정말로 {}을(를) 제거하시겠습니까? 이 작업을 실행 취소할 수 없습니다."
diff --git a/resources/i18n/ko_KR/fdmextruder.def.json.po b/resources/i18n/ko_KR/fdmextruder.def.json.po
index 998fdb283d..2aecfbb7e3 100644
--- a/resources/i18n/ko_KR/fdmextruder.def.json.po
+++ b/resources/i18n/ko_KR/fdmextruder.def.json.po
@@ -1,13 +1,13 @@
# Cura
-# Copyright (C) 2020 Ultimaker B.V.
+# Copyright (C) 2021 Ultimaker B.V.
# This file is distributed under the same license as the Cura package.
#
msgid ""
msgstr ""
-"Project-Id-Version: Cura 4.8\n"
+"Project-Id-Version: Cura 4.10\n"
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
-"POT-Creation-Date: 2020-10-19 13:15+0000\n"
-"PO-Revision-Date: 2019-03-13 14:00+0200\n"
+"POT-Creation-Date: 2021-06-10 17:35+0000\n"
+"PO-Revision-Date: 2021-04-16 15:01+0200\n"
"Last-Translator: Korean \n"
"Language-Team: Jinbum Kim , Korean \n"
"Language: ko_KR\n"
@@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Poedit 2.0.6\n"
+"X-Generator: Poedit 2.4.1\n"
#: fdmextruder.def.json
msgctxt "machine_settings label"
diff --git a/resources/i18n/ko_KR/fdmprinter.def.json.po b/resources/i18n/ko_KR/fdmprinter.def.json.po
index 98f6f04593..949880ce6c 100644
--- a/resources/i18n/ko_KR/fdmprinter.def.json.po
+++ b/resources/i18n/ko_KR/fdmprinter.def.json.po
@@ -1,13 +1,13 @@
# Cura
-# Copyright (C) 2020 Ultimaker B.V.
+# Copyright (C) 2021 Ultimaker B.V.
# This file is distributed under the same license as the Cura package.
#
msgid ""
msgstr ""
-"Project-Id-Version: Cura 4.8\n"
+"Project-Id-Version: Cura 4.10\n"
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
-"POT-Creation-Date: 2020-10-19 13:15+0000\n"
-"PO-Revision-Date: 2020-08-21 13:40+0200\n"
+"POT-Creation-Date: 2021-06-10 17:35+0000\n"
+"PO-Revision-Date: 2021-04-16 15:02+0200\n"
"Last-Translator: Lionbridge \n"
"Language-Team: Korean , Jinbum Kim , Korean \n"
"Language: ko_KR\n"
@@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Poedit 2.3\n"
+"X-Generator: Poedit 2.4.1\n"
#: fdmprinter.def.json
msgctxt "machine_settings label"
@@ -420,6 +420,26 @@ msgctxt "machine_extruders_share_heater description"
msgid "Whether the extruders share a single heater rather than each extruder having its own heater."
msgstr "압출기가 자체 히터를 가지고 있지 않고 단일 히터를 공유하는지에 대한 여부."
+#: fdmprinter.def.json
+msgctxt "machine_extruders_share_nozzle label"
+msgid "Extruders Share Nozzle"
+msgstr "익스트루더의 노즐 공유"
+
+#: fdmprinter.def.json
+msgctxt "machine_extruders_share_nozzle description"
+msgid "Whether the extruders share a single nozzle rather than each extruder having its own nozzle. When set to true, it is expected that the printer-start gcode script properly sets up all extruders in an initial retraction state that is known and mutually compatible (either zero or one filament not retracted); in that case the initial retraction status is described, per extruder, by the 'machine_extruders_shared_nozzle_initial_retraction' parameter."
+msgstr "익스트루더가 자체 노즐을 가지고 있지 않고 단일 노즐을 공유하는지에 대한 여부. True로 설정하면 프린터 시동 gcode 스크립트가 알려진 상호 호환 가능한 초기 수축 상태(0 또는 1개의 필라멘트가 수축되지 않음)에서 모든 익스트루더를 적절하게 설정해야 합니다. 이 경우 초기 수축 상태는 'machine_extruders_shared_nozzle_initial_retraction' 매개 변수에 의해 익스트루더마다 표시됩니다."
+
+#: fdmprinter.def.json
+msgctxt "machine_extruders_shared_nozzle_initial_retraction label"
+msgid "Shared Nozzle Initial Retraction"
+msgstr "공유된 노즐 초기 수축"
+
+#: fdmprinter.def.json
+msgctxt "machine_extruders_shared_nozzle_initial_retraction description"
+msgid "How much the filament of each extruder is assumed to have been retracted from the shared nozzle tip at the completion of the printer-start gcode script; the value should be equal to or greater than the length of the common part of the nozzle's ducts."
+msgstr "프린터 시작 gcode 스크립트가 완료될 때 공유된 노즐 끝에서 각 익스트루더의 필라멘트가 수축된 것으로 가정하는 정도입니다. 이 값은 노즐 덕트의 공통 부분의 길이와 같거나 커야 합니다."
+
#: fdmprinter.def.json
msgctxt "machine_disallowed_areas label"
msgid "Disallowed Areas"
@@ -487,8 +507,8 @@ msgstr "익스트루더로 오프셋"
#: fdmprinter.def.json
msgctxt "machine_use_extruder_offset_to_offset_coords description"
-msgid "Apply the extruder offset to the coordinate system."
-msgstr "익스트루더 오프셋을 좌표계에 적용하십시오."
+msgid "Apply the extruder offset to the coordinate system. Affects all extruders."
+msgstr "익스트루더 오프셋을 좌표계에 적용하십시오. 모든 익스트루더에 적용됩니다."
#: fdmprinter.def.json
msgctxt "extruder_prime_pos_z label"
@@ -882,8 +902,8 @@ msgstr "첫 번째 레이어의 라인 폭 승수입니다. 이것을 늘리면
#: fdmprinter.def.json
msgctxt "shell label"
-msgid "Shell"
-msgstr "외곽"
+msgid "Walls"
+msgstr "벽"
#: fdmprinter.def.json
msgctxt "shell description"
@@ -950,166 +970,6 @@ msgctxt "wall_0_wipe_dist description"
msgid "Distance of a travel move inserted after the outer wall, to hide the Z seam better."
msgstr "Z 층의 경계면을 더 잘 가리기 위해 바깥쪽 벽 뒤에 삽입되어 이동한 거리."
-#: fdmprinter.def.json
-msgctxt "roofing_extruder_nr label"
-msgid "Top Surface Skin Extruder"
-msgstr "상단 표면 익스트루더"
-
-#: fdmprinter.def.json
-msgctxt "roofing_extruder_nr description"
-msgid "The extruder train used for printing the top most skin. This is used in multi-extrusion."
-msgstr "익스트루더는 최상층을 프린팅하는 데 사용됩니다. 이것은 다중 압출에 사용됩니다."
-
-#: fdmprinter.def.json
-msgctxt "roofing_layer_count label"
-msgid "Top Surface Skin Layers"
-msgstr "상단 표면 스킨 레이어"
-
-#: fdmprinter.def.json
-msgctxt "roofing_layer_count description"
-msgid "The number of top most skin layers. Usually only one top most layer is sufficient to generate higher quality top surfaces."
-msgstr "최상층의 스킨 층의 수. 일반적으로 고품질의 표면을 생성하기 위해 맨위의 레이어 하나만 있으면 충분합니다."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_extruder_nr label"
-msgid "Top/Bottom Extruder"
-msgstr "상단/하단 익스트루더"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_extruder_nr description"
-msgid "The extruder train used for printing the top and bottom skin. This is used in multi-extrusion."
-msgstr "상단 및 하단 스킨 프린팅에 사용되는 익스트루더. 이것은 다중 압출에 사용됩니다."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_thickness label"
-msgid "Top/Bottom Thickness"
-msgstr "상단/하단 두께"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_thickness description"
-msgid "The thickness of the top/bottom layers in the print. This value divided by the layer height defines the number of top/bottom layers."
-msgstr "출력물의 상단/하단 레이어의 두께. 이 값을 레이어 높이로 나눈 값은 위쪽/아래쪽 레이어의 수 입니다."
-
-#: fdmprinter.def.json
-msgctxt "top_thickness label"
-msgid "Top Thickness"
-msgstr "상단 두께"
-
-#: fdmprinter.def.json
-msgctxt "top_thickness description"
-msgid "The thickness of the top layers in the print. This value divided by the layer height defines the number of top layers."
-msgstr "출력물의 상단 레이어의 두께. 이 값을 레이어 높이로 나눈 값이 최상위 레이어 수 입니다."
-
-#: fdmprinter.def.json
-msgctxt "top_layers label"
-msgid "Top Layers"
-msgstr "상단 레이어"
-
-#: fdmprinter.def.json
-msgctxt "top_layers description"
-msgid "The number of top layers. When calculated by the top thickness, this value is rounded to a whole number."
-msgstr "출력물의 상단 레이어의 수. 상단 두깨로 계산을 할때 이 값은 벽 두께로 계산할 때 이 값은 반올림됩니다."
-
-#: fdmprinter.def.json
-msgctxt "bottom_thickness label"
-msgid "Bottom Thickness"
-msgstr "바닥 두께"
-
-#: fdmprinter.def.json
-msgctxt "bottom_thickness description"
-msgid "The thickness of the bottom layers in the print. This value divided by the layer height defines the number of bottom layers."
-msgstr "출력물의 아래쪽 레이어의 두께. 이 값을 레이어 높이로 나눈 값은 맨 아래 레이어의 수 입니다."
-
-#: fdmprinter.def.json
-msgctxt "bottom_layers label"
-msgid "Bottom Layers"
-msgstr "하단 레이어"
-
-#: fdmprinter.def.json
-msgctxt "bottom_layers description"
-msgid "The number of bottom layers. When calculated by the bottom thickness, this value is rounded to a whole number."
-msgstr "아래층의 수. 바닥 두께로 계산을 할때 이 값은 벽 두께로 계산할 때 이 값은 반올림됩니다."
-
-#: fdmprinter.def.json
-msgctxt "initial_bottom_layers label"
-msgid "Initial Bottom Layers"
-msgstr "초기 하단 레이어"
-
-#: fdmprinter.def.json
-msgctxt "initial_bottom_layers description"
-msgid "The number of initial bottom layers, from the build-plate upwards. When calculated by the bottom thickness, this value is rounded to a whole number."
-msgstr "빌드 플레이트에서 위를 향하는 초기 하단 레이어 수. 하단 두께로 계산할 경우, 이 값이 전체 값으로 반올림됩니다."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern label"
-msgid "Top/Bottom Pattern"
-msgstr "상단/하단 패턴"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern description"
-msgid "The pattern of the top/bottom layers."
-msgstr "상단/하단 레이어의 패턴."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern option lines"
-msgid "Lines"
-msgstr "라인"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern option concentric"
-msgid "Concentric"
-msgstr "동심원 형태"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern option zigzag"
-msgid "Zig Zag"
-msgstr "지그재그"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 label"
-msgid "Bottom Pattern Initial Layer"
-msgstr "하단 패턴 초기 레이어"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 description"
-msgid "The pattern on the bottom of the print on the first layer."
-msgstr "첫 번째 레이어의 프린팅 아래쪽에 있는 패턴입니다."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 option lines"
-msgid "Lines"
-msgstr "윤곽"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 option concentric"
-msgid "Concentric"
-msgstr "동심원의"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 option zigzag"
-msgid "Zig Zag"
-msgstr "지그재그"
-
-#: fdmprinter.def.json
-msgctxt "connect_skin_polygons label"
-msgid "Connect Top/Bottom Polygons"
-msgstr "상단/하단 다각형 연결"
-
-#: fdmprinter.def.json
-msgctxt "connect_skin_polygons description"
-msgid "Connect top/bottom skin paths where they run next to each other. For the concentric pattern enabling this setting greatly reduces the travel time, but because the connections can happen midway over infill this feature can reduce the top surface quality."
-msgstr "스킨 경로가 나란히 이어지는 상단/하단 스킨 경로를 연결합니다. 동심원 패턴의 경우 이 설정을 사용하면 이동 시간이 크게 감소하지만, 내부채움의 중간에 연결될 수 있기 때문에 이 기능은 상단 표면 품질을 저하시킬 수 있습니다."
-
-#: fdmprinter.def.json
-msgctxt "skin_angles label"
-msgid "Top/Bottom Line Directions"
-msgstr "상단/하단 라인 길 방향"
-
-#: fdmprinter.def.json
-msgctxt "skin_angles description"
-msgid "A list of integer line directions to use when the top/bottom layers use the lines or zig zag pattern. Elements from the list are used sequentially as the layers progress and when the end of the list is reached, it starts at the beginning again. The list items are separated by commas and the whole list is contained in square brackets. Default is an empty list which means use the traditional default angles (45 and 135 degrees)."
-msgstr "상단/하단 레이어가 선 또는 지그재그 패턴을 사용할 때 사용할 방향 리스트입니다. 리스트의 요소는 레이어가 진행됨에 따라 순차적으로 사용되며 리스트의 끝에 도달하면 처음부터 다시 시작됩니다. 리스트 항목은 쉼표로 구분되며 전체 리스트는 대괄호 안에 들어 있습니다. 기본값은 빈 목록이고, 기본 각도(45도 및 135도)를 사용합니다."
-
#: fdmprinter.def.json
msgctxt "wall_0_inset label"
msgid "Outer Wall Inset"
@@ -1415,6 +1275,176 @@ msgctxt "z_seam_relative description"
msgid "When enabled, the z seam coordinates are relative to each part's centre. When disabled, the coordinates define an absolute position on the build plate."
msgstr "활성화 된 경우 z 솔기 좌표는 각 부품의 중심을 기준으로합니다. 비활성화 된 경우 좌표는 빌드 플레이트의 절대 위치를 정의합니다."
+#: fdmprinter.def.json
+msgctxt "top_bottom label"
+msgid "Top/Bottom"
+msgstr "위 / 아래"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom description"
+msgid "Top/Bottom"
+msgstr "위 / 아래"
+
+#: fdmprinter.def.json
+msgctxt "roofing_extruder_nr label"
+msgid "Top Surface Skin Extruder"
+msgstr "상단 표면 익스트루더"
+
+#: fdmprinter.def.json
+msgctxt "roofing_extruder_nr description"
+msgid "The extruder train used for printing the top most skin. This is used in multi-extrusion."
+msgstr "익스트루더는 최상층을 프린팅하는 데 사용됩니다. 이것은 다중 압출에 사용됩니다."
+
+#: fdmprinter.def.json
+msgctxt "roofing_layer_count label"
+msgid "Top Surface Skin Layers"
+msgstr "상단 표면 스킨 레이어"
+
+#: fdmprinter.def.json
+msgctxt "roofing_layer_count description"
+msgid "The number of top most skin layers. Usually only one top most layer is sufficient to generate higher quality top surfaces."
+msgstr "최상층의 스킨 층의 수. 일반적으로 고품질의 표면을 생성하기 위해 맨위의 레이어 하나만 있으면 충분합니다."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_extruder_nr label"
+msgid "Top/Bottom Extruder"
+msgstr "상단/하단 익스트루더"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_extruder_nr description"
+msgid "The extruder train used for printing the top and bottom skin. This is used in multi-extrusion."
+msgstr "상단 및 하단 스킨 프린팅에 사용되는 익스트루더. 이것은 다중 압출에 사용됩니다."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_thickness label"
+msgid "Top/Bottom Thickness"
+msgstr "상단/하단 두께"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_thickness description"
+msgid "The thickness of the top/bottom layers in the print. This value divided by the layer height defines the number of top/bottom layers."
+msgstr "출력물의 상단/하단 레이어의 두께. 이 값을 레이어 높이로 나눈 값은 위쪽/아래쪽 레이어의 수 입니다."
+
+#: fdmprinter.def.json
+msgctxt "top_thickness label"
+msgid "Top Thickness"
+msgstr "상단 두께"
+
+#: fdmprinter.def.json
+msgctxt "top_thickness description"
+msgid "The thickness of the top layers in the print. This value divided by the layer height defines the number of top layers."
+msgstr "출력물의 상단 레이어의 두께. 이 값을 레이어 높이로 나눈 값이 최상위 레이어 수 입니다."
+
+#: fdmprinter.def.json
+msgctxt "top_layers label"
+msgid "Top Layers"
+msgstr "상단 레이어"
+
+#: fdmprinter.def.json
+msgctxt "top_layers description"
+msgid "The number of top layers. When calculated by the top thickness, this value is rounded to a whole number."
+msgstr "출력물의 상단 레이어의 수. 상단 두깨로 계산을 할때 이 값은 벽 두께로 계산할 때 이 값은 반올림됩니다."
+
+#: fdmprinter.def.json
+msgctxt "bottom_thickness label"
+msgid "Bottom Thickness"
+msgstr "바닥 두께"
+
+#: fdmprinter.def.json
+msgctxt "bottom_thickness description"
+msgid "The thickness of the bottom layers in the print. This value divided by the layer height defines the number of bottom layers."
+msgstr "출력물의 아래쪽 레이어의 두께. 이 값을 레이어 높이로 나눈 값은 맨 아래 레이어의 수 입니다."
+
+#: fdmprinter.def.json
+msgctxt "bottom_layers label"
+msgid "Bottom Layers"
+msgstr "하단 레이어"
+
+#: fdmprinter.def.json
+msgctxt "bottom_layers description"
+msgid "The number of bottom layers. When calculated by the bottom thickness, this value is rounded to a whole number."
+msgstr "아래층의 수. 바닥 두께로 계산을 할때 이 값은 벽 두께로 계산할 때 이 값은 반올림됩니다."
+
+#: fdmprinter.def.json
+msgctxt "initial_bottom_layers label"
+msgid "Initial Bottom Layers"
+msgstr "초기 하단 레이어"
+
+#: fdmprinter.def.json
+msgctxt "initial_bottom_layers description"
+msgid "The number of initial bottom layers, from the build-plate upwards. When calculated by the bottom thickness, this value is rounded to a whole number."
+msgstr "빌드 플레이트에서 위를 향하는 초기 하단 레이어 수. 하단 두께로 계산할 경우, 이 값이 전체 값으로 반올림됩니다."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern label"
+msgid "Top/Bottom Pattern"
+msgstr "상단/하단 패턴"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern description"
+msgid "The pattern of the top/bottom layers."
+msgstr "상단/하단 레이어의 패턴."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern option lines"
+msgid "Lines"
+msgstr "라인"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern option concentric"
+msgid "Concentric"
+msgstr "동심원 형태"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern option zigzag"
+msgid "Zig Zag"
+msgstr "지그재그"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 label"
+msgid "Bottom Pattern Initial Layer"
+msgstr "하단 패턴 초기 레이어"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 description"
+msgid "The pattern on the bottom of the print on the first layer."
+msgstr "첫 번째 레이어의 프린팅 아래쪽에 있는 패턴입니다."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 option lines"
+msgid "Lines"
+msgstr "윤곽"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 option concentric"
+msgid "Concentric"
+msgstr "동심원의"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 option zigzag"
+msgid "Zig Zag"
+msgstr "지그재그"
+
+#: fdmprinter.def.json
+msgctxt "connect_skin_polygons label"
+msgid "Connect Top/Bottom Polygons"
+msgstr "상단/하단 다각형 연결"
+
+#: fdmprinter.def.json
+msgctxt "connect_skin_polygons description"
+msgid "Connect top/bottom skin paths where they run next to each other. For the concentric pattern enabling this setting greatly reduces the travel time, but because the connections can happen midway over infill this feature can reduce the top surface quality."
+msgstr "스킨 경로가 나란히 이어지는 상단/하단 스킨 경로를 연결합니다. 동심원 패턴의 경우 이 설정을 사용하면 이동 시간이 크게 감소하지만, 내부채움의 중간에 연결될 수 있기 때문에 이 기능은 상단 표면 품질을 저하시킬 수 있습니다."
+
+#: fdmprinter.def.json
+msgctxt "skin_angles label"
+msgid "Top/Bottom Line Directions"
+msgstr "상단/하단 라인 길 방향"
+
+#: fdmprinter.def.json
+msgctxt "skin_angles description"
+msgid "A list of integer line directions to use when the top/bottom layers use the lines or zig zag pattern. Elements from the list are used sequentially as the layers progress and when the end of the list is reached, it starts at the beginning again. The list items are separated by commas and the whole list is contained in square brackets. Default is an empty list which means use the traditional default angles (45 and 135 degrees)."
+msgstr "상단/하단 레이어가 선 또는 지그재그 패턴을 사용할 때 사용할 방향 리스트입니다. 리스트의 요소는 레이어가 진행됨에 따라 순차적으로 사용되며 리스트의 끝에 도달하면 처음부터 다시 시작됩니다. 리스트 항목은 쉼표로 구분되며 전체 리스트는 대괄호 안에 들어 있습니다. 기본값은 빈 목록이고, 기본 각도(45도 및 135도)를 사용합니다."
+
#: fdmprinter.def.json
msgctxt "skin_no_small_gaps_heuristic label"
msgid "No Skin in Z Gaps"
@@ -1555,6 +1585,86 @@ msgctxt "skin_overlap_mm description"
msgid "Adjust the amount of overlap between the walls and (the endpoints of) the skin-centerlines. A slight overlap allows the walls to connect firmly to the skin. Note that, given an equal skin and wall line-width, any value over half the width of the wall may already cause any skin to go past the wall, because at that point the position of the nozzle of the skin-extruder may already reach past the middle of the wall."
msgstr "벽과 스킨-센터라인(종점) 사이의 겹침 양을 조정하십시오. 약간의 겹침으로 벽이 스킨에 확실하게 연결될 수 있습니다. 동일한 스킨 및 벽 라인-폭을 고려할 때 값이 벽 폭의 절반을 넘는다면, 그 지점에서 스킨-익스트루더의 노즐 위치가 이미 벽 중앙을 지나 도달할 수 있기 때문에 이미 스킨이 벽을 지나치고 있을 수 있습니다."
+#: fdmprinter.def.json
+msgctxt "skin_preshrink label"
+msgid "Skin Removal Width"
+msgstr "스킨 제거 폭"
+
+#: fdmprinter.def.json
+msgctxt "skin_preshrink description"
+msgid "The largest width of skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top/bottom skin at slanted surfaces in the model."
+msgstr "제거 할 외부스킨 영역의 가장 큰 너비. 이 값보다 작은 모든 스킨 영역은 사라집니다. 이렇게하면 모델의 경사면에서 위쪽 / 아래쪽 스킨을 프린팅하는 데 소요되는 시간과 재료의 양을 제한하는 데 도움이 됩니다."
+
+#: fdmprinter.def.json
+msgctxt "top_skin_preshrink label"
+msgid "Top Skin Removal Width"
+msgstr "상단 스킨 제거 폭"
+
+#: fdmprinter.def.json
+msgctxt "top_skin_preshrink description"
+msgid "The largest width of top skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top skin at slanted surfaces in the model."
+msgstr "제거 할 상단 스킨 영역의 가장 큰 너비. 이 값보다 작은 모든 스킨 영역은 사라집니다. 이렇게 하면 모델의 경사면에서 상단 스킨을 프린팅하는 데 소요되는 시간과 재료의 양을 제한하는 데 도움이됩니다."
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_preshrink label"
+msgid "Bottom Skin Removal Width"
+msgstr "밑면 스킨 제거 폭"
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_preshrink description"
+msgid "The largest width of bottom skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing bottom skin at slanted surfaces in the model."
+msgstr "제거 할 바닥 스킨 영역의 최대 너비. 이 값보다 작은 모든 스킨 영역은 사라집니다. 이렇게하면 모델의 경사면에서 밑면 스킨을 프린팅하는 데 소요되는 시간과 재료의 양을 제한하는 데 도움이됩니다."
+
+#: fdmprinter.def.json
+msgctxt "expand_skins_expand_distance label"
+msgid "Skin Expand Distance"
+msgstr "스킨 확장 거리"
+
+#: fdmprinter.def.json
+msgctxt "expand_skins_expand_distance description"
+msgid "The distance the skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on neighboring layers adhere better to the skin. Lower values save amount of material used."
+msgstr "스킨이 내부채움으로 확장되는 거리입니다. 값이 높을수록 스킨이 내부채움 패턴에 더 잘 부착되고 인접 레이어의 벽이 스킨에 잘 밀착됩니다. 값이 낮을수록 사용 될 재료의 양이 절약됩니다."
+
+#: fdmprinter.def.json
+msgctxt "top_skin_expand_distance label"
+msgid "Top Skin Expand Distance"
+msgstr "윗면 스킨 확장 거리"
+
+#: fdmprinter.def.json
+msgctxt "top_skin_expand_distance description"
+msgid "The distance the top skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on the layer above adhere better to the skin. Lower values save amount of material used."
+msgstr "상단 스킨의 거리가 내부채움으로 확장됩니다. 값이 높을수록 스킨이 내부채움 패턴에 더 잘 부착되며 위 레이어의 벽이 스킨에 잘 밀착됩니다. 값이 낮을수록 사용 된 재료의 양이 절약됩니다."
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_expand_distance label"
+msgid "Bottom Skin Expand Distance"
+msgstr "밑면 스킨 확장 거리"
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_expand_distance description"
+msgid "The distance the bottom skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the skin adhere better to the walls on the layer below. Lower values save amount of material used."
+msgstr "바닥 스킨의 거리가 내부채움으로 확장됩니다. 값이 높을수록 스킨가 내부채움 패턴에 더 잘 붙어 스킨가 아래 층의 벽에 잘 밀착됩니다. 값이 낮을수록 사용 된 재료의 양이 절약됩니다."
+
+#: fdmprinter.def.json
+msgctxt "max_skin_angle_for_expansion label"
+msgid "Maximum Skin Angle for Expansion"
+msgstr "확장을 위한 최대 스킨 각"
+
+#: fdmprinter.def.json
+msgctxt "max_skin_angle_for_expansion description"
+msgid "Top and/or bottom surfaces of your object with an angle larger than this setting, won't have their top/bottom skin expanded. This avoids expanding the narrow skin areas that are created when the model surface has a near vertical slope. An angle of 0° is horizontal and will cause no skin to be expanded, while an angle of 90° is vertical and will cause all skin to be expanded."
+msgstr "이 설정보다 큰 각도로 객체의 상단 및 또는 하단 표면은 위쪽/아래쪽 스킨이 확장되지 않습니다. 이렇게하면 모델 표면이 수직 경사가 거의 없을 때 생성되는 좁은 스킨 영역을 확장하지 않아도됩니다. 0도의 각도는 수평이며 스킨의 확장을 유발하지 않고, 90도의 각도는 수직이며 모든 스킨의 확장을 유발합니다."
+
+#: fdmprinter.def.json
+msgctxt "min_skin_width_for_expansion label"
+msgid "Minimum Skin Width for Expansion"
+msgstr "확장을 위한 최소 스킨 폭"
+
+#: fdmprinter.def.json
+msgctxt "min_skin_width_for_expansion description"
+msgid "Skin areas narrower than this are not expanded. This avoids expanding the narrow skin areas that are created when the model surface has a slope close to the vertical."
+msgstr "이보다 좁은 스킨 영역은 확장되지 않습니다. 이렇게하면 모델 표면이 수직에 가까운 기울기를 가질 때 생성되는 좁은 스킨 영역을 확장하지 않아도됩니다."
+
#: fdmprinter.def.json
msgctxt "infill label"
msgid "Infill"
@@ -1864,86 +1974,6 @@ msgctxt "infill_support_angle description"
msgid "The minimum angle of internal overhangs for which infill is added. At a value of 0° objects are totally filled with infill, 90° will not provide any infill."
msgstr "충진물이 추가되는 내부 오버행의 최소 각도. 0°에서는 개체가 충진물로 완전히 채워지지만, 90°에서는 충진물이 공급되지 않습니다."
-#: fdmprinter.def.json
-msgctxt "skin_preshrink label"
-msgid "Skin Removal Width"
-msgstr "스킨 제거 폭"
-
-#: fdmprinter.def.json
-msgctxt "skin_preshrink description"
-msgid "The largest width of skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top/bottom skin at slanted surfaces in the model."
-msgstr "제거 할 외부스킨 영역의 가장 큰 너비. 이 값보다 작은 모든 스킨 영역은 사라집니다. 이렇게하면 모델의 경사면에서 위쪽 / 아래쪽 스킨을 프린팅하는 데 소요되는 시간과 재료의 양을 제한하는 데 도움이 됩니다."
-
-#: fdmprinter.def.json
-msgctxt "top_skin_preshrink label"
-msgid "Top Skin Removal Width"
-msgstr "상단 스킨 제거 폭"
-
-#: fdmprinter.def.json
-msgctxt "top_skin_preshrink description"
-msgid "The largest width of top skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top skin at slanted surfaces in the model."
-msgstr "제거 할 상단 스킨 영역의 가장 큰 너비. 이 값보다 작은 모든 스킨 영역은 사라집니다. 이렇게 하면 모델의 경사면에서 상단 스킨을 프린팅하는 데 소요되는 시간과 재료의 양을 제한하는 데 도움이됩니다."
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_preshrink label"
-msgid "Bottom Skin Removal Width"
-msgstr "밑면 스킨 제거 폭"
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_preshrink description"
-msgid "The largest width of bottom skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing bottom skin at slanted surfaces in the model."
-msgstr "제거 할 바닥 스킨 영역의 최대 너비. 이 값보다 작은 모든 스킨 영역은 사라집니다. 이렇게하면 모델의 경사면에서 밑면 스킨을 프린팅하는 데 소요되는 시간과 재료의 양을 제한하는 데 도움이됩니다."
-
-#: fdmprinter.def.json
-msgctxt "expand_skins_expand_distance label"
-msgid "Skin Expand Distance"
-msgstr "스킨 확장 거리"
-
-#: fdmprinter.def.json
-msgctxt "expand_skins_expand_distance description"
-msgid "The distance the skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on neighboring layers adhere better to the skin. Lower values save amount of material used."
-msgstr "스킨이 내부채움으로 확장되는 거리입니다. 값이 높을수록 스킨이 내부채움 패턴에 더 잘 부착되고 인접 레이어의 벽이 스킨에 잘 밀착됩니다. 값이 낮을수록 사용 될 재료의 양이 절약됩니다."
-
-#: fdmprinter.def.json
-msgctxt "top_skin_expand_distance label"
-msgid "Top Skin Expand Distance"
-msgstr "윗면 스킨 확장 거리"
-
-#: fdmprinter.def.json
-msgctxt "top_skin_expand_distance description"
-msgid "The distance the top skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on the layer above adhere better to the skin. Lower values save amount of material used."
-msgstr "상단 스킨의 거리가 내부채움으로 확장됩니다. 값이 높을수록 스킨이 내부채움 패턴에 더 잘 부착되며 위 레이어의 벽이 스킨에 잘 밀착됩니다. 값이 낮을수록 사용 된 재료의 양이 절약됩니다."
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_expand_distance label"
-msgid "Bottom Skin Expand Distance"
-msgstr "밑면 스킨 확장 거리"
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_expand_distance description"
-msgid "The distance the bottom skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the skin adhere better to the walls on the layer below. Lower values save amount of material used."
-msgstr "바닥 스킨의 거리가 내부채움으로 확장됩니다. 값이 높을수록 스킨가 내부채움 패턴에 더 잘 붙어 스킨가 아래 층의 벽에 잘 밀착됩니다. 값이 낮을수록 사용 된 재료의 양이 절약됩니다."
-
-#: fdmprinter.def.json
-msgctxt "max_skin_angle_for_expansion label"
-msgid "Maximum Skin Angle for Expansion"
-msgstr "확장을 위한 최대 스킨 각"
-
-#: fdmprinter.def.json
-msgctxt "max_skin_angle_for_expansion description"
-msgid "Top and/or bottom surfaces of your object with an angle larger than this setting, won't have their top/bottom skin expanded. This avoids expanding the narrow skin areas that are created when the model surface has a near vertical slope. An angle of 0° is horizontal, while an angle of 90° is vertical."
-msgstr "이 설정보다 큰 각도로 객체의 상단 및 또는 하단 표면은 위쪽/아래쪽 스킨이 확장되지 않습니다. 이렇게하면 모델 표면이 수직 경사가 거의 없을 때 생성되는 좁은 스킨 영역을 확장하지 않아도됩니다. 0도의 각도는 수평이며, 90도의 각도는 수직입니다."
-
-#: fdmprinter.def.json
-msgctxt "min_skin_width_for_expansion label"
-msgid "Minimum Skin Width for Expansion"
-msgstr "확장을 위한 최소 스킨 폭"
-
-#: fdmprinter.def.json
-msgctxt "min_skin_width_for_expansion description"
-msgid "Skin areas narrower than this are not expanded. This avoids expanding the narrow skin areas that are created when the model surface has a slope close to the vertical."
-msgstr "이보다 좁은 스킨 영역은 확장되지 않습니다. 이렇게하면 모델 표면이 수직에 가까운 기울기를 가질 때 생성되는 좁은 스킨 영역을 확장하지 않아도됩니다."
-
#: fdmprinter.def.json
msgctxt "skin_edge_support_thickness label"
msgid "Skin Edge Support Thickness"
@@ -2561,8 +2591,8 @@ msgstr "초기 레이어 속도"
#: fdmprinter.def.json
msgctxt "speed_layer_0 description"
-msgid "The speed for the initial layer. A lower value is advised to improve adhesion to the build plate."
-msgstr "초기 레이어의 속도입니다. 빌드 플레이트에 대한 접착력을 향상 시키려면 낮은 값을 권합니다."
+msgid "The speed for the initial layer. A lower value is advised to improve adhesion to the build plate. Does not affect the build plate adhesion structures themselves, like brim and raft."
+msgstr "초기 레이어의 속도입니다. 빌드 플레이트에 대한 접착력을 향상시키려면 낮은 값을 권장합니다. 브림과 래프트 같은 빌드 플레이트 접착 구조 자체에 영향을 미치지 않습니다."
#: fdmprinter.def.json
msgctxt "speed_print_layer_0 label"
@@ -3171,8 +3201,8 @@ msgstr "수축이 없을 때 최대 빗질 거리"
#: fdmprinter.def.json
msgctxt "retraction_combing_max_distance description"
-msgid "When non-zero, combing travel moves that are longer than this distance will use retraction."
-msgstr "0이 아닌 경우 이 거리보다 긴 빗질 이동은 후퇴를 사용합니다."
+msgid "When greater than zero, combing travel moves that are longer than this distance will use retraction. If set to zero, there is no maximum and combing moves will not use retraction."
+msgstr "0보다 큰 경우 이 거리보다 긴 combing travel은 retraction을 사용합니다. 0으로 설정한 경우 최댓값이 없으며 combing travel은 retraction을 사용하지 않습니다."
#: fdmprinter.def.json
msgctxt "travel_retract_before_outer_wall label"
@@ -5075,8 +5105,8 @@ msgstr "메쉬 처리 랭크"
#: fdmprinter.def.json
msgctxt "infill_mesh_order description"
-msgid "Determines the priority of this mesh when considering multiple overlapping infill meshes. Areas where multiple infill meshes overlap will take on the settings of the mesh with the lowest rank. An infill mesh with a higher order will modify the infill of infill meshes with lower order and normal meshes."
-msgstr "여러 오버랩 메쉬 내부채움을 고려할 때 메쉬의 우선 순위를 결정합니다. 여러 메쉬 내부채움이 오버랩하는 영역은 최저 랭크의 메쉬 설정에 착수하게 됩니다. 우선 순위가 높은 내부채움 메쉬는 우선 순위가 낮은 내부채움 메쉬와 표준 메쉬의 내부채움을 수정합니다."
+msgid "Determines the priority of this mesh when considering multiple overlapping infill meshes. Areas where multiple infill meshes overlap will take on the settings of the mesh with the highest rank. An infill mesh with a higher rank will modify the infill of infill meshes with lower rank and normal meshes."
+msgstr "여러 내부채움 매쉬 오버랩을 고려할 때 메쉬의 우선 순위를 결정합니다. 여러 내부채움 메쉬가 오버랩하는 영역은 최고 랭크의 메쉬 설정에 착수하게 됩니다. 높은 내부채움 메쉬는 낮은 내부채움 메쉬와 표준 메쉬의 내부채움을 수정합니다."
#: fdmprinter.def.json
msgctxt "cutting_mesh label"
@@ -5423,6 +5453,16 @@ msgctxt "conical_overhang_angle description"
msgid "The maximum angle of overhangs after the they have been made printable. At a value of 0° all overhangs are replaced by a piece of model connected to the build plate, 90° will not change the model in any way."
msgstr "프린팅 가능하게 된 후 오버행의 최대 각도. 0도의 값에서 모든 오버행은 빌드 플레이트에 연결된 모델로 대체됩니다. 90도는 모델을 변경하지 않습니다."
+#: fdmprinter.def.json
+msgctxt "conical_overhang_hole_size label"
+msgid "Maximum Overhang Hole Area"
+msgstr "최대 오버행 홀 영역"
+
+#: fdmprinter.def.json
+msgctxt "conical_overhang_hole_size description"
+msgid "The maximum area of a hole in the base of the model before it's removed by Make Overhang Printable. Holes smaller than this will be retained. A value of 0 mm² will fill all holes in the models base."
+msgstr "오버행 프린팅 설정에 의해 제거되기 전 모델의 베이스에 있는 구멍의 최대 영역입니다. 이보다 작은 홀은 유지됩니다. 0mm² 값은 모델 베이스의 모든 홀을 채웁니다."
+
#: fdmprinter.def.json
msgctxt "coasting_enable label"
msgid "Enable Coasting"
@@ -6360,6 +6400,30 @@ msgctxt "mesh_rotation_matrix description"
msgid "Transformation matrix to be applied to the model when loading it from file."
msgstr "파일로부터 로드 하는 경유, 모델에 적용될 변환 행렬입니다."
+#~ msgctxt "retraction_combing_max_distance description"
+#~ msgid "When non-zero, combing travel moves that are longer than this distance will use retraction."
+#~ msgstr "0이 아닌 경우 이 거리보다 긴 빗질 이동은 후퇴를 사용합니다."
+
+#~ msgctxt "machine_use_extruder_offset_to_offset_coords description"
+#~ msgid "Apply the extruder offset to the coordinate system."
+#~ msgstr "익스트루더 오프셋을 좌표계에 적용하십시오."
+
+#~ msgctxt "shell label"
+#~ msgid "Shell"
+#~ msgstr "외곽"
+
+#~ msgctxt "max_skin_angle_for_expansion description"
+#~ msgid "Top and/or bottom surfaces of your object with an angle larger than this setting, won't have their top/bottom skin expanded. This avoids expanding the narrow skin areas that are created when the model surface has a near vertical slope. An angle of 0° is horizontal, while an angle of 90° is vertical."
+#~ msgstr "이 설정보다 큰 각도로 객체의 상단 및 또는 하단 표면은 위쪽/아래쪽 스킨이 확장되지 않습니다. 이렇게하면 모델 표면이 수직 경사가 거의 없을 때 생성되는 좁은 스킨 영역을 확장하지 않아도됩니다. 0도의 각도는 수평이며, 90도의 각도는 수직입니다."
+
+#~ msgctxt "speed_layer_0 description"
+#~ msgid "The speed for the initial layer. A lower value is advised to improve adhesion to the build plate."
+#~ msgstr "초기 레이어의 속도입니다. 빌드 플레이트에 대한 접착력을 향상 시키려면 낮은 값을 권합니다."
+
+#~ msgctxt "infill_mesh_order description"
+#~ msgid "Determines the priority of this mesh when considering multiple overlapping infill meshes. Areas where multiple infill meshes overlap will take on the settings of the mesh with the lowest rank. An infill mesh with a higher order will modify the infill of infill meshes with lower order and normal meshes."
+#~ msgstr "여러 오버랩 메쉬 내부채움을 고려할 때 메쉬의 우선 순위를 결정합니다. 여러 메쉬 내부채움이 오버랩하는 영역은 최저 랭크의 메쉬 설정에 착수하게 됩니다. 우선 순위가 높은 내부채움 메쉬는 우선 순위가 낮은 내부채움 메쉬와 표준 메쉬의 내부채움을 수정합니다."
+
#~ msgctxt "material_bed_temperature description"
#~ msgid "The temperature used for the heated build plate. If this is 0, the bed temperature will not be adjusted."
#~ msgstr "플레이트를 가열하기 위해 사용되는 온도. 이것이 0이면, 베드 온도가 조정되지 않습니다."
diff --git a/resources/i18n/nl_NL/cura.po b/resources/i18n/nl_NL/cura.po
index d74aef776a..5bb80d1116 100644
--- a/resources/i18n/nl_NL/cura.po
+++ b/resources/i18n/nl_NL/cura.po
@@ -1,13 +1,13 @@
# Cura
-# Copyright (C) 2020 Ultimaker B.V.
+# Copyright (C) 2021 Ultimaker B.V.
# This file is distributed under the same license as the Cura package.
#
msgid ""
msgstr ""
-"Project-Id-Version: Cura 4.8\n"
+"Project-Id-Version: Cura 4.10\n"
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
-"POT-Creation-Date: 2020-10-19 13:15+0200\n"
-"PO-Revision-Date: 2020-11-09 14:10+0100\n"
+"POT-Creation-Date: 2021-06-10 17:35+0200\n"
+"PO-Revision-Date: 2021-04-16 14:51+0200\n"
"Last-Translator: Lionbridge \n"
"Language-Team: Dutch , Dutch \n"
"Language: nl_NL\n"
@@ -17,8 +17,12 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 2.4.1\n"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/DiscoveredPrintersModel.py:83 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:110 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/QualityManagementModel.py:361 /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1581
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:130 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:171
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/DiscoveredPrintersModel.py:83
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:110
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/QualityManagementModel.py:361
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1612
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:130
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:171
msgctxt "@label"
msgid "Unknown"
msgstr "Onbekend"
@@ -44,47 +48,56 @@ msgctxt "@label {0} is the name of a printer that's about to be deleted."
msgid "Are you sure you wish to remove {0}? This cannot be undone!"
msgstr "Weet u zeker dat u {0} wilt verwijderen? Deze bewerking kan niet ongedaan worden gemaakt!"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:42 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:11 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/QualityManagementModel.py:338
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:42
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:11
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/QualityManagementModel.py:338
msgctxt "@label"
msgid "Default"
msgstr "Default"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:45 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:14
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:45
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:14
msgctxt "@label"
msgid "Visual"
msgstr "Visueel"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:46 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:15
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:46
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:15
msgctxt "@text"
msgid "The visual profile is designed to print visual prototypes and models with the intent of high visual and surface quality."
msgstr "Het visuele profiel is ontworpen om visuele prototypen en modellen te printen met als doel een hoge visuele en oppervlaktekwaliteit te creëren."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:49 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:18
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:49
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:18
msgctxt "@label"
msgid "Engineering"
msgstr "Engineering"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:50 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:19
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:50
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:19
msgctxt "@text"
msgid "The engineering profile is designed to print functional prototypes and end-use parts with the intent of better accuracy and for closer tolerances."
msgstr "Het engineeringprofiel is ontworpen om functionele prototypen en onderdelen voor eindgebruik te printen met als doel een grotere precisie en nauwere toleranties."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:53 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:22
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:53
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:22
msgctxt "@label"
msgid "Draft"
msgstr "Ontwerp"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:54 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:23
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:54
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:23
msgctxt "@text"
msgid "The draft profile is designed to print initial prototypes and concept validation with the intent of significant print time reduction."
msgstr "Het ontwerpprofiel is ontworpen om initiële prototypen en conceptvalidatie te printen met als doel de printtijd aanzienlijk te verkorten."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:226
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:234
msgctxt "@label"
msgid "Custom Material"
msgstr "Aangepast materiaal"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:227 /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationMenu.qml:205
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:235
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationMenu.qml:205
msgctxt "@label"
msgid "Custom"
msgstr "Aangepast"
@@ -105,51 +118,63 @@ msgctxt "@item:inlistbox"
msgid "All Files (*)"
msgstr "Alle Bestanden (*)"
-#: /home/trin/Gedeeld/Projects/Cura/cura/API/Account.py:178
+#: /home/trin/Gedeeld/Projects/Cura/cura/API/Account.py:181
msgctxt "@info:title"
msgid "Login failed"
msgstr "Inloggen mislukt"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:67 /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:24
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:67
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:24
msgctxt "@info:status"
msgid "Finding new location for objects"
msgstr "Nieuwe locatie vinden voor objecten"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:71 /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:28
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:71
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:28
msgctxt "@info:title"
msgid "Finding Location"
msgstr "Locatie vinden"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:150 /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:41 /home/trin/Gedeeld/Projects/Cura/cura/MultiplyObjectsJob.py:76
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:150
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:41
+#: /home/trin/Gedeeld/Projects/Cura/cura/MultiplyObjectsJob.py:76
msgctxt "@info:status"
msgid "Unable to find a location within the build volume for all objects"
msgstr "Kan binnen het werkvolume niet voor alle objecten een locatie vinden"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:151 /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:42
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:151
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:42
msgctxt "@info:title"
msgid "Can't Find Location"
msgstr "Kan locatie niet vinden"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:104
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:116
msgctxt "@info:backup_failed"
msgid "Could not create archive from user data directory: {}"
msgstr "Kan geen archief maken van gegevensmap van gebruiker: {}"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:110 /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:107 /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:113
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:122
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:107
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:113
msgctxt "@info:title"
msgid "Backup"
msgstr "Back-up"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:123
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:135
msgctxt "@info:backup_failed"
msgid "Tried to restore a Cura backup without having proper data or meta data."
msgstr "Geprobeerd een Cura-back-up te herstellen zonder correcte gegevens of metadata."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:134
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:146
msgctxt "@info:backup_failed"
msgid "Tried to restore a Cura backup that is higher than the current version."
msgstr "Geprobeerd een Cura-back-up te herstellen van een versie die hoger is dan de huidige versie."
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:157
+msgctxt "@info:backup_failed"
+msgid "The following error occurred while trying to restore a Cura backup:"
+msgstr "De volgende fout is opgetreden bij het herstellen van een Cura-backup:"
+
#: /home/trin/Gedeeld/Projects/Cura/cura/BuildVolume.py:98
msgctxt "@info:status"
msgid "The build volume height has been reduced due to the value of the \"Print Sequence\" setting to prevent the gantry from colliding with printed models."
@@ -299,71 +324,77 @@ msgctxt "@action:button"
msgid "Send report"
msgstr "Rapport verzenden"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:521
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:527
msgctxt "@info:progress"
msgid "Loading machines..."
msgstr "Machines laden..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:528
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:534
msgctxt "@info:progress"
msgid "Setting up preferences..."
msgstr "Voorkeuren instellen..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:657
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:672
msgctxt "@info:progress"
msgid "Initializing Active Machine..."
msgstr "Actieve machine initialiseren ..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:788
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:803
msgctxt "@info:progress"
msgid "Initializing machine manager..."
msgstr "Machinebeheer initialiseren ..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:802
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:817
msgctxt "@info:progress"
msgid "Initializing build volume..."
msgstr "Werkvolume initialiseren ..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:870
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:888
msgctxt "@info:progress"
msgid "Setting up scene..."
msgstr "Scene instellen..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:906
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:924
msgctxt "@info:progress"
msgid "Loading interface..."
msgstr "Interface laden..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:911
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:929
msgctxt "@info:progress"
msgid "Initializing engine..."
msgstr "Engine initialiseren ..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1221
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1246
#, python-format
msgctxt "@info 'width', 'depth' and 'height' are variable names that must NOT be translated; just translate the format of ##x##x## mm."
msgid "%(width).1f x %(depth).1f x %(height).1f mm"
msgstr "%(width).1f x %(depth).1f x %(height).1f mm"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1777
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1799
#, python-brace-format
msgctxt "@info:status"
msgid "Only one G-code file can be loaded at a time. Skipped importing {0}"
msgstr "Er kan slechts één G-code-bestand tegelijkertijd worden geladen. Het importeren van {0} is overgeslagen"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1778 /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:188 /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:242 /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:153
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1800
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:190
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:244
+#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:153
#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:165
msgctxt "@info:title"
msgid "Warning"
msgstr "Waarschuwing"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1787
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1809
#, python-brace-format
msgctxt "@info:status"
msgid "Can't open any other file if G-code is loading. Skipped importing {0}"
msgstr "Kan geen ander bestand openen als G-code wordt geladen. Het importeren van {0} is overgeslagen"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1788 /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:146 /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:153 /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:139
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1810
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:146
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:153
+#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:139
msgctxt "@info:title"
msgid "Error"
msgstr "Fout"
@@ -383,7 +414,7 @@ msgctxt "@info:title"
msgid "Placing Object"
msgstr "Object plaatsen"
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationHelpers.py:90
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationHelpers.py:92
msgctxt "@message"
msgid "Could not read response."
msgstr "Kan het antwoord niet lezen."
@@ -403,28 +434,31 @@ msgctxt "@message"
msgid "Something unexpected happened when trying to log in, please try again."
msgstr "Er heeft een onverwachte gebeurtenis plaatsgevonden bij het aanmelden. Probeer het opnieuw."
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:187
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:189
msgctxt "@info"
msgid "Unable to start a new sign in process. Check if another sign in attempt is still active."
msgstr "Er kan geen nieuw aanmeldingsproces worden gestart. Controleer of een andere aanmeldingspoging nog actief is."
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:242
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:244
msgctxt "@info"
msgid "Unable to reach the Ultimaker account server."
msgstr "Kan de Ultimaker-accountserver niet bereiken."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:205 /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:132
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:205
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:132
msgctxt "@title:window"
msgid "File Already Exists"
msgstr "Het Bestand Bestaat Al"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:206 /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:133
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:206
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:133
#, python-brace-format
msgctxt "@label Don't translate the XML tag !"
msgid "The file {0} already exists. Are you sure you want to overwrite it?"
msgstr "Het bestand {0} bestaat al. Weet u zeker dat u dit bestand wilt overschrijven?"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:452 /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:455
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:457
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:460
msgctxt "@info:status"
msgid "Invalid file URL:"
msgstr "Ongeldige bestands-URL:"
@@ -476,7 +510,8 @@ msgctxt "@info:status Don't translate the XML tags !"
msgid "Failed to import profile from {0}:"
msgstr "Kan het profiel niet importeren uit {0}:"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:235 /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:245
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:235
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:245
#, python-brace-format
msgctxt "@info:status Don't translate the XML tags !"
msgid "This profile {0} contains incorrect data, could not import it."
@@ -506,33 +541,33 @@ msgctxt "@info:status"
msgid "Profile {0} has an unknown file type or is corrupted."
msgstr "Het profiel {0} heeft een onbekend bestandstype of is beschadigd."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:423
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:426
msgctxt "@label"
msgid "Custom profile"
msgstr "Aangepast profiel"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:439
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:442
msgctxt "@info:status"
msgid "Profile is missing a quality type."
msgstr "Er ontbreekt een kwaliteitstype in het profiel."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:443
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:446
msgctxt "@info:status"
-msgid "Global stack is missing."
-msgstr "Algemene stapel ontbreekt."
+msgid "There is no active printer yet."
+msgstr "Er is nog geen actieve printer."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:449
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:452
msgctxt "@info:status"
msgid "Unable to add the profile."
msgstr "Kan het profiel niet toevoegen."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:463
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:466
#, python-brace-format
msgctxt "@info:status"
msgid "Quality type '{0}' is not compatible with the current active machine definition '{1}'."
msgstr "Kwaliteitstype '{0}' is niet compatibel met de huidige actieve machinedefinitie '{1}'."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:468
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:471
#, python-brace-format
msgctxt "@info:status"
msgid "Warning: The profile is not visible because its quality type '{0}' is not available for the current configuration. Switch to a material/nozzle combination that can use this quality type."
@@ -548,39 +583,50 @@ msgctxt "@info:No intent profile selected"
msgid "Default"
msgstr "Default"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:712 /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:216
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:713
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:216
msgctxt "@label"
msgid "Nozzle"
msgstr "Nozzle"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:860
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:856
msgctxt "@info:message Followed by a list of settings."
msgid "Settings have been changed to match the current availability of extruders:"
msgstr "De instellingen zijn gewijzigd zodat deze overeenkomen met de huidige beschikbaarheid van extruders:"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:862
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:858
msgctxt "@info:title"
msgid "Settings updated"
msgstr "De instellingen zijn bijgewerkt"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1447
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1478
msgctxt "@info:title"
msgid "Extruder(s) Disabled"
msgstr "Extruder(s) uitgeschakeld"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:17 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:67 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:48
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:17
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:67
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:48
msgctxt "@action:button"
msgid "Add"
msgstr "Toevoegen"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:26 /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:263
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:26
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:272
msgctxt "@action:button"
msgid "Finish"
msgstr "Voltooien"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:33 /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:441 /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:234 /home/trin/Gedeeld/Projects/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:150
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxProgressButton.qml:19 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/dialogs/ToolboxConfirmUninstallResetDialog.qml:81 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:352
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:58 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/PrintWindow.qml:42 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:87
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:33
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:445
+#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:234
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:150
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxProgressButton.qml:19
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/dialogs/ToolboxConfirmUninstallResetDialog.qml:81
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:352
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:58
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/PrintWindow.qml:42
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:82
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:292
msgctxt "@action:button"
msgid "Cancel"
@@ -590,75 +636,86 @@ msgstr "Annuleren"
#, python-brace-format
msgctxt "@label"
msgid "Group #{group_nr}"
-msgstr "Groepsnummer {group_nr}"
+msgstr "Groepsnummer #{group_nr}"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:83
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:82
msgctxt "@tooltip"
msgid "Outer Wall"
msgstr "Buitenwand"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:84
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:83
msgctxt "@tooltip"
msgid "Inner Walls"
msgstr "Binnenwanden"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:85
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:84
msgctxt "@tooltip"
msgid "Skin"
msgstr "Skin"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:86
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:85
msgctxt "@tooltip"
msgid "Infill"
msgstr "Vulling"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:87
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:86
msgctxt "@tooltip"
msgid "Support Infill"
msgstr "Supportvulling"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:88
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:87
msgctxt "@tooltip"
msgid "Support Interface"
msgstr "Verbindingsstructuur"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:89
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:88
msgctxt "@tooltip"
msgid "Support"
msgstr "Supportstructuur"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:90
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:89
msgctxt "@tooltip"
msgid "Skirt"
msgstr "Skirt"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:91
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:90
msgctxt "@tooltip"
msgid "Prime Tower"
msgstr "Primepijler"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:92
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:91
msgctxt "@tooltip"
msgid "Travel"
msgstr "Beweging"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:93
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:92
msgctxt "@tooltip"
msgid "Retractions"
msgstr "Intrekkingen"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:94
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:93
msgctxt "@tooltip"
msgid "Other"
msgstr "Overig(e)"
#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:56
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:259
msgctxt "@action:button"
msgid "Next"
msgstr "Volgende"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WhatsNewPagesModel.py:17 /home/trin/Gedeeld/Projects/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:185 /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:128 /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:482
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:173 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:127
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:268
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WhatsNewPagesModel.py:55
+msgctxt "@action:button"
+msgid "Skip"
+msgstr "Overslaan"
+
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WhatsNewPagesModel.py:60
+#: /home/trin/Gedeeld/Projects/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:185
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:128
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:485
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:174
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:127
msgctxt "@action:button"
msgid "Close"
msgstr "Sluiten"
@@ -682,29 +739,36 @@ msgstr ""
"
Ontdek hoe u de best mogelijke printkwaliteit en betrouwbaarheid verkrijgt.
"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:535
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:540
#, python-brace-format
msgctxt "@info:status Don't translate the XML tags or !"
msgid "Project file {0} contains an unknown machine type {1}. Cannot import the machine. Models will be imported instead."
msgstr "Projectbestand {0} bevat een onbekend type machine {1}. Kan de machine niet importeren. In plaats daarvan worden er modellen geïmporteerd."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:538
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:543
msgctxt "@info:title"
msgid "Open Project File"
msgstr "Projectbestand Openen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:634
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:639
#, python-brace-format
msgctxt "@info:error Don't translate the XML tags or !"
msgid "Project file {0} is suddenly inaccessible: {1}."
msgstr "Projectbestand {0} is plotseling ontoegankelijk: {1}."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:635
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:640
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:647
msgctxt "@info:title"
msgid "Can't Open Project File"
msgstr "Kan projectbestand niet openen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:686
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:646
+#, python-brace-format
+msgctxt "@info:error Don't translate the XML tags or !"
+msgid "Project file {0} is corrupt: {1}."
+msgstr "Projectbestand {0} is corrupt: {1}."
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:698
#, python-brace-format
msgctxt "@info:error Don't translate the XML tag !"
msgid "Project file {0} is made using profiles that are unknown to this version of Ultimaker Cura."
@@ -720,7 +784,8 @@ msgctxt "@title:tab"
msgid "Custom"
msgstr "Aangepast"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/__init__.py:27 /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/__init__.py:33
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/__init__.py:27
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/__init__.py:33
msgctxt "@item:inlistbox"
msgid "3MF File"
msgstr "3MF-bestand"
@@ -730,7 +795,8 @@ msgctxt "@error:zip"
msgid "3MF Writer plug-in is corrupt."
msgstr "3MF-schrijverplug-in is beschadigd."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:59 /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:92
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:59
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWorkspaceWriter.py:92
msgctxt "@error:zip"
msgid "No permission to write the workspace here."
msgstr "Geen bevoegdheid om de werkruimte hier te schrijven."
@@ -740,7 +806,7 @@ msgctxt "@error:zip"
msgid "The operating system does not allow saving a project file to this location or with this file name."
msgstr "Het besturingssysteem staat niet toe dat u een projectbestand opslaat op deze locatie of met deze bestandsnaam."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWriter.py:185
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWriter.py:206
msgctxt "@error:zip"
msgid "Error writing 3mf file."
msgstr "Fout bij het schrijven van het 3mf-bestand."
@@ -795,7 +861,8 @@ msgctxt "@error:file_size"
msgid "The backup exceeds the maximum file size."
msgstr "De back-up is groter dan de maximale bestandsgrootte."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DriveApiService.py:82 /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/RestoreBackupJob.py:23
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DriveApiService.py:86
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/RestoreBackupJob.py:26
msgctxt "@info:backup_status"
msgid "There was an error trying to restore your backup."
msgstr "Er is een fout opgetreden tijdens het herstellen van uw back-up."
@@ -805,41 +872,45 @@ msgctxt "@item:inmenu"
msgid "Manage backups"
msgstr "Back-ups beheren"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:356
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:382
msgctxt "@info:status"
msgid "Unable to slice with the current material as it is incompatible with the selected machine or configuration."
msgstr "Met het huidige materiaal is slicen niet mogelijk, omdat het materiaal niet compatibel is met de geselecteerde machine of configuratie."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:356 /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:387 /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:411 /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:420
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:429 /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:441
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:382
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:413
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:437
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:446
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:455
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:467
msgctxt "@info:title"
msgid "Unable to slice"
msgstr "Kan niet slicen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:386
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:412
#, python-brace-format
msgctxt "@info:status"
msgid "Unable to slice with the current settings. The following settings have errors: {0}"
msgstr "Met de huidige instellingen is slicing niet mogelijk. De volgende instellingen bevatten fouten: {0}"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:410
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:436
#, python-brace-format
msgctxt "@info:status"
msgid "Unable to slice due to some per-model settings. The following settings have errors on one or more models: {error_labels}"
msgstr "Slicing is niet mogelijk vanwege enkele instellingen per model. De volgende instellingen bevatten fouten voor een of meer modellen: {error_labels}"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:419
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:445
msgctxt "@info:status"
msgid "Unable to slice because the prime tower or prime position(s) are invalid."
msgstr "Slicen is niet mogelijk omdat de terugduwpijler of terugduwpositie(s) ongeldig zijn."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:428
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:454
#, python-format
msgctxt "@info:status"
msgid "Unable to slice because there are objects associated with disabled Extruder %s."
msgstr "Slicen is niet mogelijk omdat er objecten gekoppeld zijn aan uitgeschakelde Extruder %s."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:437
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:463
msgctxt "@info:status"
msgid ""
"Please review settings and check if your models:\n"
@@ -852,7 +923,8 @@ msgstr ""
"- zijn toegewezen aan een ingeschakelde extruder\n"
"- niet allemaal zijn ingesteld als modificatierasters"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/ProcessSlicedLayersJob.py:52 /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/ProcessSlicedLayersJob.py:260
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/ProcessSlicedLayersJob.py:52
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/ProcessSlicedLayersJob.py:260
msgctxt "@info:status"
msgid "Processing Layers"
msgstr "Lagen verwerken"
@@ -862,7 +934,8 @@ msgctxt "@info:title"
msgid "Information"
msgstr "Informatie"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraProfileReader/__init__.py:14 /home/trin/Gedeeld/Projects/Cura/plugins/CuraProfileWriter/__init__.py:14
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraProfileReader/__init__.py:14
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraProfileWriter/__init__.py:14
msgctxt "@item:inlistbox"
msgid "Cura Profile"
msgstr "Cura-profiel"
@@ -894,7 +967,8 @@ msgctxt "@action"
msgid "Update Firmware"
msgstr "Firmware bijwerken"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeGzReader/__init__.py:17 /home/trin/Gedeeld/Projects/Cura/plugins/GCodeGzWriter/__init__.py:17
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeGzReader/__init__.py:17
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeGzWriter/__init__.py:17
msgctxt "@item:inlistbox"
msgid "Compressed G-code File"
msgstr "Gecomprimeerd G-code-bestand"
@@ -904,7 +978,9 @@ msgctxt "@error:not supported"
msgid "GCodeGzWriter does not support text mode."
msgstr "GCodeGzWriter ondersteunt geen tekstmodus."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeProfileReader/__init__.py:14 /home/trin/Gedeeld/Projects/Cura/plugins/GCodeReader/__init__.py:14 /home/trin/Gedeeld/Projects/Cura/plugins/GCodeWriter/__init__.py:16
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeProfileReader/__init__.py:14
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeReader/__init__.py:14
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeWriter/__init__.py:16
msgctxt "@item:inlistbox"
msgid "G-code File"
msgstr "G-code-bestand"
@@ -914,7 +990,8 @@ msgctxt "@info:status"
msgid "Parsing G-code"
msgstr "G-code parseren"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeReader/FlavorParser.py:349 /home/trin/Gedeeld/Projects/Cura/plugins/GCodeReader/FlavorParser.py:503
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeReader/FlavorParser.py:349
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeReader/FlavorParser.py:503
msgctxt "@info:title"
msgid "G-code Details"
msgstr "Details van de G-code"
@@ -934,7 +1011,8 @@ msgctxt "@error:not supported"
msgid "GCodeWriter does not support non-text mode."
msgstr "GCodeWriter ondersteunt geen non-tekstmodus."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeWriter/GCodeWriter.py:80 /home/trin/Gedeeld/Projects/Cura/plugins/GCodeWriter/GCodeWriter.py:96
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeWriter/GCodeWriter.py:80
+#: /home/trin/Gedeeld/Projects/Cura/plugins/GCodeWriter/GCodeWriter.py:96
msgctxt "@warning:status"
msgid "Please prepare G-code before exporting."
msgstr "Bereid voorafgaand aan het exporteren G-code voor."
@@ -1020,7 +1098,8 @@ msgctxt "@item:inlistbox"
msgid "Save to Removable Drive {0}"
msgstr "Opslaan op Verwisselbaar Station {0}"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:66 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/MeshFormatHandler.py:118
+#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:66
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/MeshFormatHandler.py:118
msgctxt "@info:status"
msgid "There are no file formats available to write with!"
msgstr "Er zijn geen bestandsindelingen beschikbaar om te schrijven!"
@@ -1036,7 +1115,8 @@ msgctxt "@info:title"
msgid "Saving"
msgstr "Opslaan"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:106 /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:109
+#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:106
+#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:109
#, python-brace-format
msgctxt "@info:status Don't translate the XML tags or !"
msgid "Could not save to {0}: {1}"
@@ -1048,7 +1128,8 @@ msgctxt "@info:status Don't translate the tag {device}!"
msgid "Could not find a file name when trying to write to {device}."
msgstr "Kan geen bestandsnaam vinden tijdens het schrijven naar {device}."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:138 /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:153
+#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:138
+#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:153
#, python-brace-format
msgctxt "@info:status"
msgid "Could not save to removable drive {0}: {1}"
@@ -1098,27 +1179,28 @@ msgctxt "@item:intext"
msgid "Removable Drive"
msgstr "Verwisselbaar Station"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:121
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:128
msgctxt "@info:status"
msgid "Cura does not accurately display layers when Wire Printing is enabled."
msgstr "Als Draadprinten is ingeschakeld, geeft Cura lagen niet goed weer."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:122
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:129
msgctxt "@info:title"
msgid "Simulation View"
msgstr "Simulatieweergave"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:123
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:130
msgctxt "@info:status"
msgid "Nothing is shown because you need to slice first."
msgstr "Er wordt niets weergegeven omdat u eerst moet slicen."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:123
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:130
msgctxt "@info:title"
msgid "No layers to show"
msgstr "Geen lagen om weer te geven"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:124 /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:73
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:131
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:74
msgctxt "@info:option_text"
msgid "Do not show this message again"
msgstr "Dit bericht niet meer weergeven"
@@ -1128,16 +1210,21 @@ msgctxt "@item:inlistbox"
msgid "Layer view"
msgstr "Laagweergave"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:70
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:71
msgctxt "@info:status"
-msgid "Your model is not manifold. The highlighted areas indicate either missing or extraneous surfaces."
-msgstr "Uw model is niet veelvoudig. De gemarkeerde gebieden geven ofwel ontbrekende of ongebruikelijke oppervlakken aan."
+msgid "The highlighted areas indicate either missing or extraneous surfaces. Fix your model and open it again into Cura."
+msgstr "De gemarkeerde gebieden geven ofwel ontbrekende of ongebruikelijke oppervlakken aan. Corrigeer het model en open het opnieuw in Cura."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:72
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:73
msgctxt "@info:title"
-msgid "Model errors"
+msgid "Model Errors"
msgstr "Modelfouten"
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:79
+msgctxt "@action:button"
+msgid "Learn more"
+msgstr "Meer informatie"
+
#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/__init__.py:12
msgctxt "@item:inmenu"
msgid "Solid view"
@@ -1158,12 +1245,13 @@ msgctxt "@info:generic"
msgid "Do you want to sync material and software packages with your account?"
msgstr "Wilt u materiaal- en softwarepackages synchroniseren met uw account?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py:143 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/DownloadPresenter.py:93
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py:143
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/DownloadPresenter.py:93
msgctxt "@info:title"
msgid "Changes detected from your Ultimaker account"
msgstr "Wijzigingen gedetecteerd van uw Ultimaker-account"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py:146
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py:145
msgctxt "@action:button"
msgid "Sync"
msgstr "Synchroniseren"
@@ -1178,7 +1266,8 @@ msgctxt "@button"
msgid "Decline"
msgstr "Nee, ik ga niet akkoord"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/LicenseModel.py:10 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/UserAgreementContent.qml:56
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/LicenseModel.py:10
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/UserAgreementContent.qml:56
msgctxt "@button"
msgid "Agree"
msgstr "Akkoord"
@@ -1198,7 +1287,7 @@ msgctxt "@info:generic"
msgid "You need to quit and restart {} before changes have effect."
msgstr "U moet {} afsluiten en herstarten voordat de wijzigingen van kracht worden."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/SyncOrchestrator.py:76
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/SyncOrchestrator.py:79
msgctxt "@info:generic"
msgid "{} plugins failed to download"
msgstr "{} plug-ins zijn niet gedownload"
@@ -1233,12 +1322,17 @@ msgctxt "@item:inlistbox"
msgid "Compressed COLLADA Digital Asset Exchange"
msgstr "Gecomprimeerde COLLADA Digital Asset Exchange"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPReader/__init__.py:22 /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/__init__.py:28
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPReader/__init__.py:22
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/__init__.py:28
msgctxt "@item:inlistbox"
msgid "Ultimaker Format Package"
msgstr "Ultimaker Format Package"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:146
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:57
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:72
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:94
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:149
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:159
msgctxt "@info:error"
msgid "Can't write to UFP file:"
msgstr "Kan niet naar UFP-bestand schrijven:"
@@ -1253,22 +1347,22 @@ msgctxt "@action"
msgid "Select upgrades"
msgstr "Upgrades selecteren"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:152
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:154
msgctxt "@action:button"
msgid "Print via cloud"
msgstr "Printen via Cloud"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:153
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:155
msgctxt "@properties:tooltip"
msgid "Print via cloud"
msgstr "Printen via Cloud"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:154
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:156
msgctxt "@info:status"
msgid "Connected via cloud"
msgstr "Verbonden via Cloud"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:264
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:270
#, python-brace-format
msgctxt "@error:send"
msgid "Unknown error code when uploading print job: {0}"
@@ -1314,7 +1408,8 @@ msgid_plural "These printers are not linked to the Digital Factory:"
msgstr[0] "Deze printer is niet gekoppeld aan de Digital Factory:"
msgstr[1] "Deze printers zijn niet gekoppeld aan de Digital Factory:"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:329 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:419
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:329
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py:419
msgctxt "info:name"
msgid "Ultimaker Digital Factory"
msgstr "Ultimaker Digital Factory"
@@ -1565,126 +1660,137 @@ msgctxt "@info:tooltip"
msgid "Some things could be problematic in this print. Click to see tips for adjustment."
msgstr "In deze print kunnen problemen ontstaan. Klik om tips voor aanpassingen te bekijken."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:14
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:15
msgctxt "@title:window"
msgid "Open Project"
msgstr "Project openen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:61
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:62
msgctxt "@action:ComboBox Update/override existing profile"
msgid "Update existing"
msgstr "Bestaand(e) bijwerken"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:62
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:63
msgctxt "@action:ComboBox Save settings in a new profile"
msgid "Create new"
msgstr "Nieuw maken"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:74 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:69
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:75
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:69
msgctxt "@action:title"
msgid "Summary - Cura Project"
msgstr "Samenvatting - Cura-project"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:96 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:93
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:97
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:93
msgctxt "@action:label"
msgid "Printer settings"
msgstr "Printerinstellingen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:112
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:113
msgctxt "@info:tooltip"
msgid "How should the conflict in the machine be resolved?"
msgstr "Hoe dient het conflict in de machine te worden opgelost?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:165 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:102
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:167
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:102
msgctxt "@action:label"
msgid "Type"
msgstr "Type"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:181 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:117
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:183
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:117
msgctxt "@action:label"
msgid "Printer Group"
msgstr "Printergroep"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:203 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:218
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:205
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:218
msgctxt "@action:label"
msgid "Profile settings"
msgstr "Profielinstellingen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:219
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:221
msgctxt "@info:tooltip"
msgid "How should the conflict in the profile be resolved?"
msgstr "Hoe dient het conflict in het profiel te worden opgelost?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:239 /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:349 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:117 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:242
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:242
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:353
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:117
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:242
msgctxt "@action:label"
msgid "Name"
msgstr "Naam"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:255 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:259
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:258
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:259
msgctxt "@action:label"
msgid "Intent"
msgstr "Intent"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:271 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:226
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:274
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:226
msgctxt "@action:label"
msgid "Not in profile"
msgstr "Niet in profiel"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:276 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:231
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:279
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:231
msgctxt "@action:label"
msgid "%1 override"
msgid_plural "%1 overrides"
msgstr[0] "%1 overschrijving"
msgstr[1] "%1 overschrijvingen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:287
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:290
msgctxt "@action:label"
msgid "Derivative from"
msgstr "Afgeleide van"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:292
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:295
msgctxt "@action:label"
msgid "%1, %2 override"
msgid_plural "%1, %2 overrides"
msgstr[0] "%1, %2 overschrijving"
msgstr[1] "%1, %2 overschrijvingen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:309
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:312
msgctxt "@action:label"
msgid "Material settings"
msgstr "Materiaalinstellingen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:325
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:328
msgctxt "@info:tooltip"
msgid "How should the conflict in the material be resolved?"
msgstr "Hoe dient het materiaalconflict te worden opgelost?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:369
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:373
msgctxt "@action:label"
msgid "Setting visibility"
msgstr "Zichtbaarheid instellen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:378
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:382
msgctxt "@action:label"
msgid "Mode"
msgstr "Modus"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:394
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:398
msgctxt "@action:label"
msgid "Visible settings:"
msgstr "Zichtbare instellingen:"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:399
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:403
msgctxt "@action:label"
msgid "%1 out of %2"
msgstr "%1 van %2"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:425
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:429
msgctxt "@action:warning"
msgid "Loading a project will clear all models on the build plate."
msgstr "Als u een project laadt, worden alle modellen van het platform gewist."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:453
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:457
msgctxt "@action:button"
msgid "Open"
msgstr "Openen"
@@ -1784,7 +1890,10 @@ msgctxt "@description"
msgid "Backup and synchronize your Cura settings."
msgstr "Maak een back-up van uw Cura-instellingen en synchroniseer deze."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/qml/pages/WelcomePage.qml:51 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/WelcomePage.qml:39 /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:68 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:125
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/qml/pages/WelcomePage.qml:51
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/WelcomePage.qml:39
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:53
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:199
msgctxt "@button"
msgid "Sign in"
msgstr "Aanmelden"
@@ -1934,7 +2043,8 @@ msgctxt "@item:inlistbox"
msgid "Linear"
msgstr "Lineair"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:161 /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:172
+#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:161
+#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:172
msgctxt "@item:inlistbox"
msgid "Translucency"
msgstr "Doorschijnendheid"
@@ -1959,7 +2069,9 @@ msgctxt "@action:label"
msgid "Smoothing"
msgstr "Effenen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:227 /home/trin/Gedeeld/Projects/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:139 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:361
+#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:227
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:139
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:361
msgctxt "@action:button"
msgid "OK"
msgstr "OK"
@@ -1979,10 +2091,18 @@ msgctxt "@label"
msgid "Nozzle size"
msgstr "Maat nozzle"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:79 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:93 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:109
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:124 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:74 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:89
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:104 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:205 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:225
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:245 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:265 /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:283
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:79
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:93
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:109
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:124
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:74
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:89
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:104
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:205
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:225
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:245
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:265
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:283
msgctxt "@label"
msgid "mm"
msgstr "mm"
@@ -2007,12 +2127,12 @@ msgctxt "@label"
msgid "Cooling Fan Number"
msgstr "Nummer van koelventilator"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:162
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:163
msgctxt "@title:label"
msgid "Extruder Start G-code"
msgstr "Start-G-code van extruder"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:176
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:177
msgctxt "@title:label"
msgid "Extruder End G-code"
msgstr "Eind-G-code van extruder"
@@ -2097,12 +2217,17 @@ msgctxt "@label"
msgid "Number of Extruders"
msgstr "Aantal extruders"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:374
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:345
+msgctxt "@label"
+msgid "Apply Extruder offsets to GCode"
+msgstr "Pas extruderoffsets toe op GCode"
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:393
msgctxt "@title:label"
msgid "Start G-code"
msgstr "Start G-code"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:385
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:404
msgctxt "@title:label"
msgid "End G-code"
msgstr "Eind G-code"
@@ -2130,6 +2255,11 @@ msgctxt "@label link to technical assistance"
msgid "View user manuals online"
msgstr "Gebruikershandleidingen online weergegeven"
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MonitorStage/MonitorMain.qml:172
+msgctxt "@info"
+msgid "In order to monitor your print from Cura, please connect the printer."
+msgstr "Sluit de printer aan om uw printopdracht vanuit Cura te volgen."
+
#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml:42
msgctxt "@label"
msgid "Mesh Type"
@@ -2175,7 +2305,8 @@ msgctxt "@title:window"
msgid "Select Settings to Customize for this model"
msgstr "Instellingen Selecteren om Dit Model Aan te Passen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:55 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:94
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:55
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:96
msgctxt "@label:textbox"
msgid "Filter..."
msgstr "Filteren..."
@@ -2185,114 +2316,131 @@ msgctxt "@label:checkbox"
msgid "Show all"
msgstr "Alles weergeven"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:18
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:20
msgctxt "@title:window"
msgid "Post Processing Plugin"
msgstr "Invoegtoepassing voor Nabewerking"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:57
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:59
msgctxt "@label"
msgid "Post Processing Scripts"
msgstr "Scripts voor Nabewerking"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:233
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:235
msgctxt "@action"
msgid "Add a script"
msgstr "Een script toevoegen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:279
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:282
msgctxt "@label"
msgid "Settings"
msgstr "Instellingen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:499
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:502
msgctxt "@info:tooltip"
msgid "Change active post-processing scripts."
msgstr "Actieve scripts voor nabewerking wijzigen."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:503
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:506
msgctxt "@info:tooltip"
msgid "The following script is active:"
msgid_plural "The following scripts are active:"
msgstr[0] "Het volgende script is actief:"
msgstr[1] "De volgende scripts zijn actief:"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:20 /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:49
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:20
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:49
msgctxt "@label"
msgid "Color scheme"
msgstr "Kleurenschema"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:107
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:110
msgctxt "@label:listbox"
msgid "Material Color"
msgstr "Materiaalkleur"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:111
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:114
msgctxt "@label:listbox"
msgid "Line Type"
msgstr "Lijntype"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:115
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:118
msgctxt "@label:listbox"
msgid "Speed"
msgstr "Snelheid"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:119
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:122
msgctxt "@label:listbox"
-msgid "Layer thickness"
+msgid "Layer Thickness"
msgstr "Laagdikte"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:156
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:126
+msgctxt "@label:listbox"
+msgid "Line Width"
+msgstr "Lijnbreedte"
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:130
+msgctxt "@label:listbox"
+msgid "Flow"
+msgstr "Doorvoer"
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:171
msgctxt "@label"
msgid "Compatibility Mode"
msgstr "Compatibiliteitsmodus"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:230
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:245
msgctxt "@label"
msgid "Travels"
msgstr "Bewegingen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:236
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:251
msgctxt "@label"
msgid "Helpers"
msgstr "Helpers"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:242
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:257
msgctxt "@label"
msgid "Shell"
msgstr "Shell"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:248 /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedInfillDensitySelector.qml:65
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:263
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedInfillDensitySelector.qml:65
msgctxt "@label"
msgid "Infill"
msgstr "Vulling"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:298
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:271
+msgctxt "@label"
+msgid "Starts"
+msgstr "Wordt gestart"
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:322
msgctxt "@label"
msgid "Only Show Top Layers"
msgstr "Alleen bovenlagen weergegeven"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:308
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:332
msgctxt "@label"
msgid "Show 5 Detailed Layers On Top"
msgstr "5 gedetailleerde lagen bovenaan weergeven"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:322
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:346
msgctxt "@label"
msgid "Top / Bottom"
msgstr "Boven-/onderkant"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:326
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:350
msgctxt "@label"
msgid "Inner Wall"
msgstr "Binnenwand"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:384
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:419
msgctxt "@label"
msgid "min"
msgstr "min."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:433
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:488
msgctxt "@label"
msgid "max"
msgstr "max."
@@ -2367,7 +2515,8 @@ msgctxt "@action:label"
msgid "Website"
msgstr "Website"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:46 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxProgressButton.qml:20
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:46
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxProgressButton.qml:20
msgctxt "@action:button"
msgid "Installed"
msgstr "Geïnstalleerd"
@@ -2382,17 +2531,20 @@ msgctxt "@label:The string between and is the highlighted link"
msgid "Buy material spools"
msgstr "Materiaalspoelen kopen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:96 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxInstalledTileActions.qml:34
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:96
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxInstalledTileActions.qml:34
msgctxt "@action:button"
msgid "Update"
msgstr "Bijwerken"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:97 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxInstalledTileActions.qml:35
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:97
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxInstalledTileActions.qml:35
msgctxt "@action:button"
msgid "Updating"
msgstr "Bijwerken"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:98 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxInstalledTileActions.qml:36
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDetailTileActions.qml:98
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxInstalledTileActions.qml:36
msgctxt "@action:button"
msgid "Updated"
msgstr "Bijgewerkt"
@@ -2402,7 +2554,8 @@ msgctxt "@label"
msgid "Premium"
msgstr "Premium"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDownloadsShowcase.qml:39 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxHeader.qml:86
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxDownloadsShowcase.qml:39
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxHeader.qml:86
msgctxt "@info:tooltip"
msgid "Go to Web Marketplace"
msgstr "Ga naar Marketplace op internet"
@@ -2427,7 +2580,9 @@ msgctxt "@title:tab"
msgid "Plugins"
msgstr "Invoegtoepassingen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxHeader.qml:44 /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:466 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:89
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxHeader.qml:44
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:457
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:89
msgctxt "@title:tab"
msgid "Materials"
msgstr "Materialen"
@@ -2472,7 +2627,10 @@ msgctxt "@button"
msgid "Dismiss"
msgstr "Verwijderen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/dialogs/CompatibilityDialog.qml:23 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:123 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/FirstStartMachineActionsContent.qml:77
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/dialogs/CompatibilityDialog.qml:23
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:123
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/FirstStartMachineActionsContent.qml:77
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:178
msgctxt "@button"
msgid "Next"
msgstr "Volgende"
@@ -2537,7 +2695,8 @@ msgctxt "@label"
msgid "Last updated"
msgstr "Laatst bijgewerkt"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:103 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:138
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:103
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:138
msgctxt "@label"
msgid "Brand"
msgstr "Merk"
@@ -2667,7 +2826,10 @@ msgctxt "@action:button"
msgid "Edit"
msgstr "Bewerken"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:88 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:55 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:156 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:138
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:88
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:55
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:156
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:138
msgctxt "@action:button"
msgid "Remove"
msgstr "Verwijderen"
@@ -2682,17 +2844,20 @@ msgctxt "@label"
msgid "If your printer is not listed, read the network printing troubleshooting guide"
msgstr "Raadpleeg de handleiding voor probleemoplossing bij printen via het netwerk als uw printer niet in de lijst wordt vermeld"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:205 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:263
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:205
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:263
msgctxt "@label"
msgid "Type"
msgstr "Type"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:225 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:279
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:225
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:279
msgctxt "@label"
msgid "Firmware version"
msgstr "Firmwareversie"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:239 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:295
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:239
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:295
msgctxt "@label"
msgid "Address"
msgstr "Adres"
@@ -2722,7 +2887,8 @@ msgctxt "@title:window"
msgid "Invalid IP address"
msgstr "Ongeldig IP-adres"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:297 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:146
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:297
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:146
msgctxt "@text"
msgid "Please enter a valid IP address."
msgstr "Voer een geldig IP-adres in."
@@ -2732,7 +2898,8 @@ msgctxt "@title:window"
msgid "Printer Address"
msgstr "Printeradres"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:331 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:102
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:331
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:102
msgctxt "@label"
msgid "Enter the IP address of your printer on the network."
msgstr "Voer het IP-adres van uw printer in het netwerk in."
@@ -2784,7 +2951,9 @@ msgctxt "@label"
msgid "Override will use the specified settings with the existing printer configuration. This may result in a failed print."
msgstr "Met het overschrijven worden de opgegeven instellingen gebruikt met de bestaande printerconfiguratie. De print kan hierdoor mislukken."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:153 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:191 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:184
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:153
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:191
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:184
msgctxt "@label"
msgid "Glass"
msgstr "Glas"
@@ -2804,7 +2973,8 @@ msgctxt "@label"
msgid "Delete"
msgstr "Verwijderen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:100 /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:289
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:100
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:290
msgctxt "@label"
msgid "Resume"
msgstr "Hervatten"
@@ -2819,7 +2989,9 @@ msgctxt "@label"
msgid "Resuming..."
msgstr "Hervatten..."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:106 /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:284 /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:293
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:106
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:285
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:294
msgctxt "@label"
msgid "Pause"
msgstr "Pauzeren"
@@ -2859,7 +3031,8 @@ msgctxt "@label %1 is the name of a print job."
msgid "Are you sure you want to abort %1?"
msgstr "Weet u zeker dat u %1 wilt afbreken?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:164 /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:335
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:164
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:336
msgctxt "@window:title"
msgid "Abort print"
msgstr "Printen afbreken"
@@ -2869,7 +3042,9 @@ msgctxt "@label link to Connect and Cloud interfaces"
msgid "Manage printer"
msgstr "Printer beheren"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:254 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:519 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:250
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:254
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:523
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:250
msgctxt "@info"
msgid "Please update your printer's firmware to manage the queue remotely."
msgstr "Werk de firmware van uw printer bij om de wachtrij op afstand te beheren."
@@ -2894,27 +3069,34 @@ msgctxt "@label:status"
msgid "Idle"
msgstr "Inactief"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:365
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:364
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:84
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:86
+msgctxt "@label:status"
+msgid "Preparing..."
+msgstr "Voorbereiden..."
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:369
msgctxt "@label:status"
msgid "Printing"
msgstr "Printen"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:406
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:410
msgctxt "@label"
msgid "Untitled"
msgstr "Zonder titel"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:427
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:431
msgctxt "@label"
msgid "Anonymous"
msgstr "Anoniem"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:454
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:458
msgctxt "@label:status"
msgid "Requires configuration changes"
msgstr "Hiervoor zijn configuratiewijzigingen vereist"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:492
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:496
msgctxt "@action:button"
msgid "Details"
msgstr "Details"
@@ -2929,21 +3111,18 @@ msgctxt "@label"
msgid "First available"
msgstr "Eerst beschikbaar"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:78 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:90
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:78
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:90
msgctxt "@label:status"
msgid "Aborted"
msgstr "Afgebroken"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:80 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:82
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:80
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:82
msgctxt "@label:status"
msgid "Finished"
msgstr "Gereed"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:84 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:86
-msgctxt "@label:status"
-msgid "Preparing..."
-msgstr "Voorbereiden..."
-
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:88
msgctxt "@label:status"
msgid "Aborting..."
@@ -3024,26 +3203,27 @@ msgctxt "@action:button"
msgid "Sign in"
msgstr "Aanmelden"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:40
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:20
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:64
msgctxt "@label"
-msgid "Your key to connected 3D printing"
-msgstr "Uw sleutel tot verbonden 3D-printen"
+msgid "Sign in to the Ultimaker platform"
+msgstr "Meld u aan op het Ultimaker-platform"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:51
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:42
msgctxt "@text"
msgid ""
-"- Customize your experience with more print profiles and plugins\n"
-"- Stay flexible by syncing your setup and loading it anywhere\n"
-"- Increase efficiency with a remote workflow on Ultimaker printers"
+"- Add material profiles and plug-ins from the Marketplace\n"
+"- Back-up and sync your material profiles and plug-ins\n"
+"- Share ideas and get help from 48,000+ users in the Ultimaker community"
msgstr ""
-"- Pas uw ervaring aan met meer printprofielen en plug-ins\n"
-"- Blijf flexibel door uw instellingen te synchroniseren en overal te laden\n"
-"- Verhoog de efficiëntie met een externe workflow op Ultimaker-printers"
+"- Voeg materiaalprofielen en plug-ins toe uit de Marktplaats\n"
+"- Maak back-ups van uw materiaalprofielen en plug-ins en synchroniseer deze\n"
+"- Deel ideeën met 48.000+ gebruikers in de Ultimaker-community of vraag hen om ondersteuning"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:78 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:142
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:62
msgctxt "@button"
-msgid "Create account"
-msgstr "Account maken"
+msgid "Create a free Ultimaker account"
+msgstr "Maak een gratis Ultimaker-account aan"
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/SyncState.qml:28
msgctxt "@label"
@@ -3150,303 +3330,308 @@ msgctxt "@button"
msgid "Cancel"
msgstr "Annuleren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:82
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:83
msgctxt "@action:inmenu"
msgid "Show Online Troubleshooting Guide"
msgstr "Online gids voor probleemoplossing weergegeven"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:89
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:90
msgctxt "@action:inmenu"
msgid "Toggle Full Screen"
msgstr "Volledig Scherm In-/Uitschakelen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:97
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:98
msgctxt "@action:inmenu"
msgid "Exit Full Screen"
msgstr "Volledig scherm sluiten"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:104
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:105
msgctxt "@action:inmenu menubar:edit"
msgid "&Undo"
msgstr "Ongedaan &Maken"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:114
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:115
msgctxt "@action:inmenu menubar:edit"
msgid "&Redo"
msgstr "&Opnieuw"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:124
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:125
msgctxt "@action:inmenu menubar:file"
msgid "&Quit"
msgstr "&Afsluiten"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:132
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:133
msgctxt "@action:inmenu menubar:view"
msgid "3D View"
msgstr "3D-weergave"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:139
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:140
msgctxt "@action:inmenu menubar:view"
msgid "Front View"
msgstr "Weergave voorzijde"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:146
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:147
msgctxt "@action:inmenu menubar:view"
msgid "Top View"
msgstr "Weergave bovenzijde"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:153
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:154
+msgctxt "@action:inmenu menubar:view"
+msgid "Bottom View"
+msgstr "Aanzicht onderzijde"
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:161
msgctxt "@action:inmenu menubar:view"
msgid "Left Side View"
msgstr "Weergave linkerzijde"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:160
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:168
msgctxt "@action:inmenu menubar:view"
msgid "Right Side View"
msgstr "Weergave rechterzijde"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:167
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:175
msgctxt "@action:inmenu"
msgid "Configure Cura..."
msgstr "Cura Configureren..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:174
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:182
msgctxt "@action:inmenu menubar:printer"
msgid "&Add Printer..."
msgstr "&Printer Toevoegen..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:180
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:188
msgctxt "@action:inmenu menubar:printer"
msgid "Manage Pr&inters..."
msgstr "Pr&inters Beheren..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:187
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:195
msgctxt "@action:inmenu"
msgid "Manage Materials..."
msgstr "Materialen Beheren..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:195
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:203
msgctxt "@action:inmenu"
msgid "Add more materials from Marketplace"
msgstr "Meer materialen toevoegen van Marketplace"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:202
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:210
msgctxt "@action:inmenu menubar:profile"
msgid "&Update profile with current settings/overrides"
msgstr "Profiel bijwerken met h&uidige instellingen/overschrijvingen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:210
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:218
msgctxt "@action:inmenu menubar:profile"
msgid "&Discard current changes"
msgstr "Hui&dige wijzigingen verwijderen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:222
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:230
msgctxt "@action:inmenu menubar:profile"
msgid "&Create profile from current settings/overrides..."
msgstr "Profiel maken op basis van huidige instellingen/overs&chrijvingen..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:228
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:236
msgctxt "@action:inmenu menubar:profile"
msgid "Manage Profiles..."
msgstr "Profielen Beheren..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:236
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:244
msgctxt "@action:inmenu menubar:help"
msgid "Show Online &Documentation"
msgstr "Online &Documentatie Weergeven"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:244
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:252
msgctxt "@action:inmenu menubar:help"
msgid "Report a &Bug"
msgstr "Een &Bug Rapporteren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:252
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:260
msgctxt "@action:inmenu menubar:help"
msgid "What's New"
msgstr "Nieuwe functies"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:258
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:266
msgctxt "@action:inmenu menubar:help"
msgid "About..."
msgstr "Over..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:265
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:273
msgctxt "@action:inmenu menubar:edit"
-msgid "Delete Selected Model"
-msgid_plural "Delete Selected Models"
-msgstr[0] "Geselecteerd model verwijderen"
-msgstr[1] "Geselecteerde modellen verwijderen"
+msgid "Delete Selected"
+msgstr "Verwijder geselecteerde items"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:275
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:283
msgctxt "@action:inmenu menubar:edit"
-msgid "Center Selected Model"
-msgid_plural "Center Selected Models"
-msgstr[0] "Geselecteerd model centreren"
-msgstr[1] "Geselecteerde modellen centreren"
+msgid "Center Selected"
+msgstr "Centreer geselecteerde items"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:284
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:292
msgctxt "@action:inmenu menubar:edit"
-msgid "Multiply Selected Model"
-msgid_plural "Multiply Selected Models"
-msgstr[0] "Geselecteerd model verveelvoudigen"
-msgstr[1] "Geselecteerde modellen verveelvoudigen"
+msgid "Multiply Selected"
+msgstr "Verveelvoudig geselecteerde items"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:293
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:301
msgctxt "@action:inmenu"
msgid "Delete Model"
msgstr "Model Verwijderen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:301
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:309
msgctxt "@action:inmenu"
msgid "Ce&nter Model on Platform"
msgstr "Model op Platform Ce&ntreren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:307
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:315
msgctxt "@action:inmenu menubar:edit"
msgid "&Group Models"
msgstr "Modellen &Groeperen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:327
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:335
msgctxt "@action:inmenu menubar:edit"
msgid "Ungroup Models"
msgstr "Groeperen van Modellen Opheffen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:337
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:345
msgctxt "@action:inmenu menubar:edit"
msgid "&Merge Models"
msgstr "Modellen Samen&voegen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:347
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:355
msgctxt "@action:inmenu"
msgid "&Multiply Model..."
msgstr "&Model verveelvoudigen..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:354
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:362
msgctxt "@action:inmenu menubar:edit"
msgid "Select All Models"
msgstr "Alle Modellen Selecteren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:364
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:372
msgctxt "@action:inmenu menubar:edit"
msgid "Clear Build Plate"
msgstr "Platform Leegmaken"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:374
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:382
msgctxt "@action:inmenu menubar:file"
msgid "Reload All Models"
msgstr "Alle Modellen Opnieuw Laden"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:383
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:391
msgctxt "@action:inmenu menubar:edit"
msgid "Arrange All Models To All Build Plates"
msgstr "Alle modellen schikken op alle platformen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:390
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:398
msgctxt "@action:inmenu menubar:edit"
msgid "Arrange All Models"
msgstr "Alle modellen schikken"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:398
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:406
msgctxt "@action:inmenu menubar:edit"
msgid "Arrange Selection"
msgstr "Selectie schikken"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:405
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:413
msgctxt "@action:inmenu menubar:edit"
msgid "Reset All Model Positions"
msgstr "Alle Modelposities Herstellen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:412
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:420
msgctxt "@action:inmenu menubar:edit"
msgid "Reset All Model Transformations"
msgstr "Alle Modeltransformaties Herstellen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:419
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:429
msgctxt "@action:inmenu menubar:file"
msgid "&Open File(s)..."
msgstr "Bestand(en) &openen..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:427
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:439
msgctxt "@action:inmenu menubar:file"
msgid "&New Project..."
msgstr "&Nieuw project..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:434
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:446
msgctxt "@action:inmenu menubar:help"
msgid "Show Configuration Folder"
msgstr "Open Configuratiemap"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:441 /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:538
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:453
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:550
msgctxt "@action:menu"
msgid "Configure setting visibility..."
msgstr "Zichtbaarheid Instelling Configureren..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:448
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:460
msgctxt "@action:menu"
msgid "&Marketplace"
msgstr "&Marktplaats"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:266
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:257
msgctxt "@label"
msgid "This package will be installed after restarting."
msgstr "Dit package wordt na opnieuw starten geïnstalleerd."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:459 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:15
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:450
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:17
msgctxt "@title:tab"
msgid "General"
msgstr "Algemeen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:462
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:453
msgctxt "@title:tab"
msgid "Settings"
msgstr "Instellingen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:464 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:16
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:455
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:16
msgctxt "@title:tab"
msgid "Printers"
msgstr "Printers"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:468 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:34
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:459
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:34
msgctxt "@title:tab"
msgid "Profiles"
msgstr "Profielen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:587
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:576
msgctxt "@title:window %1 is the application name"
msgid "Closing %1"
msgstr "%1 wordt gesloten"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:588 /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:600
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:577
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:589
msgctxt "@label %1 is the application name"
msgid "Are you sure you want to exit %1?"
msgstr "Weet u zeker dat u %1 wilt afsluiten?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:638 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:19
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:627
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:19
msgctxt "@title:window"
msgid "Open file(s)"
msgstr "Bestand(en) openen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:744
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:737
msgctxt "@window:title"
msgid "Install Package"
msgstr "Package installeren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:752
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:745
msgctxt "@title:window"
msgid "Open File(s)"
msgstr "Bestand(en) openen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:755
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:748
msgctxt "@text:window"
msgid "We have found one or more G-Code files within the files you have selected. You can only open one G-Code file at a time. If you want to open a G-Code file, please just select only one."
msgstr "Binnen de door u geselecteerde bestanden zijn een of meer G-code-bestanden aangetroffen. U kunt maximaal één G-code-bestand tegelijk openen. Selecteer maximaal één bestand als u dit wilt openen als G-code-bestand."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:858
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:857
msgctxt "@title:window"
msgid "Add Printer"
msgstr "Printer Toevoegen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:866
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:865
msgctxt "@title:window"
msgid "What's New"
msgstr "Nieuwe functies"
@@ -3575,7 +3760,8 @@ msgctxt "@Label"
msgid "Static type checker for Python"
msgstr "Statische typecontrole voor Python"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:156 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:157
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:156
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:157
msgctxt "@Label"
msgid "Root Certificates for validating SSL trustworthiness"
msgstr "Rootcertificaten voor het valideren van SSL-betrouwbaarheid"
@@ -3595,17 +3781,27 @@ msgctxt "@label"
msgid "Python bindings for libnest2d"
msgstr "Pythonbindingen voor libnest2d"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:161
+msgctxt "@label"
+msgid "Support library for system keyring access"
+msgstr "Ondersteuningsbibliotheek voor toegang tot systeemkeyring"
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:162
msgctxt "@label"
+msgid "Python extensions for Microsoft Windows"
+msgstr "Pythonextensies voor Microsoft Windows"
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:163
+msgctxt "@label"
msgid "Font"
msgstr "Lettertype"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:163
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:164
msgctxt "@label"
msgid "SVG icons"
msgstr "SVG-pictogrammen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:164
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:165
msgctxt "@label"
msgid "Linux cross-distribution application deployment"
msgstr "Implementatie van Linux-toepassing voor kruisdistributie"
@@ -3615,22 +3811,22 @@ msgctxt "@title:window"
msgid "Open project file"
msgstr "Projectbestand openen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:93
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:88
msgctxt "@text:window"
msgid "This is a Cura project file. Would you like to open it as a project or import the models from it?"
msgstr "Dit is een Cura-projectbestand. Wilt u dit openen als project of de modellen eruit importeren?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:103
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:98
msgctxt "@text:window"
msgid "Remember my choice"
msgstr "Mijn keuze onthouden"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:122
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:117
msgctxt "@action:button"
msgid "Open as project"
msgstr "Openen als project"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:131
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:126
msgctxt "@action:button"
msgid "Import models"
msgstr "Modellen importeren"
@@ -3661,7 +3857,8 @@ msgctxt "@title:column"
msgid "Current changes"
msgstr "Huidige wijzigingen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:158 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:747
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:158
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:733
msgctxt "@option:discardOrKeep"
msgid "Always ask me this"
msgstr "Altijd vragen"
@@ -3686,12 +3883,12 @@ msgctxt "@action:button"
msgid "Keep changes"
msgstr "Wijzigingen behouden"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:64
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:59
msgctxt "@text:window"
msgid "We have found one or more project file(s) within the files you have selected. You can open only one project file at a time. We suggest to only import models from those files. Would you like to proceed?"
msgstr "Binnen de door u geselecteerde bestanden zijn een of meer projectbestanden aangetroffen. U kunt slechts één projectbestand tegelijk openen. Het wordt aangeraden alleen modellen uit deze bestanden te importeren. Wilt u verdergaan?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:99
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:94
msgctxt "@action:button"
msgid "Import all as models"
msgstr "Allemaal als model importeren"
@@ -3738,7 +3935,8 @@ msgctxt "@text Print job name"
msgid "Untitled"
msgstr "Zonder titel"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MainWindow/ApplicationMenu.qml:27 /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:13
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MainWindow/ApplicationMenu.qml:27
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:13
msgctxt "@title:menu menubar:toplevel"
msgid "&File"
msgstr "&Bestand"
@@ -3748,12 +3946,14 @@ msgctxt "@title:menu menubar:toplevel"
msgid "&Edit"
msgstr "B&ewerken"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MainWindow/ApplicationMenu.qml:49 /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:12
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MainWindow/ApplicationMenu.qml:49
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:12
msgctxt "@title:menu menubar:toplevel"
msgid "&View"
msgstr "Beel&d"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MainWindow/ApplicationMenu.qml:51 /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingsMenu.qml:13
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MainWindow/ApplicationMenu.qml:51
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingsMenu.qml:13
msgctxt "@title:menu menubar:toplevel"
msgid "&Settings"
msgstr "In&stellingen"
@@ -3843,7 +4043,7 @@ msgctxt "@label"
msgid "Material"
msgstr "Materiaal"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/CustomConfiguration.qml:394
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/CustomConfiguration.qml:407
msgctxt "@label"
msgid "Use glue for better adhesion with this material combination."
msgstr "Gebruik lijm bij deze combinatie van materialen voor een betere hechting."
@@ -3867,17 +4067,17 @@ msgctxt "@label"
msgid "Number of Copies"
msgstr "Aantal exemplaren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:33
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:41
msgctxt "@title:menu menubar:file"
msgid "&Save Project..."
msgstr "&Project opslaan..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:54
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:74
msgctxt "@title:menu menubar:file"
msgid "&Export..."
msgstr "&Exporteren..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:65
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:85
msgctxt "@action:inmenu menubar:file"
msgid "Export Selection..."
msgstr "Selectie Exporteren..."
@@ -3897,6 +4097,11 @@ msgctxt "@label:category menu label"
msgid "Generic"
msgstr "Standaard"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/OpenFilesMenu.qml:15
+msgctxt "@title:menu menubar:file"
+msgid "Open File(s)..."
+msgstr "Bestand(en) openen..."
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/PrinterMenu.qml:25
msgctxt "@label:category menu label"
msgid "Network enabled printers"
@@ -3912,6 +4117,11 @@ msgctxt "@title:menu menubar:file"
msgid "Open &Recent"
msgstr "&Recente bestanden openen"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SaveProjectMenu.qml:15
+msgctxt "@title:menu menubar:file"
+msgid "Save Project..."
+msgstr "Project opslaan..."
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingsMenu.qml:15
msgctxt "@title:menu menubar:settings"
msgid "&Printer"
@@ -3937,17 +4147,17 @@ msgctxt "@action:inmenu"
msgid "Disable Extruder"
msgstr "Extruder uitschakelen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:13
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:16
msgctxt "@action:inmenu"
msgid "Visible Settings"
msgstr "Zichtbare instellingen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:42
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:45
msgctxt "@action:inmenu"
msgid "Collapse All Categories"
msgstr "Alle categorieën samenvouwen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:51
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:54
msgctxt "@action:inmenu"
msgid "Manage Setting Visibility..."
msgstr "Instelling voor zichtbaarheid beheren..."
@@ -3957,22 +4167,22 @@ msgctxt "@action:inmenu menubar:view"
msgid "&Camera position"
msgstr "&Camerapositie"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:44
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:45
msgctxt "@action:inmenu menubar:view"
msgid "Camera view"
msgstr "Camerabeeld"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:47
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:48
msgctxt "@action:inmenu menubar:view"
msgid "Perspective"
msgstr "Perspectief"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:59
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:60
msgctxt "@action:inmenu menubar:view"
msgid "Orthographic"
msgstr "Orthografisch"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:80
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:81
msgctxt "@action:inmenu menubar:view"
msgid "&Build plate"
msgstr "&Platform"
@@ -4017,12 +4227,12 @@ msgctxt "@label:MonitorStatus"
msgid "Please remove the print"
msgstr "Verwijder de print"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:325
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:326
msgctxt "@label"
msgid "Abort Print"
msgstr "Printen Afbreken"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:337
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:338
msgctxt "@label"
msgid "Are you sure you want to abort the print?"
msgstr "Weet u zeker dat u het printen wilt afbreken?"
@@ -4064,310 +4274,314 @@ msgctxt "@label"
msgid "Interface"
msgstr "Interface"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:216
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:209
msgctxt "@label"
msgid "Currency:"
msgstr "Valuta:"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:229
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:222
msgctxt "@label"
msgid "Theme:"
msgstr "Thema:"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:285
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:267
msgctxt "@label"
msgid "You will need to restart the application for these changes to have effect."
msgstr "U moet de toepassing opnieuw starten voordat deze wijzigingen van kracht worden."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:302
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:284
msgctxt "@info:tooltip"
msgid "Slice automatically when changing settings."
msgstr "Automatisch slicen bij wijzigen van instellingen."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:310
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:292
msgctxt "@option:check"
msgid "Slice automatically"
msgstr "Automatisch slicen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:324
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:306
msgctxt "@label"
msgid "Viewport behavior"
msgstr "Gedrag kijkvenster"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:332
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:314
msgctxt "@info:tooltip"
msgid "Highlight unsupported areas of the model in red. Without support these areas will not print properly."
msgstr "Geef niet-ondersteunde gedeelten van het model een rode markering. Zonder ondersteuning zullen deze gedeelten niet goed worden geprint."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:341
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:323
msgctxt "@option:check"
msgid "Display overhang"
msgstr "Overhang weergeven"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:351
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:333
msgctxt "@info:tooltip"
msgid "Highlight missing or extraneous surfaces of the model using warning signs. The toolpaths will often be missing parts of the intended geometry."
msgstr "Markeer ontbrekende of ongebruikelijke oppervlakken van het model met behulp van waarschuwingstekens. De toolpaths zullen vaak delen van de beoogde geometrie missen."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:360
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:342
msgctxt "@option:check"
msgid "Display model errors"
msgstr "Modelfouten weergeven"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:368
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:350
msgctxt "@info:tooltip"
msgid "Moves the camera so the model is in the center of the view when a model is selected"
msgstr "Verplaatst de camera zodanig dat wanneer een model wordt geselecteerd, het model in het midden van het beeld wordt weergegeven"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:373
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:355
msgctxt "@action:button"
msgid "Center camera when item is selected"
msgstr "Camera centreren wanneer een item wordt geselecteerd"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:383
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:365
msgctxt "@info:tooltip"
msgid "Should the default zoom behavior of cura be inverted?"
msgstr "Moet het standaard zoomgedrag van Cura worden omgekeerd?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:388
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:370
msgctxt "@action:button"
msgid "Invert the direction of camera zoom."
msgstr "Keer de richting van de camerazoom om."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:404
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:386
msgctxt "@info:tooltip"
msgid "Should zooming move in the direction of the mouse?"
msgstr "Moet het zoomen in de richting van de muis gebeuren?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:404
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:386
msgctxt "@info:tooltip"
msgid "Zooming towards the mouse is not supported in the orthographic perspective."
msgstr "Zoomen in de richting van de muis wordt niet ondersteund in het orthografische perspectief."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:409
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:391
msgctxt "@action:button"
msgid "Zoom toward mouse direction"
msgstr "Zoomen in de richting van de muis"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:435
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:417
msgctxt "@info:tooltip"
msgid "Should models on the platform be moved so that they no longer intersect?"
msgstr "Moeten modellen op het platform zodanig worden verplaatst dat ze elkaar niet meer doorsnijden?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:440
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:422
msgctxt "@option:check"
msgid "Ensure models are kept apart"
msgstr "Modellen gescheiden houden"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:449
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:431
msgctxt "@info:tooltip"
msgid "Should models on the platform be moved down to touch the build plate?"
msgstr "Moeten modellen in het printgebied omlaag worden gebracht zodat ze het platform raken?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:454
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:436
msgctxt "@option:check"
msgid "Automatically drop models to the build plate"
msgstr "Modellen automatisch op het platform laten vallen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:466
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:448
msgctxt "@info:tooltip"
msgid "Show caution message in g-code reader."
msgstr "Toon het waarschuwingsbericht in de G-code-lezer."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:475
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:457
msgctxt "@option:check"
msgid "Caution message in g-code reader"
msgstr "Waarschuwingsbericht in de G-code-lezer"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:483
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:465
msgctxt "@info:tooltip"
msgid "Should layer be forced into compatibility mode?"
msgstr "Moet de laag in de compatibiliteitsmodus worden geforceerd?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:488
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:470
msgctxt "@option:check"
msgid "Force layer view compatibility mode (restart required)"
msgstr "Compatibiliteitsmodus voor laagweergave forceren (opnieuw opstarten vereist)"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:498
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:480
msgctxt "@info:tooltip"
msgid "Should Cura open at the location it was closed?"
msgstr "Moet Cura openen op de locatie waar het gesloten werd?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:503
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:485
msgctxt "@option:check"
msgid "Restore window position on start"
msgstr "Herstel de vensterpositie bij het opstarten"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:513
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:495
msgctxt "@info:tooltip"
msgid "What type of camera rendering should be used?"
msgstr "Welk type cameraweergave moet worden gebruikt?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:520
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:502
msgctxt "@window:text"
msgid "Camera rendering:"
msgstr "Cameraweergave:"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:531
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:509
msgid "Perspective"
msgstr "Perspectief"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:532
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:510
msgid "Orthographic"
msgstr "Orthografisch"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:563
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:548
msgctxt "@label"
msgid "Opening and saving files"
msgstr "Bestanden openen en opslaan"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:570
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:555
msgctxt "@info:tooltip"
msgid "Should opening files from the desktop or external applications open in the same instance of Cura?"
msgstr "Wilt u dat bestanden vanaf de desktop of externe toepassingen in dezelfde instantie van Cura worden geopend?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:575
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:560
msgctxt "@option:check"
msgid "Use a single instance of Cura"
msgstr "Gebruik één instantie van Cura"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:585
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:570
msgctxt "@info:tooltip"
msgid "Should models be scaled to the build volume if they are too large?"
msgstr "Moeten modellen worden geschaald naar het werkvolume als ze te groot zijn?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:590
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:575
msgctxt "@option:check"
msgid "Scale large models"
msgstr "Grote modellen schalen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:600
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:585
msgctxt "@info:tooltip"
msgid "An model may appear extremely small if its unit is for example in meters rather than millimeters. Should these models be scaled up?"
msgstr "Een model wordt mogelijk extreem klein weergegeven als de eenheden bijvoorbeeld in meters zijn in plaats van in millimeters. Moeten dergelijke modellen worden opgeschaald?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:605
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:590
msgctxt "@option:check"
msgid "Scale extremely small models"
msgstr "Extreem kleine modellen schalen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:615
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:600
msgctxt "@info:tooltip"
msgid "Should models be selected after they are loaded?"
msgstr "Moeten modellen worden geselecteerd nadat ze zijn geladen?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:620
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:605
msgctxt "@option:check"
msgid "Select models when loaded"
msgstr "Modellen selecteren wanneer ze geladen zijn"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:630
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:615
msgctxt "@info:tooltip"
msgid "Should a prefix based on the printer name be added to the print job name automatically?"
msgstr "Moet er automatisch een op de printernaam gebaseerde voorvoegsel aan de naam van de printtaak worden toegevoegd?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:635
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:620
msgctxt "@option:check"
msgid "Add machine prefix to job name"
msgstr "Machinevoorvoegsel toevoegen aan taaknaam"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:645
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:630
msgctxt "@info:tooltip"
msgid "Should a summary be shown when saving a project file?"
msgstr "Dient er een samenvatting te worden weergegeven wanneer een projectbestand wordt opgeslagen?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:649
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:634
msgctxt "@option:check"
msgid "Show summary dialog when saving project"
msgstr "Dialoogvenster voor samenvatting weergeven tijdens het opslaan van een project"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:659
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:644
msgctxt "@info:tooltip"
msgid "Default behavior when opening a project file"
msgstr "Standaardgedrag tijdens het openen van een projectbestand"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:667
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:652
msgctxt "@window:text"
msgid "Default behavior when opening a project file: "
msgstr "Standaardgedrag tijdens het openen van een projectbestand: "
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:681
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:666
msgctxt "@option:openProject"
msgid "Always ask me this"
msgstr "Altijd vragen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:682
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:667
msgctxt "@option:openProject"
msgid "Always open as a project"
msgstr "Altijd als project openen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:683
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:668
msgctxt "@option:openProject"
msgid "Always import models"
msgstr "Altijd modellen importeren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:719
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:705
msgctxt "@info:tooltip"
msgid "When you have made changes to a profile and switched to a different one, a dialog will be shown asking whether you want to keep your modifications or not, or you can choose a default behaviour and never show that dialog again."
msgstr "Wanneer u wijzigingen hebt aangebracht aan een profiel en naar een ander profiel wisselt, wordt een dialoogvenster weergegeven waarin u wordt gevraagd of u de aanpassingen wilt behouden. U kunt ook een standaardgedrag kiezen en het dialoogvenster nooit meer laten weergeven."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:728 /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedQualityProfileSelector.qml:52
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:714
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedQualityProfileSelector.qml:52
msgctxt "@label"
msgid "Profiles"
msgstr "Profielen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:733
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:719
msgctxt "@window:text"
msgid "Default behavior for changed setting values when switching to a different profile: "
msgstr "Standaardgedrag voor gewijzigde instellingen wanneer er naar een ander profiel wordt overgeschakeld: "
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:748
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:734
msgctxt "@option:discardOrKeep"
msgid "Always discard changed settings"
msgstr "Gewijzigde instellingen altijd verwijderen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:749
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:735
msgctxt "@option:discardOrKeep"
msgid "Always transfer changed settings to new profile"
msgstr "Gewijzigde instellingen altijd naar nieuw profiel overbrengen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:783
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:770
msgctxt "@label"
msgid "Privacy"
msgstr "Privacy"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:790
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:777
msgctxt "@info:tooltip"
msgid "Should Cura check for updates when the program is started?"
msgstr "Moet Cura op updates controleren wanneer het programma wordt gestart?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:795
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:782
msgctxt "@option:check"
msgid "Check for updates on start"
msgstr "Bij starten op updates controleren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:805
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:792
msgctxt "@info:tooltip"
msgid "Should anonymous data about your print be sent to Ultimaker? Note, no models, IP addresses or other personally identifiable information is sent or stored."
msgstr "Mogen anonieme gegevens over uw print naar Ultimaker worden verzonden? Opmerking: er worden geen modellen, IP-adressen of andere persoonlijk identificeerbare gegevens verzonden of opgeslagen."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:810
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:797
msgctxt "@option:check"
msgid "Send (anonymous) print information"
msgstr "(Anonieme) printgegevens verzenden"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:819
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:806
msgctxt "@action:button"
msgid "More information"
msgstr "Meer informatie"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:40 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:108 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:84
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:40
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:108
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:84
msgctxt "@action:button"
msgid "Activate"
msgstr "Activeren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:63 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:152
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:63
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:152
msgctxt "@action:button"
msgid "Rename"
msgstr "Hernoemen"
@@ -4382,61 +4596,77 @@ msgctxt "@action:button"
msgid "Duplicate"
msgstr "Dupliceren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:171 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:167
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:171
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:167
msgctxt "@action:button"
msgid "Import"
msgstr "Importeren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:185 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:179
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:185
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:179
msgctxt "@action:button"
msgid "Export"
msgstr "Exporteren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:234
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:199
+msgctxt "@action:button Sending materials to printers"
+msgid "Sync with Printers"
+msgstr "Synchroniseren met printers"
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:248
msgctxt "@action:label"
msgid "Printer"
msgstr "Printer"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:298 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:274
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:312
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:277
msgctxt "@title:window"
msgid "Confirm Remove"
msgstr "Verwijderen Bevestigen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:301 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:275
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:315
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:278
msgctxt "@label (%1 is object name)"
msgid "Are you sure you wish to remove %1? This cannot be undone!"
msgstr "Weet u zeker dat u %1 wilt verwijderen? Deze bewerking kan niet ongedaan worden gemaakt!"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:315 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:323
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:329
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:337
msgctxt "@title:window"
msgid "Import Material"
msgstr "Materiaal Importeren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:324
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:338
msgctxt "@info:status Don't translate the XML tags or !"
msgid "Could not import material %1: %2"
msgstr "Kon materiaal %1 niet importeren: %2"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:328
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:342
msgctxt "@info:status Don't translate the XML tag !"
msgid "Successfully imported material %1"
msgstr "Materiaal %1 is geïmporteerd"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:346 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:354
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:360
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:368
msgctxt "@title:window"
msgid "Export Material"
msgstr "Materiaal Exporteren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:358
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:372
msgctxt "@info:status Don't translate the XML tags and !"
msgid "Failed to export material to %1: %2"
msgstr "Exporteren van materiaal naar %1 is mislukt: %2"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:364
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:378
msgctxt "@info:status Don't translate the XML tag !"
msgid "Successfully exported material to %1"
msgstr "Materiaal is geëxporteerd naar %1"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:388
+msgctxt "@title:window"
+msgid "Export All Materials"
+msgstr "Alle materialen exporteren"
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:72
msgctxt "@title"
msgid "Information"
@@ -4522,7 +4752,8 @@ msgctxt "@label"
msgid "Adhesion Information"
msgstr "Gegevens Hechting"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:374 /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/PrintSetupSelector.qml:19
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:374
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/PrintSetupSelector.qml:19
msgctxt "@label"
msgid "Print settings"
msgstr "Instellingen voor printen"
@@ -4547,52 +4778,53 @@ msgctxt "@info"
msgid "Please provide a name for this profile."
msgstr "Geef een naam op voor dit profiel."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:260
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:263
msgctxt "@title:window"
msgid "Duplicate Profile"
msgstr "Profiel Dupliceren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:291
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:294
msgctxt "@title:window"
msgid "Rename Profile"
msgstr "Profiel Hernoemen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:304
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:307
msgctxt "@title:window"
msgid "Import Profile"
msgstr "Profiel Importeren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:333
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:336
msgctxt "@title:window"
msgid "Export Profile"
msgstr "Profiel Exporteren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:396
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:399
msgctxt "@label %1 is printer name"
msgid "Printer: %1"
msgstr "Printer: %1"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:554
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:557
msgctxt "@action:button"
msgid "Update profile with current settings/overrides"
msgstr "Profiel bijwerken met huidige instellingen/overschrijvingen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:561 /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Custom/QualitiesWithIntentMenu.qml:244
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:564
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Custom/QualitiesWithIntentMenu.qml:244
msgctxt "@action:button"
msgid "Discard current changes"
msgstr "Huidige wijzigingen verwijderen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:580
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:583
msgctxt "@action:label"
msgid "This profile uses the defaults specified by the printer, so it has no settings/overrides in the list below."
msgstr "Dit profiel gebruikt de standaardinstellingen die door de printer zijn opgegeven, dus er zijn hiervoor geen instellingen/overschrijvingen in de onderstaande lijst."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:588
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:591
msgctxt "@action:label"
msgid "Your current settings match the selected profile."
msgstr "Uw huidige instellingen komen overeen met het geselecteerde profiel."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:606
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:609
msgctxt "@title:tab"
msgid "Global Settings"
msgstr "Algemene Instellingen"
@@ -4622,12 +4854,12 @@ msgctxt "@title:column"
msgid "Unit"
msgstr "Eenheid"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:14
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:16
msgctxt "@title:tab"
msgid "Setting Visibility"
msgstr "Zichtbaarheid Instellen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:46
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:48
msgctxt "@label:textbox"
msgid "Check all"
msgstr "Alles aanvinken"
@@ -4652,12 +4884,14 @@ msgctxt "@tooltip of temperature input"
msgid "The temperature to pre-heat the hotend to."
msgstr "De temperatuur waarnaar het hotend moet worden voorverwarmd."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:341 /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:332
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:341
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:332
msgctxt "@button Cancel pre-heating"
msgid "Cancel"
msgstr "Annuleren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:344 /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:335
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/ExtruderBox.qml:344
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrinterOutput/HeatedBedBox.qml:335
msgctxt "@button"
msgid "Pre-heat"
msgstr "Voorverwarmen"
@@ -4963,27 +5197,27 @@ msgctxt "@label:textbox"
msgid "Search settings"
msgstr "Instellingen zoeken"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:456
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:468
msgctxt "@action:menu"
msgid "Copy value to all extruders"
msgstr "Waarde naar alle extruders kopiëren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:465
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:477
msgctxt "@action:menu"
msgid "Copy all changed values to all extruders"
msgstr "Alle gewijzigde waarden naar alle extruders kopiëren"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:502
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:514
msgctxt "@action:menu"
msgid "Hide this setting"
msgstr "Deze instelling verbergen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:515
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:527
msgctxt "@action:menu"
msgid "Don't show this setting"
msgstr "Deze instelling verbergen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:519
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:531
msgctxt "@action:menu"
msgid "Keep this setting visible"
msgstr "Deze instelling zichtbaar houden"
@@ -5043,11 +5277,6 @@ msgctxt "@button"
msgid "Add printer manually"
msgstr "Printer handmatig toevoegen"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddCloudPrintersView.qml:218
-msgctxt "@button"
-msgid "Finish"
-msgstr "Voltooien"
-
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddLocalPrinterScrollView.qml:230
msgctxt "@label"
msgid "Manufacturer"
@@ -5128,7 +5357,8 @@ msgctxt "@label"
msgid "Could not connect to device."
msgstr "Kan geen verbinding maken met het apparaat."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:207 /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:212
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:207
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddPrinterByIpContent.qml:212
msgctxt "@label"
msgid "Can't connect to your Ultimaker printer?"
msgstr "Kunt u geen verbinding maken met uw Ultimaker-printer?"
@@ -5153,32 +5383,32 @@ msgctxt "@button"
msgid "Connect"
msgstr "Verbinding maken"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:43
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/ChangelogContent.qml:24
msgctxt "@label"
-msgid "Ultimaker Account"
-msgstr "Ultimaker-account"
+msgid "Release Notes"
+msgstr "Release notes"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:84
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:124
msgctxt "@text"
-msgid "Your key to connected 3D printing"
-msgstr "Uw sleutel tot verbonden 3D-printen"
+msgid "Add material settings and plugins from the Marketplace"
+msgstr "Voeg materiaalinstellingen en plugins uit de Marktplaats toe"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:101
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:154
msgctxt "@text"
-msgid "- Customize your experience with more print profiles and plugins"
-msgstr "- Pas uw ervaring aan met meer printprofielen en plug-ins"
+msgid "Backup and sync your material settings and plugins"
+msgstr "Maak een back-up van uw materiaalinstellingen en plug-ins en synchroniseer deze"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:104
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:184
msgctxt "@text"
-msgid "- Stay flexible by syncing your setup and loading it anywhere"
-msgstr "- Blijf flexibel door uw instellingen te synchroniseren en overal te laden"
+msgid "Share ideas and get help from 48,000+ users in the Ultimaker Community"
+msgstr "Deel ideeën met 48,000+ gebruikers in de Ultimaker Community of vraag hen om ondersteuning"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:107
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:217
msgctxt "@text"
-msgid "- Increase efficiency with a remote workflow on Ultimaker printers"
-msgstr "- Verhoog de efficiëntie met een externe workflow op Ultimaker-printers"
+msgid "Create a free Ultimaker Account"
+msgstr "Maak een gratis Ultimaker-account aan"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:157
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:230
msgctxt "@button"
msgid "Skip"
msgstr "Overslaan"
@@ -5238,29 +5468,32 @@ msgctxt "@button"
msgid "Decline and close"
msgstr "Afwijzen en sluiten"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:29
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:56
msgctxt "@label"
msgid "Welcome to Ultimaker Cura"
msgstr "Welkom bij Ultimaker Cura"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:47
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:68
msgctxt "@text"
-msgid ""
-"Please follow these steps to set up\n"
-"Ultimaker Cura. This will only take a few moments."
+msgid "Please follow these steps to set up Ultimaker Cura. This will only take a few moments."
msgstr ""
"Volg deze stappen voor het instellen van\n"
"Ultimaker Cura. Dit duurt slechts even."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:58
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:86
msgctxt "@button"
msgid "Get started"
msgstr "Aan de slag"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:24
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:28
msgctxt "@label"
-msgid "What's new in Ultimaker Cura"
-msgstr "Nieuwe functies in Ultimaker Cura"
+msgid "What's New"
+msgstr "Nieuwe functies"
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Widgets/ComboBox.qml:24
+msgctxt "@label"
+msgid "No items to select from"
+msgstr "Geen items om uit te kiezen"
#: ModelChecker/plugin.json
msgctxt "description"
@@ -5342,6 +5575,16 @@ msgctxt "name"
msgid "Cura Profile Writer"
msgstr "Cura-profielschrijver"
+#: DigitalLibrary/plugin.json
+msgctxt "description"
+msgid "Connects to the Digital Library, allowing Cura to open files from and save files to the Digital Library."
+msgstr "Maakt verbinding met de digitale bibliotheek, zodat Cura bestanden kan openen vanuit, en bestanden kan opslaan in, de digitale bibliotheek."
+
+#: DigitalLibrary/plugin.json
+msgctxt "name"
+msgid "Ultimaker Digital Library"
+msgstr "Ultimaker Digital Library"
+
#: FirmwareUpdateChecker/plugin.json
msgctxt "description"
msgid "Checks for firmware updates."
@@ -5812,6 +6055,26 @@ msgctxt "name"
msgid "Version Upgrade 4.7 to 4.8"
msgstr "Versie-upgrade van 4.7 naar 4.8"
+#: VersionUpgrade/VersionUpgrade48to49/plugin.json
+msgctxt "description"
+msgid "Upgrades configurations from Cura 4.8 to Cura 4.9."
+msgstr "Hiermee worden configuraties bijgewerkt van Cura 4.7 naar Cura 4.9."
+
+#: VersionUpgrade/VersionUpgrade48to49/plugin.json
+msgctxt "name"
+msgid "Version Upgrade 4.8 to 4.9"
+msgstr "Versie-upgrade van 4.8 naar 4.9"
+
+#: VersionUpgrade/VersionUpgrade49to410/plugin.json
+msgctxt "description"
+msgid "Upgrades configurations from Cura 4.9 to Cura 4.10."
+msgstr "Hiermee worden configuraties bijgewerkt van Cura 4.9 naar Cura 4.10."
+
+#: VersionUpgrade/VersionUpgrade49to410/plugin.json
+msgctxt "name"
+msgid "Version Upgrade 4.9 to 4.10"
+msgstr "Versie-upgrade 4.9 naar 4.10"
+
#: X3DReader/plugin.json
msgctxt "description"
msgid "Provides support for reading X3D files."
@@ -5842,6 +6105,94 @@ msgctxt "name"
msgid "X-Ray View"
msgstr "Röntgenweergave"
+#~ msgctxt "@info:status"
+#~ msgid "Global stack is missing."
+#~ msgstr "Algemene stapel ontbreekt."
+
+#~ msgctxt "@info:status"
+#~ msgid "Your model is not manifold. The highlighted areas indicate either missing or extraneous surfaces."
+#~ msgstr "Uw model is niet veelvoudig. De gemarkeerde gebieden geven ofwel ontbrekende of ongebruikelijke oppervlakken aan."
+
+#~ msgctxt "@info:title"
+#~ msgid "Model errors"
+#~ msgstr "Modelfouten"
+
+#~ msgctxt "@label:listbox"
+#~ msgid "Layer thickness"
+#~ msgstr "Laagdikte"
+
+#~ msgctxt "@label"
+#~ msgid "Your key to connected 3D printing"
+#~ msgstr "Uw sleutel tot verbonden 3D-printen"
+
+#~ msgctxt "@text"
+#~ msgid ""
+#~ "- Customize your experience with more print profiles and plugins\n"
+#~ "- Stay flexible by syncing your setup and loading it anywhere\n"
+#~ "- Increase efficiency with a remote workflow on Ultimaker printers"
+#~ msgstr ""
+#~ "- Pas uw ervaring aan met meer printprofielen en plug-ins\n"
+#~ "- Blijf flexibel door uw instellingen te synchroniseren en overal te laden\n"
+#~ "- Verhoog de efficiëntie met een externe workflow op Ultimaker-printers"
+
+#~ msgctxt "@button"
+#~ msgid "Create account"
+#~ msgstr "Account maken"
+
+#~ msgctxt "@action:inmenu menubar:edit"
+#~ msgid "Delete Selected Model"
+#~ msgid_plural "Delete Selected Models"
+#~ msgstr[0] "Geselecteerd model verwijderen"
+#~ msgstr[1] "Geselecteerde modellen verwijderen"
+
+#~ msgctxt "@action:inmenu menubar:edit"
+#~ msgid "Center Selected Model"
+#~ msgid_plural "Center Selected Models"
+#~ msgstr[0] "Geselecteerd model centreren"
+#~ msgstr[1] "Geselecteerde modellen centreren"
+
+#~ msgctxt "@action:inmenu menubar:edit"
+#~ msgid "Multiply Selected Model"
+#~ msgid_plural "Multiply Selected Models"
+#~ msgstr[0] "Geselecteerd model verveelvoudigen"
+#~ msgstr[1] "Geselecteerde modellen verveelvoudigen"
+
+#~ msgctxt "@button"
+#~ msgid "Finish"
+#~ msgstr "Voltooien"
+
+#~ msgctxt "@label"
+#~ msgid "Ultimaker Account"
+#~ msgstr "Ultimaker-account"
+
+#~ msgctxt "@text"
+#~ msgid "Your key to connected 3D printing"
+#~ msgstr "Uw sleutel tot verbonden 3D-printen"
+
+#~ msgctxt "@text"
+#~ msgid "- Customize your experience with more print profiles and plugins"
+#~ msgstr "- Pas uw ervaring aan met meer printprofielen en plug-ins"
+
+#~ msgctxt "@text"
+#~ msgid "- Stay flexible by syncing your setup and loading it anywhere"
+#~ msgstr "- Blijf flexibel door uw instellingen te synchroniseren en overal te laden"
+
+#~ msgctxt "@text"
+#~ msgid "- Increase efficiency with a remote workflow on Ultimaker printers"
+#~ msgstr "- Verhoog de efficiëntie met een externe workflow op Ultimaker-printers"
+
+#~ msgctxt "@text"
+#~ msgid ""
+#~ "Please follow these steps to set up\n"
+#~ "Ultimaker Cura. This will only take a few moments."
+#~ msgstr ""
+#~ "Volg deze stappen voor het instellen van\n"
+#~ "Ultimaker Cura. Dit duurt slechts even."
+
+#~ msgctxt "@label"
+#~ msgid "What's new in Ultimaker Cura"
+#~ msgstr "Nieuwe functies in Ultimaker Cura"
+
#~ msgctxt "@label ({} is object name)"
#~ msgid "Are you sure you wish to remove {}? This cannot be undone!"
#~ msgstr "Weet u zeker dat u {} wilt verwijderen? Deze bewerking kan niet ongedaan worden gemaakt."
diff --git a/resources/i18n/nl_NL/fdmextruder.def.json.po b/resources/i18n/nl_NL/fdmextruder.def.json.po
index 61b993cdb3..72fde7bd7a 100644
--- a/resources/i18n/nl_NL/fdmextruder.def.json.po
+++ b/resources/i18n/nl_NL/fdmextruder.def.json.po
@@ -1,19 +1,20 @@
# Cura
-# Copyright (C) 2020 Ultimaker B.V.
+# Copyright (C) 2021 Ultimaker B.V.
# This file is distributed under the same license as the Cura package.
#
msgid ""
msgstr ""
-"Project-Id-Version: Cura 4.8\n"
+"Project-Id-Version: Cura 4.10\n"
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
-"POT-Creation-Date: 2020-10-19 13:15+0000\n"
-"PO-Revision-Date: 2019-03-13 14:00+0200\n"
+"POT-Creation-Date: 2021-06-10 17:35+0000\n"
+"PO-Revision-Date: 2021-04-16 15:03+0200\n"
"Last-Translator: Bothof \n"
"Language-Team: Dutch\n"
"Language: nl_NL\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 2.4.1\n"
#: fdmextruder.def.json
msgctxt "machine_settings label"
diff --git a/resources/i18n/nl_NL/fdmprinter.def.json.po b/resources/i18n/nl_NL/fdmprinter.def.json.po
index 90db586658..ee37cee494 100644
--- a/resources/i18n/nl_NL/fdmprinter.def.json.po
+++ b/resources/i18n/nl_NL/fdmprinter.def.json.po
@@ -1,20 +1,20 @@
# Cura
-# Copyright (C) 2020 Ultimaker B.V.
+# Copyright (C) 2021 Ultimaker B.V.
# This file is distributed under the same license as the Cura package.
#
msgid ""
msgstr ""
-"Project-Id-Version: Cura 4.8\n"
+"Project-Id-Version: Cura 4.10\n"
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
-"POT-Creation-Date: 2020-10-19 13:15+0000\n"
-"PO-Revision-Date: 2020-08-21 13:40+0200\n"
+"POT-Creation-Date: 2021-06-10 17:35+0000\n"
+"PO-Revision-Date: 2021-04-16 15:03+0200\n"
"Last-Translator: Lionbridge \n"
"Language-Team: Dutch , Dutch \n"
"Language: nl_NL\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: Poedit 2.0.6\n"
+"X-Generator: Poedit 2.4.1\n"
#: fdmprinter.def.json
msgctxt "machine_settings label"
@@ -419,6 +419,26 @@ msgctxt "machine_extruders_share_heater description"
msgid "Whether the extruders share a single heater rather than each extruder having its own heater."
msgstr "Hiermee bepaalt u of de extruders één verwarming delen in plaats van dat elke extruder zijn eigen verwarming heeft."
+#: fdmprinter.def.json
+msgctxt "machine_extruders_share_nozzle label"
+msgid "Extruders Share Nozzle"
+msgstr "Extruders delen nozzle"
+
+#: fdmprinter.def.json
+msgctxt "machine_extruders_share_nozzle description"
+msgid "Whether the extruders share a single nozzle rather than each extruder having its own nozzle. When set to true, it is expected that the printer-start gcode script properly sets up all extruders in an initial retraction state that is known and mutually compatible (either zero or one filament not retracted); in that case the initial retraction status is described, per extruder, by the 'machine_extruders_shared_nozzle_initial_retraction' parameter."
+msgstr "Hiermee bepaalt u of de extruders één nozzle delen in plaats van dat elke extruder zijn eigen nozzle heeft. Wanneer dit wordt ingesteld op 'true', wordt verwacht dat het G-code-script voor het opstarten van de printer alle extruders correct instelt in een initiële intrekstatus die bekend is en onderling compatibel is (nul of één filament niet ingetrokken). In dat geval wordt de initiële intrekstatus per extruder beschreven door de parameter 'machine_extruders_shared_nozzle_initial_retraction'."
+
+#: fdmprinter.def.json
+msgctxt "machine_extruders_shared_nozzle_initial_retraction label"
+msgid "Shared Nozzle Initial Retraction"
+msgstr "Initiële terugtrekking gedeelde nozzle"
+
+#: fdmprinter.def.json
+msgctxt "machine_extruders_shared_nozzle_initial_retraction description"
+msgid "How much the filament of each extruder is assumed to have been retracted from the shared nozzle tip at the completion of the printer-start gcode script; the value should be equal to or greater than the length of the common part of the nozzle's ducts."
+msgstr "Hoever het filament van elke extruder geacht wordt te zijn ingetrokken vanuit de gedeelde nozzle als het G-code-script voor het opstarten van de printer is uitgevoerd. De waarde mag niet gelijk zijn aan of groter zijn dan de lengte van het gemeenschappelijke deel van de kanalen in de nozzle."
+
#: fdmprinter.def.json
msgctxt "machine_disallowed_areas label"
msgid "Disallowed Areas"
@@ -486,8 +506,8 @@ msgstr "Offset met extruder"
#: fdmprinter.def.json
msgctxt "machine_use_extruder_offset_to_offset_coords description"
-msgid "Apply the extruder offset to the coordinate system."
-msgstr "Pas de extruderoffset toe op het coördinatensysteem."
+msgid "Apply the extruder offset to the coordinate system. Affects all extruders."
+msgstr "Pas de extruderoffset toe op het coördinatensysteem. Van toepassing op alle extruders."
#: fdmprinter.def.json
msgctxt "extruder_prime_pos_z label"
@@ -881,8 +901,8 @@ msgstr "Vermenigvuldiging van de lijnbreedte van de eerste laag. Door deze te ve
#: fdmprinter.def.json
msgctxt "shell label"
-msgid "Shell"
-msgstr "Shell"
+msgid "Walls"
+msgstr "Wanden"
#: fdmprinter.def.json
msgctxt "shell description"
@@ -949,166 +969,6 @@ msgctxt "wall_0_wipe_dist description"
msgid "Distance of a travel move inserted after the outer wall, to hide the Z seam better."
msgstr "Afstand van een beweging die ingevoegd is na de buitenwand, om de Z-naad beter te maskeren."
-#: fdmprinter.def.json
-msgctxt "roofing_extruder_nr label"
-msgid "Top Surface Skin Extruder"
-msgstr "Extruder bovenskin"
-
-#: fdmprinter.def.json
-msgctxt "roofing_extruder_nr description"
-msgid "The extruder train used for printing the top most skin. This is used in multi-extrusion."
-msgstr "De extruder train die voor het printen van de bovenste skinlaag wordt gebruikt. Deze wordt gebruikt in meervoudige doorvoer."
-
-#: fdmprinter.def.json
-msgctxt "roofing_layer_count label"
-msgid "Top Surface Skin Layers"
-msgstr "Bovenste skinlagen"
-
-#: fdmprinter.def.json
-msgctxt "roofing_layer_count description"
-msgid "The number of top most skin layers. Usually only one top most layer is sufficient to generate higher quality top surfaces."
-msgstr "Het aantal bovenste skinlagen. Doorgaans is één bovenste skinlaag voldoende om oppervlakken van hogere kwaliteit te verkrijgen."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_extruder_nr label"
-msgid "Top/Bottom Extruder"
-msgstr "Extruder Boven-/Onderkant"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_extruder_nr description"
-msgid "The extruder train used for printing the top and bottom skin. This is used in multi-extrusion."
-msgstr "De extruder train die voor het printen van de boven- en onderskin wordt gebruikt. Deze wordt gebruikt in meervoudige doorvoer."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_thickness label"
-msgid "Top/Bottom Thickness"
-msgstr "Dikte Boven-/Onderkant"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_thickness description"
-msgid "The thickness of the top/bottom layers in the print. This value divided by the layer height defines the number of top/bottom layers."
-msgstr "De dikte van de boven-/onderlagen in de print. Het aantal boven-/onderlagen wordt bepaald door het delen van deze waarde door de laaghoogte."
-
-#: fdmprinter.def.json
-msgctxt "top_thickness label"
-msgid "Top Thickness"
-msgstr "Dikte Bovenkant"
-
-#: fdmprinter.def.json
-msgctxt "top_thickness description"
-msgid "The thickness of the top layers in the print. This value divided by the layer height defines the number of top layers."
-msgstr "De dikte van de bovenlagen in de print. Het aantal bovenlagen wordt bepaald door het delen van deze waarde door de laaghoogte."
-
-#: fdmprinter.def.json
-msgctxt "top_layers label"
-msgid "Top Layers"
-msgstr "Bovenlagen"
-
-#: fdmprinter.def.json
-msgctxt "top_layers description"
-msgid "The number of top layers. When calculated by the top thickness, this value is rounded to a whole number."
-msgstr "Het aantal bovenlagen. Wanneer deze waarde wordt berekend aan de hand van de dikte van de bovenkant, wordt deze afgerond naar een geheel getal."
-
-#: fdmprinter.def.json
-msgctxt "bottom_thickness label"
-msgid "Bottom Thickness"
-msgstr "Bodemdikte"
-
-#: fdmprinter.def.json
-msgctxt "bottom_thickness description"
-msgid "The thickness of the bottom layers in the print. This value divided by the layer height defines the number of bottom layers."
-msgstr "De dikte van de onderlagen in de print. Het aantal onderlagen wordt bepaald door het delen van deze waarde door de laaghoogte."
-
-#: fdmprinter.def.json
-msgctxt "bottom_layers label"
-msgid "Bottom Layers"
-msgstr "Bodemlagen"
-
-#: fdmprinter.def.json
-msgctxt "bottom_layers description"
-msgid "The number of bottom layers. When calculated by the bottom thickness, this value is rounded to a whole number."
-msgstr "Het aantal bodemlagen. Wanneer deze waarde wordt berekend aan de hand van de dikte van de bodem, wordt deze afgerond naar een geheel getal."
-
-#: fdmprinter.def.json
-msgctxt "initial_bottom_layers label"
-msgid "Initial Bottom Layers"
-msgstr "Eerste onderste lagen"
-
-#: fdmprinter.def.json
-msgctxt "initial_bottom_layers description"
-msgid "The number of initial bottom layers, from the build-plate upwards. When calculated by the bottom thickness, this value is rounded to a whole number."
-msgstr "Het aantal initiële onderste lagen, vanaf de bouwplaat naar boven. Wanneer deze waarde wordt berekend aan de hand van de dikte van de bodem, wordt deze afgerond naar een geheel getal."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern label"
-msgid "Top/Bottom Pattern"
-msgstr "Patroon Boven-/Onderkant"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern description"
-msgid "The pattern of the top/bottom layers."
-msgstr "Het patroon van de boven-/onderlagen."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern option lines"
-msgid "Lines"
-msgstr "Lijnen"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern option concentric"
-msgid "Concentric"
-msgstr "Concentrisch"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern option zigzag"
-msgid "Zig Zag"
-msgstr "Zigzag"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 label"
-msgid "Bottom Pattern Initial Layer"
-msgstr "Eerste laag patroon onderkant"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 description"
-msgid "The pattern on the bottom of the print on the first layer."
-msgstr "Het patroon van de eerste laag aan de onderkant van de print."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 option lines"
-msgid "Lines"
-msgstr "Lijnen"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 option concentric"
-msgid "Concentric"
-msgstr "Concentrisch"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 option zigzag"
-msgid "Zig Zag"
-msgstr "Zigzag"
-
-#: fdmprinter.def.json
-msgctxt "connect_skin_polygons label"
-msgid "Connect Top/Bottom Polygons"
-msgstr "Boven-/onderkant Polygonen Verbinden"
-
-#: fdmprinter.def.json
-msgctxt "connect_skin_polygons description"
-msgid "Connect top/bottom skin paths where they run next to each other. For the concentric pattern enabling this setting greatly reduces the travel time, but because the connections can happen midway over infill this feature can reduce the top surface quality."
-msgstr "Verbind skinpaden aan de boven-/onderkant waar ze naast elkaar lopen. Met deze instelling wordt bij concentrische patronen de bewegingstijd aanzienlijk verkort. Dit kan echter ten koste gaan van de kwaliteit van de bovenste laag aangezien de verbindingen in het midden van de vulling kunnen komen te liggen."
-
-#: fdmprinter.def.json
-msgctxt "skin_angles label"
-msgid "Top/Bottom Line Directions"
-msgstr "Lijnrichtingen boven-/onderkant"
-
-#: fdmprinter.def.json
-msgctxt "skin_angles description"
-msgid "A list of integer line directions to use when the top/bottom layers use the lines or zig zag pattern. Elements from the list are used sequentially as the layers progress and when the end of the list is reached, it starts at the beginning again. The list items are separated by commas and the whole list is contained in square brackets. Default is an empty list which means use the traditional default angles (45 and 135 degrees)."
-msgstr "Een lijst met gehele getallen voor lijnrichtingen die moet worden gebruikt wanneer voor de boven-/onderlagen een lijn- of zigzagpatroon wordt gebruikt. Elementen uit de lijst worden tijdens het printen van de lagen opeenvolgend gebruikt. Wanneer het einde van de lijst bereikt is, wordt deze weer van voren af aan gestart. De lijstitems zijn gescheiden door komma's en de hele lijst is binnen vierkante haken geplaatst. Standaard wordt een lege lijst gebruikt, wat inhoudt dat de traditionele standaardhoeken (45 en 135 graden) worden gebruikt."
-
#: fdmprinter.def.json
msgctxt "wall_0_inset label"
msgid "Outer Wall Inset"
@@ -1414,6 +1274,176 @@ msgctxt "z_seam_relative description"
msgid "When enabled, the z seam coordinates are relative to each part's centre. When disabled, the coordinates define an absolute position on the build plate."
msgstr "Als deze optie ingeschakeld is, zijn de Z-naadcoördinaten relatief ten opzichte van het midden van elk deel. Als de optie uitgeschakeld is, staan de coördinaten voor een absolute positie op het platform."
+#: fdmprinter.def.json
+msgctxt "top_bottom label"
+msgid "Top/Bottom"
+msgstr "Boven-/onderkant"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom description"
+msgid "Top/Bottom"
+msgstr "Boven-/onderkant"
+
+#: fdmprinter.def.json
+msgctxt "roofing_extruder_nr label"
+msgid "Top Surface Skin Extruder"
+msgstr "Extruder bovenskin"
+
+#: fdmprinter.def.json
+msgctxt "roofing_extruder_nr description"
+msgid "The extruder train used for printing the top most skin. This is used in multi-extrusion."
+msgstr "De extruder train die voor het printen van de bovenste skinlaag wordt gebruikt. Deze wordt gebruikt in meervoudige doorvoer."
+
+#: fdmprinter.def.json
+msgctxt "roofing_layer_count label"
+msgid "Top Surface Skin Layers"
+msgstr "Bovenste skinlagen"
+
+#: fdmprinter.def.json
+msgctxt "roofing_layer_count description"
+msgid "The number of top most skin layers. Usually only one top most layer is sufficient to generate higher quality top surfaces."
+msgstr "Het aantal bovenste skinlagen. Doorgaans is één bovenste skinlaag voldoende om oppervlakken van hogere kwaliteit te verkrijgen."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_extruder_nr label"
+msgid "Top/Bottom Extruder"
+msgstr "Extruder Boven-/Onderkant"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_extruder_nr description"
+msgid "The extruder train used for printing the top and bottom skin. This is used in multi-extrusion."
+msgstr "De extruder train die voor het printen van de boven- en onderskin wordt gebruikt. Deze wordt gebruikt in meervoudige doorvoer."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_thickness label"
+msgid "Top/Bottom Thickness"
+msgstr "Dikte Boven-/Onderkant"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_thickness description"
+msgid "The thickness of the top/bottom layers in the print. This value divided by the layer height defines the number of top/bottom layers."
+msgstr "De dikte van de boven-/onderlagen in de print. Het aantal boven-/onderlagen wordt bepaald door het delen van deze waarde door de laaghoogte."
+
+#: fdmprinter.def.json
+msgctxt "top_thickness label"
+msgid "Top Thickness"
+msgstr "Dikte Bovenkant"
+
+#: fdmprinter.def.json
+msgctxt "top_thickness description"
+msgid "The thickness of the top layers in the print. This value divided by the layer height defines the number of top layers."
+msgstr "De dikte van de bovenlagen in de print. Het aantal bovenlagen wordt bepaald door het delen van deze waarde door de laaghoogte."
+
+#: fdmprinter.def.json
+msgctxt "top_layers label"
+msgid "Top Layers"
+msgstr "Bovenlagen"
+
+#: fdmprinter.def.json
+msgctxt "top_layers description"
+msgid "The number of top layers. When calculated by the top thickness, this value is rounded to a whole number."
+msgstr "Het aantal bovenlagen. Wanneer deze waarde wordt berekend aan de hand van de dikte van de bovenkant, wordt deze afgerond naar een geheel getal."
+
+#: fdmprinter.def.json
+msgctxt "bottom_thickness label"
+msgid "Bottom Thickness"
+msgstr "Bodemdikte"
+
+#: fdmprinter.def.json
+msgctxt "bottom_thickness description"
+msgid "The thickness of the bottom layers in the print. This value divided by the layer height defines the number of bottom layers."
+msgstr "De dikte van de onderlagen in de print. Het aantal onderlagen wordt bepaald door het delen van deze waarde door de laaghoogte."
+
+#: fdmprinter.def.json
+msgctxt "bottom_layers label"
+msgid "Bottom Layers"
+msgstr "Bodemlagen"
+
+#: fdmprinter.def.json
+msgctxt "bottom_layers description"
+msgid "The number of bottom layers. When calculated by the bottom thickness, this value is rounded to a whole number."
+msgstr "Het aantal bodemlagen. Wanneer deze waarde wordt berekend aan de hand van de dikte van de bodem, wordt deze afgerond naar een geheel getal."
+
+#: fdmprinter.def.json
+msgctxt "initial_bottom_layers label"
+msgid "Initial Bottom Layers"
+msgstr "Eerste onderste lagen"
+
+#: fdmprinter.def.json
+msgctxt "initial_bottom_layers description"
+msgid "The number of initial bottom layers, from the build-plate upwards. When calculated by the bottom thickness, this value is rounded to a whole number."
+msgstr "Het aantal initiële onderste lagen, vanaf de bouwplaat naar boven. Wanneer deze waarde wordt berekend aan de hand van de dikte van de bodem, wordt deze afgerond naar een geheel getal."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern label"
+msgid "Top/Bottom Pattern"
+msgstr "Patroon Boven-/Onderkant"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern description"
+msgid "The pattern of the top/bottom layers."
+msgstr "Het patroon van de boven-/onderlagen."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern option lines"
+msgid "Lines"
+msgstr "Lijnen"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern option concentric"
+msgid "Concentric"
+msgstr "Concentrisch"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern option zigzag"
+msgid "Zig Zag"
+msgstr "Zigzag"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 label"
+msgid "Bottom Pattern Initial Layer"
+msgstr "Eerste laag patroon onderkant"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 description"
+msgid "The pattern on the bottom of the print on the first layer."
+msgstr "Het patroon van de eerste laag aan de onderkant van de print."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 option lines"
+msgid "Lines"
+msgstr "Lijnen"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 option concentric"
+msgid "Concentric"
+msgstr "Concentrisch"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 option zigzag"
+msgid "Zig Zag"
+msgstr "Zigzag"
+
+#: fdmprinter.def.json
+msgctxt "connect_skin_polygons label"
+msgid "Connect Top/Bottom Polygons"
+msgstr "Boven-/onderkant Polygonen Verbinden"
+
+#: fdmprinter.def.json
+msgctxt "connect_skin_polygons description"
+msgid "Connect top/bottom skin paths where they run next to each other. For the concentric pattern enabling this setting greatly reduces the travel time, but because the connections can happen midway over infill this feature can reduce the top surface quality."
+msgstr "Verbind skinpaden aan de boven-/onderkant waar ze naast elkaar lopen. Met deze instelling wordt bij concentrische patronen de bewegingstijd aanzienlijk verkort. Dit kan echter ten koste gaan van de kwaliteit van de bovenste laag aangezien de verbindingen in het midden van de vulling kunnen komen te liggen."
+
+#: fdmprinter.def.json
+msgctxt "skin_angles label"
+msgid "Top/Bottom Line Directions"
+msgstr "Lijnrichtingen boven-/onderkant"
+
+#: fdmprinter.def.json
+msgctxt "skin_angles description"
+msgid "A list of integer line directions to use when the top/bottom layers use the lines or zig zag pattern. Elements from the list are used sequentially as the layers progress and when the end of the list is reached, it starts at the beginning again. The list items are separated by commas and the whole list is contained in square brackets. Default is an empty list which means use the traditional default angles (45 and 135 degrees)."
+msgstr "Een lijst met gehele getallen voor lijnrichtingen die moet worden gebruikt wanneer voor de boven-/onderlagen een lijn- of zigzagpatroon wordt gebruikt. Elementen uit de lijst worden tijdens het printen van de lagen opeenvolgend gebruikt. Wanneer het einde van de lijst bereikt is, wordt deze weer van voren af aan gestart. De lijstitems zijn gescheiden door komma's en de hele lijst is binnen vierkante haken geplaatst. Standaard wordt een lege lijst gebruikt, wat inhoudt dat de traditionele standaardhoeken (45 en 135 graden) worden gebruikt."
+
#: fdmprinter.def.json
msgctxt "skin_no_small_gaps_heuristic label"
msgid "No Skin in Z Gaps"
@@ -1554,6 +1584,86 @@ msgctxt "skin_overlap_mm description"
msgid "Adjust the amount of overlap between the walls and (the endpoints of) the skin-centerlines. A slight overlap allows the walls to connect firmly to the skin. Note that, given an equal skin and wall line-width, any value over half the width of the wall may already cause any skin to go past the wall, because at that point the position of the nozzle of the skin-extruder may already reach past the middle of the wall."
msgstr "Pas de mate van overlap tussen de wanden en (de eindpunten van) de skin-middellijnen aan. Met een lichte overlap kunnen de wanden goed hechten aan de skin. Houd er rekening mee dat met een gelijke lijnbreedte voor skin en wand, skin buiten de wand kan treden bij een waarde groter dan de halve wandbreedte, omdat de nozzle van de skin-extruder op deze positie het midden van de wand al kan hebben bereikt."
+#: fdmprinter.def.json
+msgctxt "skin_preshrink label"
+msgid "Skin Removal Width"
+msgstr "Verwijderingsbreedte skin"
+
+#: fdmprinter.def.json
+msgctxt "skin_preshrink description"
+msgid "The largest width of skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top/bottom skin at slanted surfaces in the model."
+msgstr "De grootste breedte van skingebieden die verwijderd moeten worden. Elk skingebied dat smaller is dan deze waarde zal verdwijnen. Hiermee kan op tijd en materiaal worden bespaard bij het printen van de bovenste/onderste skinlaag op schuine vlakken in het model."
+
+#: fdmprinter.def.json
+msgctxt "top_skin_preshrink label"
+msgid "Top Skin Removal Width"
+msgstr "Verwijderingsbreedte bovenste skinlaag"
+
+#: fdmprinter.def.json
+msgctxt "top_skin_preshrink description"
+msgid "The largest width of top skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top skin at slanted surfaces in the model."
+msgstr "De grootste breedte van delen van bovenste skingebieden die verwijderd moeten worden. Elk skingebied dat smaller is dan deze waarde, zal verdwijnen. Hiermee kan op tijd en materiaal worden bespaard bij het printen van de bovenste/onderste skinlaag op schuine vlakken in het model."
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_preshrink label"
+msgid "Bottom Skin Removal Width"
+msgstr "Verwijderingsbreedte onderste skinlaag"
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_preshrink description"
+msgid "The largest width of bottom skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing bottom skin at slanted surfaces in the model."
+msgstr "De grootste breedte van delen van de onderste skingebieden die verwijderd moeten worden. Elk skingebied dat smaller is dan deze waarde, zal verdwijnen. Hiermee kan op tijd en materiaal worden bespaard bij het printen van de onderste skinlaag op schuine vlakken in het model."
+
+#: fdmprinter.def.json
+msgctxt "expand_skins_expand_distance label"
+msgid "Skin Expand Distance"
+msgstr "Uitbreidingsafstand van skin"
+
+#: fdmprinter.def.json
+msgctxt "expand_skins_expand_distance description"
+msgid "The distance the skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on neighboring layers adhere better to the skin. Lower values save amount of material used."
+msgstr "De afstand waarmee de skin wordt uitgebreid in de vulling. Bij hogere waarden hecht de skin beter aan het vulpatroon en hechten de wanden van aangrenzende lagen beter aan de skin. Bij lagere waarden wordt er minder materiaal gebruikt."
+
+#: fdmprinter.def.json
+msgctxt "top_skin_expand_distance label"
+msgid "Top Skin Expand Distance"
+msgstr "Uitbreidingsafstand van bovenste skinlaag"
+
+#: fdmprinter.def.json
+msgctxt "top_skin_expand_distance description"
+msgid "The distance the top skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on the layer above adhere better to the skin. Lower values save amount of material used."
+msgstr "De afstand waarmee de bovenste skinlagen worden uitgebreid in de vulling. Bij hogere waarden hecht de skin beter aan het vulpatroon en hechten de wanden op de bovenliggende laag beter aan de skin. Bij lagere waarden wordt er minder materiaal gebruikt."
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_expand_distance label"
+msgid "Bottom Skin Expand Distance"
+msgstr "Uitbreidingsafstand van onderste skinlaag"
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_expand_distance description"
+msgid "The distance the bottom skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the skin adhere better to the walls on the layer below. Lower values save amount of material used."
+msgstr "De afstand waarmee de onderste skinlagen worden uitgebreid in de vulling. Bij hogere waarden hecht de skin beter aan het vulpatroon en de wanden van de onderliggende laag. Bij lagere waarden wordt er minder materiaal gebruikt."
+
+#: fdmprinter.def.json
+msgctxt "max_skin_angle_for_expansion label"
+msgid "Maximum Skin Angle for Expansion"
+msgstr "Maximale skinhoek voor uitbreiding"
+
+#: fdmprinter.def.json
+msgctxt "max_skin_angle_for_expansion description"
+msgid "Top and/or bottom surfaces of your object with an angle larger than this setting, won't have their top/bottom skin expanded. This avoids expanding the narrow skin areas that are created when the model surface has a near vertical slope. An angle of 0° is horizontal and will cause no skin to be expanded, while an angle of 90° is vertical and will cause all skin to be expanded."
+msgstr "Van boven- en/of onderoppervlakken van het object met een hoek die groter is dan deze instelling, wordt de boven-/onderskin niet uitgebreid. Hiermee wordt uitbreiding voorkomen van smalle skingebieden die worden gemaakt wanneer het modeloppervlak een nagenoeg verticale helling heeft. Bij een hoek van 0° (horizontaal) wordt er geen skin uitgebreid; bij een hoek van 90° (verticaal) wordt alle skin uitgebreid."
+
+#: fdmprinter.def.json
+msgctxt "min_skin_width_for_expansion label"
+msgid "Minimum Skin Width for Expansion"
+msgstr "Minimale skinbreedte voor uitbreiding"
+
+#: fdmprinter.def.json
+msgctxt "min_skin_width_for_expansion description"
+msgid "Skin areas narrower than this are not expanded. This avoids expanding the narrow skin areas that are created when the model surface has a slope close to the vertical."
+msgstr "Skingebieden die smaller zijn dan deze waarde, worden niet uitgebreid. Dit voorkomt het uitbreiden van smalle skingebieden die worden gemaakt wanneer het modeloppervlak een nagenoeg verticale helling heeft."
+
#: fdmprinter.def.json
msgctxt "infill label"
msgid "Infill"
@@ -1863,86 +1973,6 @@ msgctxt "infill_support_angle description"
msgid "The minimum angle of internal overhangs for which infill is added. At a value of 0° objects are totally filled with infill, 90° will not provide any infill."
msgstr "De minimale interne overhanghoek waarbij vulling wordt toegevoegd. Bij een waarde van 0° worden objecten volledig gevuld. Bij 90° wordt er geen vulling geprint."
-#: fdmprinter.def.json
-msgctxt "skin_preshrink label"
-msgid "Skin Removal Width"
-msgstr "Verwijderingsbreedte skin"
-
-#: fdmprinter.def.json
-msgctxt "skin_preshrink description"
-msgid "The largest width of skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top/bottom skin at slanted surfaces in the model."
-msgstr "De grootste breedte van skingebieden die verwijderd moeten worden. Elk skingebied dat smaller is dan deze waarde zal verdwijnen. Hiermee kan op tijd en materiaal worden bespaard bij het printen van de bovenste/onderste skinlaag op schuine vlakken in het model."
-
-#: fdmprinter.def.json
-msgctxt "top_skin_preshrink label"
-msgid "Top Skin Removal Width"
-msgstr "Verwijderingsbreedte bovenste skinlaag"
-
-#: fdmprinter.def.json
-msgctxt "top_skin_preshrink description"
-msgid "The largest width of top skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top skin at slanted surfaces in the model."
-msgstr "De grootste breedte van delen van bovenste skingebieden die verwijderd moeten worden. Elk skingebied dat smaller is dan deze waarde, zal verdwijnen. Hiermee kan op tijd en materiaal worden bespaard bij het printen van de bovenste/onderste skinlaag op schuine vlakken in het model."
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_preshrink label"
-msgid "Bottom Skin Removal Width"
-msgstr "Verwijderingsbreedte onderste skinlaag"
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_preshrink description"
-msgid "The largest width of bottom skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing bottom skin at slanted surfaces in the model."
-msgstr "De grootste breedte van delen van de onderste skingebieden die verwijderd moeten worden. Elk skingebied dat smaller is dan deze waarde, zal verdwijnen. Hiermee kan op tijd en materiaal worden bespaard bij het printen van de onderste skinlaag op schuine vlakken in het model."
-
-#: fdmprinter.def.json
-msgctxt "expand_skins_expand_distance label"
-msgid "Skin Expand Distance"
-msgstr "Uitbreidingsafstand van skin"
-
-#: fdmprinter.def.json
-msgctxt "expand_skins_expand_distance description"
-msgid "The distance the skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on neighboring layers adhere better to the skin. Lower values save amount of material used."
-msgstr "De afstand waarmee de skin wordt uitgebreid in de vulling. Bij hogere waarden hecht de skin beter aan het vulpatroon en hechten de wanden van aangrenzende lagen beter aan de skin. Bij lagere waarden wordt er minder materiaal gebruikt."
-
-#: fdmprinter.def.json
-msgctxt "top_skin_expand_distance label"
-msgid "Top Skin Expand Distance"
-msgstr "Uitbreidingsafstand van bovenste skinlaag"
-
-#: fdmprinter.def.json
-msgctxt "top_skin_expand_distance description"
-msgid "The distance the top skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on the layer above adhere better to the skin. Lower values save amount of material used."
-msgstr "De afstand waarmee de bovenste skinlagen worden uitgebreid in de vulling. Bij hogere waarden hecht de skin beter aan het vulpatroon en hechten de wanden op de bovenliggende laag beter aan de skin. Bij lagere waarden wordt er minder materiaal gebruikt."
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_expand_distance label"
-msgid "Bottom Skin Expand Distance"
-msgstr "Uitbreidingsafstand van onderste skinlaag"
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_expand_distance description"
-msgid "The distance the bottom skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the skin adhere better to the walls on the layer below. Lower values save amount of material used."
-msgstr "De afstand waarmee de onderste skinlagen worden uitgebreid in de vulling. Bij hogere waarden hecht de skin beter aan het vulpatroon en de wanden van de onderliggende laag. Bij lagere waarden wordt er minder materiaal gebruikt."
-
-#: fdmprinter.def.json
-msgctxt "max_skin_angle_for_expansion label"
-msgid "Maximum Skin Angle for Expansion"
-msgstr "Maximale skinhoek voor uitbreiding"
-
-#: fdmprinter.def.json
-msgctxt "max_skin_angle_for_expansion description"
-msgid "Top and/or bottom surfaces of your object with an angle larger than this setting, won't have their top/bottom skin expanded. This avoids expanding the narrow skin areas that are created when the model surface has a near vertical slope. An angle of 0° is horizontal, while an angle of 90° is vertical."
-msgstr "Van boven- en/of onderoppervlakken van het object met een hoek die groter is dan deze instelling, wordt de boven-/onderksin niet uitgebreid. Hiermee wordt de uitbreiding voorkomen van smalle skingebieden die worden gemaakt wanneer het modeloppervlak een nagenoeg verticale helling heeft. Een hoek van 0° is horizontaal en een hoek van 90° is verticaal."
-
-#: fdmprinter.def.json
-msgctxt "min_skin_width_for_expansion label"
-msgid "Minimum Skin Width for Expansion"
-msgstr "Minimale skinbreedte voor uitbreiding"
-
-#: fdmprinter.def.json
-msgctxt "min_skin_width_for_expansion description"
-msgid "Skin areas narrower than this are not expanded. This avoids expanding the narrow skin areas that are created when the model surface has a slope close to the vertical."
-msgstr "Skingebieden die smaller zijn dan deze waarde, worden niet uitgebreid. Dit voorkomt het uitbreiden van smalle skingebieden die worden gemaakt wanneer het modeloppervlak een nagenoeg verticale helling heeft."
-
#: fdmprinter.def.json
msgctxt "skin_edge_support_thickness label"
msgid "Skin Edge Support Thickness"
@@ -2560,8 +2590,8 @@ msgstr "Snelheid Eerste Laag"
#: fdmprinter.def.json
msgctxt "speed_layer_0 description"
-msgid "The speed for the initial layer. A lower value is advised to improve adhesion to the build plate."
-msgstr "De snelheid waarmee de eerste laag wordt geprint. Hiervoor wordt een lagere waarde aanbevolen om hechting aan het platform te verbeteren."
+msgid "The speed for the initial layer. A lower value is advised to improve adhesion to the build plate. Does not affect the build plate adhesion structures themselves, like brim and raft."
+msgstr "De snelheid waarmee de eerste laag wordt geprint. Hiervoor wordt een lagere waarde aanbevolen om hechting aan het platform te verbeteren. Heeft geen invloed op de hechtstructuren van het platform zelf, zoals brim en raft."
#: fdmprinter.def.json
msgctxt "speed_print_layer_0 label"
@@ -3170,8 +3200,9 @@ msgstr "Max. combing-afstand zonder intrekken"
#: fdmprinter.def.json
msgctxt "retraction_combing_max_distance description"
-msgid "When non-zero, combing travel moves that are longer than this distance will use retraction."
-msgstr "Wanneer dit niet nul is, vindt bij een combing-beweging die langer is dan deze afstand, intrekking plaats."
+msgid "When greater than zero, combing travel moves that are longer than this distance will use retraction. If set to zero, there is no maximum and combing moves will not use retraction."
+msgstr "Wanneer dit groter dan nul is, vindt bij een combing-beweging die langer is dan deze afstand, intrekking plaats. Wanneer dit nul is, is er geen maximum"
+" en vindt bij combing-bewegingen geen intrekking plaats."
#: fdmprinter.def.json
msgctxt "travel_retract_before_outer_wall label"
@@ -5074,9 +5105,8 @@ msgstr "Rasterverwerkingsrang"
#: fdmprinter.def.json
msgctxt "infill_mesh_order description"
-msgid "Determines the priority of this mesh when considering multiple overlapping infill meshes. Areas where multiple infill meshes overlap will take on the settings of the mesh with the lowest rank. An infill mesh with a higher order will modify the infill of infill meshes with lower order and normal meshes."
-msgstr "Bepaalt de prioriteit van dit raster bij meerdere overlappende vulrasters. Gebieden met meerdere overlappende vulrasters krijgen de instellingen van het"
-" vulraster met de laagste rang. Met een vulraster dat voorrang heeft, wordt de vulling van andere vulrasters en normale rasters aangepast."
+msgid "Determines the priority of this mesh when considering multiple overlapping infill meshes. Areas where multiple infill meshes overlap will take on the settings of the mesh with the highest rank. An infill mesh with a higher rank will modify the infill of infill meshes with lower rank and normal meshes."
+msgstr "Bepaalt de prioriteit van dit raster bij meerdere overlappende vulrasters. Gebieden met meerdere overlappende vulrasters krijgen de instellingen van het vulraster met de hoogste rang. Bij een vulraster met een hogere rang wordt de vulling van vulrasters met een lagere rang en normale rasters aangepast."
#: fdmprinter.def.json
msgctxt "cutting_mesh label"
@@ -5423,6 +5453,16 @@ msgctxt "conical_overhang_angle description"
msgid "The maximum angle of overhangs after the they have been made printable. At a value of 0° all overhangs are replaced by a piece of model connected to the build plate, 90° will not change the model in any way."
msgstr "De maximale hoek van een overhang nadat deze printbaar is gemaakt. Bij een hoek van 0° worden alle overhangende gedeelten vervangen door een deel van het model dat is verbonden met het platform; bij een hoek van 90° wordt het model niet gewijzigd."
+#: fdmprinter.def.json
+msgctxt "conical_overhang_hole_size label"
+msgid "Maximum Overhang Hole Area"
+msgstr "Maximale overhang oppervlak gat"
+
+#: fdmprinter.def.json
+msgctxt "conical_overhang_hole_size description"
+msgid "The maximum area of a hole in the base of the model before it's removed by Make Overhang Printable. Holes smaller than this will be retained. A value of 0 mm² will fill all holes in the models base."
+msgstr "Het maximale oppervlak van een gat in de basis van het model voordat het wordt verwijderd om de overhang printbaar te maken. Gaten die kleiner zijn dan dit oppervlak worden behouden. Bij een waarde van 0 mm² worden alle gaten in de basis van het model gevuld."
+
#: fdmprinter.def.json
msgctxt "coasting_enable label"
msgid "Enable Coasting"
@@ -6362,6 +6402,30 @@ msgctxt "mesh_rotation_matrix description"
msgid "Transformation matrix to be applied to the model when loading it from file."
msgstr "Omzettingsmatrix die moet worden toegepast op het model wanneer dit wordt geladen vanuit een bestand."
+#~ msgctxt "retraction_combing_max_distance description"
+#~ msgid "When non-zero, combing travel moves that are longer than this distance will use retraction."
+#~ msgstr "Wanneer dit niet nul is, vindt bij een combing-beweging die langer is dan deze afstand, intrekking plaats."
+
+#~ msgctxt "machine_use_extruder_offset_to_offset_coords description"
+#~ msgid "Apply the extruder offset to the coordinate system."
+#~ msgstr "Pas de extruderoffset toe op het coördinatensysteem."
+
+#~ msgctxt "shell label"
+#~ msgid "Shell"
+#~ msgstr "Shell"
+
+#~ msgctxt "max_skin_angle_for_expansion description"
+#~ msgid "Top and/or bottom surfaces of your object with an angle larger than this setting, won't have their top/bottom skin expanded. This avoids expanding the narrow skin areas that are created when the model surface has a near vertical slope. An angle of 0° is horizontal, while an angle of 90° is vertical."
+#~ msgstr "Van boven- en/of onderoppervlakken van het object met een hoek die groter is dan deze instelling, wordt de boven-/onderksin niet uitgebreid. Hiermee wordt de uitbreiding voorkomen van smalle skingebieden die worden gemaakt wanneer het modeloppervlak een nagenoeg verticale helling heeft. Een hoek van 0° is horizontaal en een hoek van 90° is verticaal."
+
+#~ msgctxt "speed_layer_0 description"
+#~ msgid "The speed for the initial layer. A lower value is advised to improve adhesion to the build plate."
+#~ msgstr "De snelheid waarmee de eerste laag wordt geprint. Hiervoor wordt een lagere waarde aanbevolen om hechting aan het platform te verbeteren."
+
+#~ msgctxt "infill_mesh_order description"
+#~ msgid "Determines the priority of this mesh when considering multiple overlapping infill meshes. Areas where multiple infill meshes overlap will take on the settings of the mesh with the lowest rank. An infill mesh with a higher order will modify the infill of infill meshes with lower order and normal meshes."
+#~ msgstr "Bepaalt de prioriteit van dit raster bij meerdere overlappende vulrasters. Gebieden met meerdere overlappende vulrasters krijgen de instellingen van het vulraster met de laagste rang. Met een vulraster dat voorrang heeft, wordt de vulling van andere vulrasters en normale rasters aangepast."
+
#~ msgctxt "material_bed_temperature description"
#~ msgid "The temperature used for the heated build plate. If this is 0, the bed temperature will not be adjusted."
#~ msgstr "De temperatuur van het verwarmde platform. Als deze waarde is ingesteld op 0, wordt de printbedtemperatuur niet aangepast."
diff --git a/resources/i18n/pl_PL/cura.po b/resources/i18n/pl_PL/cura.po
index 850fd98e1d..1dce7efaa4 100644
--- a/resources/i18n/pl_PL/cura.po
+++ b/resources/i18n/pl_PL/cura.po
@@ -1,12 +1,12 @@
# Cura
-# Copyright (C) 2020 Ultimaker B.V.
+# Copyright (C) 2021 Ultimaker B.V.
# This file is distributed under the same license as the Cura package.
#
msgid ""
msgstr ""
-"Project-Id-Version: Cura 4.8\n"
+"Project-Id-Version: Cura 4.10\n"
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
-"POT-Creation-Date: 2020-10-19 13:15+0200\n"
+"POT-Creation-Date: 2021-06-10 17:35+0200\n"
"PO-Revision-Date: 2019-11-15 15:23+0100\n"
"Last-Translator: Mariusz Matłosz \n"
"Language-Team: Mariusz Matłosz , reprapy.pl\n"
@@ -21,7 +21,7 @@ msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/DiscoveredPrintersModel.py:83
#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:110
#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/QualityManagementModel.py:361
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1581
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1612
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:130
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:171
msgctxt "@label"
@@ -92,12 +92,12 @@ msgctxt "@text"
msgid "The draft profile is designed to print initial prototypes and concept validation with the intent of significant print time reduction."
msgstr "Profil szkicu służy do drukowania początkowych prototypów i weryfikacji koncepcji z naciskiem na krótki czasu drukowania."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:226
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:234
msgctxt "@label"
msgid "Custom Material"
msgstr "Niestandardowy materiał"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:227
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:235
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationMenu.qml:205
msgctxt "@label"
msgid "Custom"
@@ -119,7 +119,7 @@ msgctxt "@item:inlistbox"
msgid "All Files (*)"
msgstr "Wszystkie Pliki (*)"
-#: /home/trin/Gedeeld/Projects/Cura/cura/API/Account.py:178
+#: /home/trin/Gedeeld/Projects/Cura/cura/API/Account.py:181
msgctxt "@info:title"
msgid "Login failed"
msgstr "Logowanie nie powiodło się"
@@ -149,28 +149,33 @@ msgctxt "@info:title"
msgid "Can't Find Location"
msgstr "Nie można Znaleźć Lokalizacji"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:104
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:116
msgctxt "@info:backup_failed"
msgid "Could not create archive from user data directory: {}"
msgstr "Nie można utworzyć archiwum z folderu danych użytkownika: {}"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:110
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:122
#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:107
#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:113
msgctxt "@info:title"
msgid "Backup"
msgstr "Kopia zapasowa"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:123
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:135
msgctxt "@info:backup_failed"
msgid "Tried to restore a Cura backup without having proper data or meta data."
msgstr "Podjęto próbę przywrócenia kopii zapasowej Cura na podstawie niepoprawnych danych lub metadanych."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:134
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:146
msgctxt "@info:backup_failed"
msgid "Tried to restore a Cura backup that is higher than the current version."
msgstr "Próbowano przywrócić kopię zapasową Cura, nowszą od aktualnej wersji."
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:157
+msgctxt "@info:backup_failed"
+msgid "The following error occurred while trying to restore a Cura backup:"
+msgstr ""
+
#: /home/trin/Gedeeld/Projects/Cura/cura/BuildVolume.py:98
msgctxt "@info:status"
msgid "The build volume height has been reduced due to the value of the \"Print Sequence\" setting to prevent the gantry from colliding with printed models."
@@ -320,74 +325,74 @@ msgctxt "@action:button"
msgid "Send report"
msgstr "Wyślij raport"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:521
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:527
msgctxt "@info:progress"
msgid "Loading machines..."
msgstr "Ładowanie drukarek..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:528
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:534
msgctxt "@info:progress"
msgid "Setting up preferences..."
msgstr "Ustawianie preferencji..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:657
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:672
msgctxt "@info:progress"
msgid "Initializing Active Machine..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:788
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:803
msgctxt "@info:progress"
msgid "Initializing machine manager..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:802
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:817
msgctxt "@info:progress"
msgid "Initializing build volume..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:870
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:888
msgctxt "@info:progress"
msgid "Setting up scene..."
msgstr "Ustawianie sceny ..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:906
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:924
msgctxt "@info:progress"
msgid "Loading interface..."
msgstr "Ładowanie interfejsu ..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:911
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:929
msgctxt "@info:progress"
msgid "Initializing engine..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1221
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1246
#, python-format
msgctxt "@info 'width', 'depth' and 'height' are variable names that must NOT be translated; just translate the format of ##x##x## mm."
msgid "%(width).1f x %(depth).1f x %(height).1f mm"
msgstr "%(width).1f x %(depth).1f x %(height).1f mm"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1777
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1799
#, python-brace-format
msgctxt "@info:status"
msgid "Only one G-code file can be loaded at a time. Skipped importing {0}"
msgstr "Jednocześnie można załadować tylko jeden plik G-code. Pominięto importowanie {0}"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1778
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:188
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:242
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1800
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:190
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:244
#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:153
#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:165
msgctxt "@info:title"
msgid "Warning"
msgstr "Ostrzeżenie"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1787
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1809
#, python-brace-format
msgctxt "@info:status"
msgid "Can't open any other file if G-code is loading. Skipped importing {0}"
msgstr "Nie można otworzyć żadnego innego pliku, jeśli ładuje się G-code. Pominięto importowanie {0}"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1788
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1810
#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:146
#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:153
#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:139
@@ -410,7 +415,7 @@ msgctxt "@info:title"
msgid "Placing Object"
msgstr "Rozmieszczenie Obiektów"
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationHelpers.py:90
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationHelpers.py:92
msgctxt "@message"
msgid "Could not read response."
msgstr "Nie można odczytać odpowiedzi."
@@ -430,12 +435,12 @@ msgctxt "@message"
msgid "Something unexpected happened when trying to log in, please try again."
msgstr "Coś nieoczekiwanego się stało, podczas próby logowania, spróbuj ponownie."
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:187
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:189
msgctxt "@info"
msgid "Unable to start a new sign in process. Check if another sign in attempt is still active."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:242
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:244
msgctxt "@info"
msgid "Unable to reach the Ultimaker account server."
msgstr "Nie można uzyskać dostępu do serwera kont Ultimaker."
@@ -453,8 +458,8 @@ msgctxt "@label Don't translate the XML tag !"
msgid "The file {0} already exists. Are you sure you want to overwrite it?"
msgstr "Plik {0} już istnieje. Czy na pewno chcesz go nadpisać?"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:452
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:455
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:457
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:460
msgctxt "@info:status"
msgid "Invalid file URL:"
msgstr "Nieprawidłowy adres URL pliku:"
@@ -537,33 +542,33 @@ msgctxt "@info:status"
msgid "Profile {0} has an unknown file type or is corrupted."
msgstr "Profil {0} ma nieznany typ pliku lub jest uszkodzony."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:423
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:426
msgctxt "@label"
msgid "Custom profile"
msgstr "Niestandardowy profil"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:439
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:442
msgctxt "@info:status"
msgid "Profile is missing a quality type."
msgstr "Profilowi brakuje typu jakości."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:443
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:446
msgctxt "@info:status"
-msgid "Global stack is missing."
+msgid "There is no active printer yet."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:449
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:452
msgctxt "@info:status"
msgid "Unable to add the profile."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:463
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:466
#, python-brace-format
msgctxt "@info:status"
msgid "Quality type '{0}' is not compatible with the current active machine definition '{1}'."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:468
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:471
#, python-brace-format
msgctxt "@info:status"
msgid "Warning: The profile is not visible because its quality type '{0}' is not available for the current configuration. Switch to a material/nozzle combination that can use this quality type."
@@ -579,23 +584,23 @@ msgctxt "@info:No intent profile selected"
msgid "Default"
msgstr "Domyślne"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:712
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:713
#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:216
msgctxt "@label"
msgid "Nozzle"
msgstr "Dysza"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:860
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:856
msgctxt "@info:message Followed by a list of settings."
msgid "Settings have been changed to match the current availability of extruders:"
msgstr "Ustawienia zostały zmienione w celu dopasowania do bieżącej dostępności ekstruderów:"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:862
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:858
msgctxt "@info:title"
msgid "Settings updated"
msgstr "Ustawienia zostały zaaktualizowane"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1447
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1478
msgctxt "@info:title"
msgid "Extruder(s) Disabled"
msgstr "Ekstruder(y) wyłączony(/e)"
@@ -608,13 +613,13 @@ msgid "Add"
msgstr "Dodaj"
#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:26
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:263
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:272
msgctxt "@action:button"
msgid "Finish"
msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:33
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:441
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:445
#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:234
#: /home/trin/Gedeeld/Projects/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:150
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxProgressButton.qml:19
@@ -622,7 +627,7 @@ msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:352
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:58
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/PrintWindow.qml:42
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:87
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:82
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:292
msgctxt "@action:button"
msgid "Cancel"
@@ -634,76 +639,83 @@ msgctxt "@label"
msgid "Group #{group_nr}"
msgstr "Grupa #{group_nr}"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:83
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:82
msgctxt "@tooltip"
msgid "Outer Wall"
msgstr "Zewnętrzna ściana"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:84
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:83
msgctxt "@tooltip"
msgid "Inner Walls"
msgstr "Ściany wewnętrzne"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:85
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:84
msgctxt "@tooltip"
msgid "Skin"
msgstr "Skin"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:86
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:85
msgctxt "@tooltip"
msgid "Infill"
msgstr "Wypełnienie"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:87
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:86
msgctxt "@tooltip"
msgid "Support Infill"
msgstr "Wypełnienie podpór"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:88
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:87
msgctxt "@tooltip"
msgid "Support Interface"
msgstr "Łączenie podpory"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:89
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:88
msgctxt "@tooltip"
msgid "Support"
msgstr "Podpory"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:90
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:89
msgctxt "@tooltip"
msgid "Skirt"
msgstr "Obwódka"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:91
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:90
msgctxt "@tooltip"
msgid "Prime Tower"
msgstr "Wieża czyszcząca"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:92
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:91
msgctxt "@tooltip"
msgid "Travel"
msgstr "Ruch jałowy"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:93
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:92
msgctxt "@tooltip"
msgid "Retractions"
msgstr "Retrakcja"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:94
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:93
msgctxt "@tooltip"
msgid "Other"
msgstr "Inny"
#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:56
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:259
msgctxt "@action:button"
msgid "Next"
msgstr "Następny"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WhatsNewPagesModel.py:17
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:268
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WhatsNewPagesModel.py:55
+msgctxt "@action:button"
+msgid "Skip"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WhatsNewPagesModel.py:60
#: /home/trin/Gedeeld/Projects/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:185
#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:128
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:482
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:173
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:485
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:174
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:127
msgctxt "@action:button"
msgid "Close"
@@ -728,29 +740,36 @@ msgstr ""
"
Dowiedz się, jak zapewnić najlepszą możliwą jakość oraz niezawodnośc wydruku.
"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:535
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:540
#, python-brace-format
msgctxt "@info:status Don't translate the XML tags or !"
msgid "Project file {0} contains an unknown machine type {1}. Cannot import the machine. Models will be imported instead."
msgstr "Plik projektu {0} zawiera nieznany typ maszyny {1}. Nie można zaimportować maszyny. Zostaną zaimportowane modele."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:538
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:543
msgctxt "@info:title"
msgid "Open Project File"
msgstr "Otwórz Plik Projektu"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:634
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:639
#, python-brace-format
msgctxt "@info:error Don't translate the XML tags or !"
msgid "Project file {0} is suddenly inaccessible: {1}."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:635
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:640
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:647
msgctxt "@info:title"
msgid "Can't Open Project File"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:686
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:646
+#, python-brace-format
+msgctxt "@info:error Don't translate the XML tags or !"
+msgid "Project file {0} is corrupt: {1}."
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:698
#, python-brace-format
msgctxt "@info:error Don't translate the XML tag !"
msgid "Project file {0} is made using profiles that are unknown to this version of Ultimaker Cura."
@@ -788,7 +807,7 @@ msgctxt "@error:zip"
msgid "The operating system does not allow saving a project file to this location or with this file name."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWriter.py:185
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFWriter/ThreeMFWriter.py:206
msgctxt "@error:zip"
msgid "Error writing 3mf file."
msgstr "Błąd zapisu pliku 3mf."
@@ -843,8 +862,8 @@ msgctxt "@error:file_size"
msgid "The backup exceeds the maximum file size."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DriveApiService.py:82
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/RestoreBackupJob.py:23
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DriveApiService.py:86
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/RestoreBackupJob.py:26
msgctxt "@info:backup_status"
msgid "There was an error trying to restore your backup."
msgstr "Wystąpił błąd podczas próby przywrócenia kopii zapasowej."
@@ -854,45 +873,45 @@ msgctxt "@item:inmenu"
msgid "Manage backups"
msgstr "Zarządzaj kopiami zapasowymi"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:356
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:382
msgctxt "@info:status"
msgid "Unable to slice with the current material as it is incompatible with the selected machine or configuration."
msgstr "Nie można pociąć z obecnym materiałem, ponieważ nie jest on kompatybilny z wybraną maszyną lub konfiguracją."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:356
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:387
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:411
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:420
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:429
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:441
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:382
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:413
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:437
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:446
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:455
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:467
msgctxt "@info:title"
msgid "Unable to slice"
msgstr "Nie można pociąć"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:386
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:412
#, python-brace-format
msgctxt "@info:status"
msgid "Unable to slice with the current settings. The following settings have errors: {0}"
msgstr "Nie można pociąć z bieżącymi ustawieniami. Następujące ustawienia mają błędy: {0}"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:410
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:436
#, python-brace-format
msgctxt "@info:status"
msgid "Unable to slice due to some per-model settings. The following settings have errors on one or more models: {error_labels}"
msgstr "Nie można pokroić przez ustawienia osobne dla modelu. Następujące ustawienia mają błędy w jednym lub więcej modeli: {error_labels}"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:419
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:445
msgctxt "@info:status"
msgid "Unable to slice because the prime tower or prime position(s) are invalid."
msgstr "Nie można pociąć, ponieważ wieża czyszcząca lub jej pozycja(e) są niewłaściwe."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:428
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:454
#, python-format
msgctxt "@info:status"
msgid "Unable to slice because there are objects associated with disabled Extruder %s."
msgstr "Nie można pociąć, ponieważ obecne są obiekty powiązane z wyłączonym ekstruderem %s."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:437
+#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraEngineBackend/CuraEngineBackend.py:463
msgctxt "@info:status"
msgid ""
"Please review settings and check if your models:\n"
@@ -1157,28 +1176,28 @@ msgctxt "@item:intext"
msgid "Removable Drive"
msgstr "Dysk wymienny"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:121
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:128
msgctxt "@info:status"
msgid "Cura does not accurately display layers when Wire Printing is enabled."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:122
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:129
msgctxt "@info:title"
msgid "Simulation View"
msgstr "Widok symulacji"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:123
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:130
msgctxt "@info:status"
msgid "Nothing is shown because you need to slice first."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:123
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:130
msgctxt "@info:title"
msgid "No layers to show"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:124
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:73
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationView.py:131
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:74
msgctxt "@info:option_text"
msgid "Do not show this message again"
msgstr "Nie pokazuj tego komunikatu ponownie"
@@ -1188,14 +1207,19 @@ msgctxt "@item:inlistbox"
msgid "Layer view"
msgstr "Widok warstwy"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:70
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:71
msgctxt "@info:status"
-msgid "Your model is not manifold. The highlighted areas indicate either missing or extraneous surfaces."
+msgid "The highlighted areas indicate either missing or extraneous surfaces. Fix your model and open it again into Cura."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:72
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:73
msgctxt "@info:title"
-msgid "Model errors"
+msgid "Model Errors"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/SolidView.py:79
+msgctxt "@action:button"
+msgid "Learn more"
msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/plugins/SolidView/__init__.py:12
@@ -1224,7 +1248,7 @@ msgctxt "@info:title"
msgid "Changes detected from your Ultimaker account"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py:146
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py:145
msgctxt "@action:button"
msgid "Sync"
msgstr ""
@@ -1260,7 +1284,7 @@ msgctxt "@info:generic"
msgid "You need to quit and restart {} before changes have effect."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/SyncOrchestrator.py:76
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/src/CloudSync/SyncOrchestrator.py:79
msgctxt "@info:generic"
msgid "{} plugins failed to download"
msgstr ""
@@ -1301,7 +1325,11 @@ msgctxt "@item:inlistbox"
msgid "Ultimaker Format Package"
msgstr "Pakiet Formatu Ultimaker"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:146
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:57
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:72
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:94
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:149
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UFPWriter/UFPWriter.py:159
msgctxt "@info:error"
msgid "Can't write to UFP file:"
msgstr ""
@@ -1316,22 +1344,22 @@ msgctxt "@action"
msgid "Select upgrades"
msgstr "Wybierz aktualizacje"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:152
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:154
msgctxt "@action:button"
msgid "Print via cloud"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:153
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:155
msgctxt "@properties:tooltip"
msgid "Print via cloud"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:154
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:156
msgctxt "@info:status"
msgid "Connected via cloud"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:264
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py:270
#, python-brace-format
msgctxt "@error:send"
msgid "Unknown error code when uploading print job: {0}"
@@ -1623,82 +1651,82 @@ msgctxt "@info:tooltip"
msgid "Some things could be problematic in this print. Click to see tips for adjustment."
msgstr "Niektóre rzeczy mogą być problematyczne podczas tego wydruku. Kliknij, aby zobaczyć porady dotyczące regulacji."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:14
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:15
msgctxt "@title:window"
msgid "Open Project"
msgstr "Otwórz projekt"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:61
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:62
msgctxt "@action:ComboBox Update/override existing profile"
msgid "Update existing"
msgstr "Zaktualizuj istniejące"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:62
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:63
msgctxt "@action:ComboBox Save settings in a new profile"
msgid "Create new"
msgstr "Utwórz nowy"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:74
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:75
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:69
msgctxt "@action:title"
msgid "Summary - Cura Project"
msgstr "Podsumowanie - Projekt Cura"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:96
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:97
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:93
msgctxt "@action:label"
msgid "Printer settings"
msgstr "Ustawienia drukarki"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:112
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:113
msgctxt "@info:tooltip"
msgid "How should the conflict in the machine be resolved?"
msgstr "Jak powinny być rozwiązywane błędy w maszynie?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:165
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:167
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:102
msgctxt "@action:label"
msgid "Type"
msgstr "Typ"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:181
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:183
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:117
msgctxt "@action:label"
msgid "Printer Group"
msgstr "Grupa drukarek"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:203
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:205
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:218
msgctxt "@action:label"
msgid "Profile settings"
msgstr "Ustawienia profilu"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:219
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:221
msgctxt "@info:tooltip"
msgid "How should the conflict in the profile be resolved?"
msgstr "Jak powinien zostać rozwiązany problem z profilem?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:239
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:349
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:242
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:353
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:117
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:242
msgctxt "@action:label"
msgid "Name"
msgstr "Nazwa"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:255
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:258
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:259
msgctxt "@action:label"
msgid "Intent"
msgstr "Cel"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:271
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:274
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:226
msgctxt "@action:label"
msgid "Not in profile"
msgstr "Nie w profilu"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:276
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:279
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:231
msgctxt "@action:label"
msgid "%1 override"
@@ -1706,54 +1734,54 @@ msgid_plural "%1 overrides"
msgstr[0] "%1 nadpisanie"
msgstr[1] "%1 Zastępuje"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:287
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:290
msgctxt "@action:label"
msgid "Derivative from"
msgstr "Pochodna z"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:292
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:295
msgctxt "@action:label"
msgid "%1, %2 override"
msgid_plural "%1, %2 overrides"
msgstr[0] "%1, %2 nadpisanie"
msgstr[1] "%1, %2 zastępuje"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:309
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:312
msgctxt "@action:label"
msgid "Material settings"
msgstr "Ustawienia materiału"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:325
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:328
msgctxt "@info:tooltip"
msgid "How should the conflict in the material be resolved?"
msgstr "Jak powinien zostać rozwiązany problem z materiałem?"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:369
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:373
msgctxt "@action:label"
msgid "Setting visibility"
msgstr "Ustawienie widoczności"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:378
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:382
msgctxt "@action:label"
msgid "Mode"
msgstr "Tryb"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:394
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:398
msgctxt "@action:label"
msgid "Visible settings:"
msgstr "Widoczne ustawienie:"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:399
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:403
msgctxt "@action:label"
msgid "%1 out of %2"
msgstr "%1 poza %2"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:425
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:429
msgctxt "@action:warning"
msgid "Loading a project will clear all models on the build plate."
msgstr "Ładowanie projektu usunie wszystkie modele z platformy roboczej."
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:453
+#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:457
msgctxt "@action:button"
msgid "Open"
msgstr "Otwórz"
@@ -1855,8 +1883,8 @@ msgstr "Wykonaj kopię zapasową i zsynchronizuj ustawienia Cura."
#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/qml/pages/WelcomePage.qml:51
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/WelcomePage.qml:39
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:68
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:125
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:53
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:199
msgctxt "@button"
msgid "Sign in"
msgstr "Zaloguj"
@@ -2090,12 +2118,12 @@ msgctxt "@label"
msgid "Cooling Fan Number"
msgstr "Numer Wentylatora"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:162
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:163
msgctxt "@title:label"
msgid "Extruder Start G-code"
msgstr "Początkowy G-code ekstrudera"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:176
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsExtruderTab.qml:177
msgctxt "@title:label"
msgid "Extruder End G-code"
msgstr "Końcowy G-code ekstrudera"
@@ -2180,12 +2208,17 @@ msgctxt "@label"
msgid "Number of Extruders"
msgstr "Liczba ekstruderów"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:374
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:345
+msgctxt "@label"
+msgid "Apply Extruder offsets to GCode"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:393
msgctxt "@title:label"
msgid "Start G-code"
msgstr "Początkowy G-code"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:385
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MachineSettingsAction/MachineSettingsPrinterTab.qml:404
msgctxt "@title:label"
msgid "End G-code"
msgstr "Końcowy G-code"
@@ -2213,6 +2246,11 @@ msgctxt "@label link to technical assistance"
msgid "View user manuals online"
msgstr "Pokaż instrukcję użytkownika online"
+#: /home/trin/Gedeeld/Projects/Cura/plugins/MonitorStage/MonitorMain.qml:172
+msgctxt "@info"
+msgid "In order to monitor your print from Cura, please connect the printer."
+msgstr ""
+
#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/PerObjectSettingsPanel.qml:42
msgctxt "@label"
msgid "Mesh Type"
@@ -2259,7 +2297,7 @@ msgid "Select Settings to Customize for this model"
msgstr "Wybierz Ustawienia, aby dostosować ten model"
#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:55
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:94
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:96
msgctxt "@label:textbox"
msgid "Filter..."
msgstr "Filtr..."
@@ -2269,32 +2307,32 @@ msgctxt "@label:checkbox"
msgid "Show all"
msgstr "Pokaż wszystko"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:18
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:20
msgctxt "@title:window"
msgid "Post Processing Plugin"
msgstr "Plugin post-processingu"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:57
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:59
msgctxt "@label"
msgid "Post Processing Scripts"
msgstr "Skrypty post-processingu"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:233
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:235
msgctxt "@action"
msgid "Add a script"
msgstr "Dodaj skrypt"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:279
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:282
msgctxt "@label"
msgid "Settings"
msgstr "Ustawienia"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:499
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:502
msgctxt "@info:tooltip"
msgid "Change active post-processing scripts."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:503
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:506
msgctxt "@info:tooltip"
msgid "The following script is active:"
msgid_plural "The following scripts are active:"
@@ -2307,78 +2345,93 @@ msgctxt "@label"
msgid "Color scheme"
msgstr "Schemat kolorów"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:107
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:110
msgctxt "@label:listbox"
msgid "Material Color"
msgstr "Kolor materiału"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:111
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:114
msgctxt "@label:listbox"
msgid "Line Type"
msgstr "Rodzaj linii"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:115
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:118
msgctxt "@label:listbox"
msgid "Speed"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:119
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:122
msgctxt "@label:listbox"
-msgid "Layer thickness"
-msgstr "Grubość warstwy"
+msgid "Layer Thickness"
+msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:156
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:126
+msgctxt "@label:listbox"
+msgid "Line Width"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:130
+msgctxt "@label:listbox"
+msgid "Flow"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:171
msgctxt "@label"
msgid "Compatibility Mode"
msgstr "Tryb zgodności"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:230
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:245
msgctxt "@label"
msgid "Travels"
msgstr "Ruchy"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:236
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:251
msgctxt "@label"
msgid "Helpers"
msgstr "Pomoce"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:242
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:257
msgctxt "@label"
msgid "Shell"
msgstr "Obrys"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:248
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:263
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedInfillDensitySelector.qml:65
msgctxt "@label"
msgid "Infill"
msgstr "Wypełnienie"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:298
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:271
+msgctxt "@label"
+msgid "Starts"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:322
msgctxt "@label"
msgid "Only Show Top Layers"
msgstr "Pokaż tylko najwyższe warstwy"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:308
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:332
msgctxt "@label"
msgid "Show 5 Detailed Layers On Top"
msgstr "Pokaż 5 Szczegółowych Warstw"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:322
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:346
msgctxt "@label"
msgid "Top / Bottom"
msgstr "Góra/ Dół"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:326
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:350
msgctxt "@label"
msgid "Inner Wall"
msgstr "Wewnętrzna ściana"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:384
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:419
msgctxt "@label"
msgid "min"
msgstr "min"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:433
+#: /home/trin/Gedeeld/Projects/Cura/plugins/SimulationView/SimulationViewMenuComponent.qml:488
msgctxt "@label"
msgid "max"
msgstr "max"
@@ -2519,7 +2572,7 @@ msgid "Plugins"
msgstr "Wtyczki"
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxHeader.qml:44
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:466
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:457
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:89
msgctxt "@title:tab"
msgid "Materials"
@@ -2568,6 +2621,7 @@ msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/dialogs/CompatibilityDialog.qml:23
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/DataCollectionsContent.qml:123
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/FirstStartMachineActionsContent.qml:77
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:178
msgctxt "@button"
msgid "Next"
msgstr "Dalej"
@@ -2911,7 +2965,7 @@ msgid "Delete"
msgstr "Usuń"
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:100
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:289
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:290
msgctxt "@label"
msgid "Resume"
msgstr "Ponów"
@@ -2927,8 +2981,8 @@ msgid "Resuming..."
msgstr "Przywracanie..."
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:106
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:284
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:293
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:285
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:294
msgctxt "@label"
msgid "Pause"
msgstr "Wstrzymaj"
@@ -2969,7 +3023,7 @@ msgid "Are you sure you want to abort %1?"
msgstr "Czy jesteś pewien, że chcesz anulować %1?"
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorContextMenu.qml:164
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:335
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:336
msgctxt "@window:title"
msgid "Abort print"
msgstr "Anuluj wydruk"
@@ -2980,7 +3034,7 @@ msgid "Manage printer"
msgstr "Zarządzaj drukarkami"
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:254
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:519
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:523
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobCard.qml:250
msgctxt "@info"
msgid "Please update your printer's firmware to manage the queue remotely."
@@ -3006,27 +3060,34 @@ msgctxt "@label:status"
msgid "Idle"
msgstr "Zajęta"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:365
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:364
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:84
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:86
+msgctxt "@label:status"
+msgid "Preparing..."
+msgstr "Przygotowyję..."
+
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:369
msgctxt "@label:status"
msgid "Printing"
msgstr "Drukowanie"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:406
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:410
msgctxt "@label"
msgid "Untitled"
msgstr "Bez tytułu"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:427
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:431
msgctxt "@label"
msgid "Anonymous"
msgstr "Anonimowa"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:454
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:458
msgctxt "@label:status"
msgid "Requires configuration changes"
msgstr "Wymaga zmian konfiguracji"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:492
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrinterCard.qml:496
msgctxt "@action:button"
msgid "Details"
msgstr "Szczegóły"
@@ -3053,12 +3114,6 @@ msgctxt "@label:status"
msgid "Finished"
msgstr "Zakończono"
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:84
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:86
-msgctxt "@label:status"
-msgid "Preparing..."
-msgstr "Przygotowyję..."
-
#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorPrintJobProgressBar.qml:88
msgctxt "@label:status"
msgid "Aborting..."
@@ -3139,24 +3194,24 @@ msgctxt "@action:button"
msgid "Sign in"
msgstr "Zaloguj"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:40
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:20
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:64
msgctxt "@label"
-msgid "Your key to connected 3D printing"
+msgid "Sign in to the Ultimaker platform"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:51
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:42
msgctxt "@text"
msgid ""
-"- Customize your experience with more print profiles and plugins\n"
-"- Stay flexible by syncing your setup and loading it anywhere\n"
-"- Increase efficiency with a remote workflow on Ultimaker printers"
+"- Add material profiles and plug-ins from the Marketplace\n"
+"- Back-up and sync your material profiles and plug-ins\n"
+"- Share ideas and get help from 48,000+ users in the Ultimaker community"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:78
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:142
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/GeneralOperations.qml:62
msgctxt "@button"
-msgid "Create account"
-msgstr "Utwórz konto"
+msgid "Create a free Ultimaker account"
+msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Account/SyncState.qml:28
msgctxt "@label"
@@ -3263,309 +3318,308 @@ msgctxt "@button"
msgid "Cancel"
msgstr "Anuluj"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:82
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:83
msgctxt "@action:inmenu"
msgid "Show Online Troubleshooting Guide"
msgstr "Pokaż przewodnik rozwiązywania problemów online"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:89
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:90
msgctxt "@action:inmenu"
msgid "Toggle Full Screen"
msgstr "Przełącz tryb pełnoekranowy"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:97
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:98
msgctxt "@action:inmenu"
msgid "Exit Full Screen"
msgstr "Wyłącz tryb pełnoekranowy"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:104
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:105
msgctxt "@action:inmenu menubar:edit"
msgid "&Undo"
msgstr "&Cofnij"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:114
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:115
msgctxt "@action:inmenu menubar:edit"
msgid "&Redo"
msgstr "&Ponów"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:124
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:125
msgctxt "@action:inmenu menubar:file"
msgid "&Quit"
msgstr "&Zamknij"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:132
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:133
msgctxt "@action:inmenu menubar:view"
msgid "3D View"
msgstr "Widok 3D"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:139
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:140
msgctxt "@action:inmenu menubar:view"
msgid "Front View"
msgstr "Widok z przodu"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:146
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:147
msgctxt "@action:inmenu menubar:view"
msgid "Top View"
msgstr "Widok z góry"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:153
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:154
+msgctxt "@action:inmenu menubar:view"
+msgid "Bottom View"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:161
msgctxt "@action:inmenu menubar:view"
msgid "Left Side View"
msgstr "Widok z lewej strony"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:160
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:168
msgctxt "@action:inmenu menubar:view"
msgid "Right Side View"
msgstr "Widok z prawej strony"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:167
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:175
msgctxt "@action:inmenu"
msgid "Configure Cura..."
msgstr "Konfiguruj Cura..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:174
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:182
msgctxt "@action:inmenu menubar:printer"
msgid "&Add Printer..."
msgstr "&Dodaj drukarkę..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:180
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:188
msgctxt "@action:inmenu menubar:printer"
msgid "Manage Pr&inters..."
msgstr "Zarządzaj drukarkami..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:187
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:195
msgctxt "@action:inmenu"
msgid "Manage Materials..."
msgstr "Zarządzaj materiałami..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:195
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:203
msgctxt "@action:inmenu"
msgid "Add more materials from Marketplace"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:202
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:210
msgctxt "@action:inmenu menubar:profile"
msgid "&Update profile with current settings/overrides"
msgstr "&Aktualizuj profil z bieżącymi ustawieniami"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:210
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:218
msgctxt "@action:inmenu menubar:profile"
msgid "&Discard current changes"
msgstr "&Odrzuć bieżące zmiany"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:222
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:230
msgctxt "@action:inmenu menubar:profile"
msgid "&Create profile from current settings/overrides..."
msgstr "&Utwórz profil z bieżących ustawień..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:228
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:236
msgctxt "@action:inmenu menubar:profile"
msgid "Manage Profiles..."
msgstr "Zarządzaj profilami..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:236
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:244
msgctxt "@action:inmenu menubar:help"
msgid "Show Online &Documentation"
msgstr "Pokaż dokumentację internetową"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:244
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:252
msgctxt "@action:inmenu menubar:help"
msgid "Report a &Bug"
msgstr "Zgłoś błąd"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:252
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:260
msgctxt "@action:inmenu menubar:help"
msgid "What's New"
msgstr "Co nowego"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:258
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:266
msgctxt "@action:inmenu menubar:help"
msgid "About..."
msgstr "O..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:265
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:273
msgctxt "@action:inmenu menubar:edit"
-msgid "Delete Selected Model"
-msgid_plural "Delete Selected Models"
-msgstr[0] "Usuń wybrany model"
-msgstr[1] "Usuń wybrane modele"
+msgid "Delete Selected"
+msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:275
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:283
msgctxt "@action:inmenu menubar:edit"
-msgid "Center Selected Model"
-msgid_plural "Center Selected Models"
-msgstr[0] "Wyśrodkuj wybrany model"
-msgstr[1] "Wyśrodkuj wybrane modele"
+msgid "Center Selected"
+msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:284
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:292
msgctxt "@action:inmenu menubar:edit"
-msgid "Multiply Selected Model"
-msgid_plural "Multiply Selected Models"
-msgstr[0] "Rozmnóż wybrany model"
-msgstr[1] "Rozmnóż wybrane modele"
+msgid "Multiply Selected"
+msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:293
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:301
msgctxt "@action:inmenu"
msgid "Delete Model"
msgstr "Usuń model"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:301
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:309
msgctxt "@action:inmenu"
msgid "Ce&nter Model on Platform"
msgstr "Wyśrodkuj model na platformie"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:307
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:315
msgctxt "@action:inmenu menubar:edit"
msgid "&Group Models"
msgstr "&Grupuj modele"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:327
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:335
msgctxt "@action:inmenu menubar:edit"
msgid "Ungroup Models"
msgstr "Rozgrupuj modele"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:337
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:345
msgctxt "@action:inmenu menubar:edit"
msgid "&Merge Models"
msgstr "Połącz modele"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:347
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:355
msgctxt "@action:inmenu"
msgid "&Multiply Model..."
msgstr "&Powiel model..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:354
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:362
msgctxt "@action:inmenu menubar:edit"
msgid "Select All Models"
msgstr "Wybierz wszystkie modele"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:364
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:372
msgctxt "@action:inmenu menubar:edit"
msgid "Clear Build Plate"
msgstr "Wyczyść stół"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:374
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:382
msgctxt "@action:inmenu menubar:file"
msgid "Reload All Models"
msgstr "Przeładuj wszystkie modele"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:383
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:391
msgctxt "@action:inmenu menubar:edit"
msgid "Arrange All Models To All Build Plates"
msgstr "Rozłóż Wszystkie Modele na Wszystkie Platformy Robocze"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:390
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:398
msgctxt "@action:inmenu menubar:edit"
msgid "Arrange All Models"
msgstr "Ułóż wszystkie modele"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:398
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:406
msgctxt "@action:inmenu menubar:edit"
msgid "Arrange Selection"
msgstr "Wybór ułożenia"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:405
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:413
msgctxt "@action:inmenu menubar:edit"
msgid "Reset All Model Positions"
msgstr "Zresetuj wszystkie pozycje modelu"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:412
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:420
msgctxt "@action:inmenu menubar:edit"
msgid "Reset All Model Transformations"
msgstr "Zresetuj wszystkie przekształcenia modelu"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:419
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:429
msgctxt "@action:inmenu menubar:file"
msgid "&Open File(s)..."
msgstr "&Otwórz plik(i)..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:427
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:439
msgctxt "@action:inmenu menubar:file"
msgid "&New Project..."
msgstr "&Nowy projekt..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:434
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:446
msgctxt "@action:inmenu menubar:help"
msgid "Show Configuration Folder"
msgstr "Pokaż folder konfiguracji"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:441
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:538
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:453
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:550
msgctxt "@action:menu"
msgid "Configure setting visibility..."
msgstr "Skonfiguruj widoczność ustawień ..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:448
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Actions.qml:460
msgctxt "@action:menu"
msgid "&Marketplace"
msgstr "&Marketplace"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:266
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:257
msgctxt "@label"
msgid "This package will be installed after restarting."
msgstr "Ten pakiet zostanie zainstalowany po ponownym uruchomieniu."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:459
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:15
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:450
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:17
msgctxt "@title:tab"
msgid "General"
msgstr "Ogólny"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:462
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:453
msgctxt "@title:tab"
msgid "Settings"
msgstr "Ustawienia"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:464
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:455
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:16
msgctxt "@title:tab"
msgid "Printers"
msgstr "Drukarki"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:468
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:459
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:34
msgctxt "@title:tab"
msgid "Profiles"
msgstr "Profile"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:587
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:576
msgctxt "@title:window %1 is the application name"
msgid "Closing %1"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:588
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:600
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:577
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:589
msgctxt "@label %1 is the application name"
msgid "Are you sure you want to exit %1?"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:638
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:627
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:19
msgctxt "@title:window"
msgid "Open file(s)"
msgstr "Otwórz plik(i)"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:744
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:737
msgctxt "@window:title"
msgid "Install Package"
msgstr "Instaluj pakiety"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:752
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:745
msgctxt "@title:window"
msgid "Open File(s)"
msgstr "Otwórz plik(i)"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:755
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:748
msgctxt "@text:window"
msgid "We have found one or more G-Code files within the files you have selected. You can only open one G-Code file at a time. If you want to open a G-Code file, please just select only one."
msgstr "Znaleziono jeden lub więcej plików G-code w wybranych plikach. Możesz otwierać tylko jeden plik G-code jednocześnie. Jeśli chcesz otworzyć plik G-code, proszę wybierz tylko jeden."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:858
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:857
msgctxt "@title:window"
msgid "Add Printer"
msgstr "Dodaj drukarkę"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:866
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Cura.qml:865
msgctxt "@title:window"
msgid "What's New"
msgstr "Co nowego"
@@ -3715,17 +3769,27 @@ msgctxt "@label"
msgid "Python bindings for libnest2d"
msgstr ""
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:161
+msgctxt "@label"
+msgid "Support library for system keyring access"
+msgstr ""
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:162
msgctxt "@label"
+msgid "Python extensions for Microsoft Windows"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:163
+msgctxt "@label"
msgid "Font"
msgstr "Czcionka"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:163
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:164
msgctxt "@label"
msgid "SVG icons"
msgstr "Ikony SVG"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:164
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:165
msgctxt "@label"
msgid "Linux cross-distribution application deployment"
msgstr "Wdrożenie aplikacji pomiędzy dystrybucjami Linux"
@@ -3735,22 +3799,22 @@ msgctxt "@title:window"
msgid "Open project file"
msgstr "Otwórz plik projektu"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:93
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:88
msgctxt "@text:window"
msgid "This is a Cura project file. Would you like to open it as a project or import the models from it?"
msgstr "Jest to plik projektu Cura. Czy chcesz otworzyć go jako projekt, czy zaimportować z niego modele?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:103
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:98
msgctxt "@text:window"
msgid "Remember my choice"
msgstr "Zapamiętaj mój wybór"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:122
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:117
msgctxt "@action:button"
msgid "Open as project"
msgstr "Otwórz jako projekt"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:131
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AskOpenAsProjectOrModelsDialog.qml:126
msgctxt "@action:button"
msgid "Import models"
msgstr "Importuj modele"
@@ -3779,7 +3843,7 @@ msgid "Current changes"
msgstr ""
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/DiscardOrKeepProfileChangesDialog.qml:158
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:747
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:733
msgctxt "@option:discardOrKeep"
msgid "Always ask me this"
msgstr "Zawsze pytaj o to"
@@ -3804,12 +3868,12 @@ msgctxt "@action:button"
msgid "Keep changes"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:64
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:59
msgctxt "@text:window"
msgid "We have found one or more project file(s) within the files you have selected. You can open only one project file at a time. We suggest to only import models from those files. Would you like to proceed?"
msgstr "Znaleziono jeden lub więcej plików projektu w wybranych plikach. Możesz otwierać tylko jeden plik projektu na raz. Proponujemy importowanie tylko modeli z tych plików. Czy chcesz kontynuować?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:99
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:94
msgctxt "@action:button"
msgid "Import all as models"
msgstr "Importuj wszystkie jako modele"
@@ -3964,7 +4028,7 @@ msgctxt "@label"
msgid "Material"
msgstr "Materiał"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/CustomConfiguration.qml:394
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/CustomConfiguration.qml:407
msgctxt "@label"
msgid "Use glue for better adhesion with this material combination."
msgstr "Użyj kleju dla lepszej przyczepności dla tej kombinacji materiałów."
@@ -3988,17 +4052,17 @@ msgctxt "@label"
msgid "Number of Copies"
msgstr "Liczba kopii"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:33
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:41
msgctxt "@title:menu menubar:file"
msgid "&Save Project..."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:54
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:74
msgctxt "@title:menu menubar:file"
msgid "&Export..."
msgstr "&Eksportuj..."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:65
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/FileMenu.qml:85
msgctxt "@action:inmenu menubar:file"
msgid "Export Selection..."
msgstr "Eksportuj Zaznaczenie..."
@@ -4018,6 +4082,11 @@ msgctxt "@label:category menu label"
msgid "Generic"
msgstr "Podstawowe"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/OpenFilesMenu.qml:15
+msgctxt "@title:menu menubar:file"
+msgid "Open File(s)..."
+msgstr ""
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/PrinterMenu.qml:25
msgctxt "@label:category menu label"
msgid "Network enabled printers"
@@ -4033,6 +4102,11 @@ msgctxt "@title:menu menubar:file"
msgid "Open &Recent"
msgstr "Otwórz &ostatnio używane"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SaveProjectMenu.qml:15
+msgctxt "@title:menu menubar:file"
+msgid "Save Project..."
+msgstr ""
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingsMenu.qml:15
msgctxt "@title:menu menubar:settings"
msgid "&Printer"
@@ -4058,17 +4132,17 @@ msgctxt "@action:inmenu"
msgid "Disable Extruder"
msgstr "Wyłącz Ekstruder"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:13
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:16
msgctxt "@action:inmenu"
msgid "Visible Settings"
msgstr "Widoczne Ustawienia"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:42
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:45
msgctxt "@action:inmenu"
msgid "Collapse All Categories"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:51
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingVisibilityPresetsMenu.qml:54
msgctxt "@action:inmenu"
msgid "Manage Setting Visibility..."
msgstr "Ustaw Widoczność Ustawień..."
@@ -4078,22 +4152,22 @@ msgctxt "@action:inmenu menubar:view"
msgid "&Camera position"
msgstr "&Pozycja kamery"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:44
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:45
msgctxt "@action:inmenu menubar:view"
msgid "Camera view"
msgstr "Widok z kamery"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:47
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:48
msgctxt "@action:inmenu menubar:view"
msgid "Perspective"
msgstr "Perspektywiczny"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:59
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:60
msgctxt "@action:inmenu menubar:view"
msgid "Orthographic"
msgstr "Rzut ortograficzny"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:80
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ViewMenu.qml:81
msgctxt "@action:inmenu menubar:view"
msgid "&Build plate"
msgstr "P&ole robocze"
@@ -4138,12 +4212,12 @@ msgctxt "@label:MonitorStatus"
msgid "Please remove the print"
msgstr "Usuń wydruk"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:325
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:326
msgctxt "@label"
msgid "Abort Print"
msgstr "Anuluj Wydruk"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:337
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/MonitorButton.qml:338
msgctxt "@label"
msgid "Are you sure you want to abort the print?"
msgstr "Czy na pewno chcesz przerwać drukowanie?"
@@ -4185,301 +4259,301 @@ msgctxt "@label"
msgid "Interface"
msgstr "Interfejs"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:216
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:209
msgctxt "@label"
msgid "Currency:"
msgstr "Waluta:"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:229
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:222
msgctxt "@label"
msgid "Theme:"
msgstr "Motyw:"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:285
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:267
msgctxt "@label"
msgid "You will need to restart the application for these changes to have effect."
msgstr "Musisz zrestartować aplikację, aby te zmiany zaczęły obowiązywać."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:302
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:284
msgctxt "@info:tooltip"
msgid "Slice automatically when changing settings."
msgstr "Tnij automatycznie podczas zmiany ustawień."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:310
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:292
msgctxt "@option:check"
msgid "Slice automatically"
msgstr "Automatyczne Cięcie"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:324
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:306
msgctxt "@label"
msgid "Viewport behavior"
msgstr "Zachowanie okna edycji"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:332
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:314
msgctxt "@info:tooltip"
msgid "Highlight unsupported areas of the model in red. Without support these areas will not print properly."
msgstr "Zaznacz nieobsługiwane obszary modelu na czerwono. Bez wsparcia te obszary nie będą drukowane prawidłowo."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:341
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:323
msgctxt "@option:check"
msgid "Display overhang"
msgstr "Wyświetl zwis"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:351
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:333
msgctxt "@info:tooltip"
msgid "Highlight missing or extraneous surfaces of the model using warning signs. The toolpaths will often be missing parts of the intended geometry."
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:360
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:342
msgctxt "@option:check"
msgid "Display model errors"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:368
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:350
msgctxt "@info:tooltip"
msgid "Moves the camera so the model is in the center of the view when a model is selected"
msgstr "Przenosi kamerę, aby model był w centrum widoku, gdy wybrano model"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:373
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:355
msgctxt "@action:button"
msgid "Center camera when item is selected"
msgstr "Wyśrodkuj kamerę kiedy przedmiot jest zaznaczony"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:383
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:365
msgctxt "@info:tooltip"
msgid "Should the default zoom behavior of cura be inverted?"
msgstr "Czy domyślne zachowanie zoomu powinno zostać odwrócone?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:388
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:370
msgctxt "@action:button"
msgid "Invert the direction of camera zoom."
msgstr "Odwróć kierunek zoomu kamery."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:404
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:386
msgctxt "@info:tooltip"
msgid "Should zooming move in the direction of the mouse?"
msgstr "Czy przybliżanie powinno poruszać się w kierunku myszy?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:404
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:386
msgctxt "@info:tooltip"
msgid "Zooming towards the mouse is not supported in the orthographic perspective."
msgstr "Powiększanie w kierunku myszy nie jest obsługiwane w danej perspektywie."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:409
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:391
msgctxt "@action:button"
msgid "Zoom toward mouse direction"
msgstr "Przybliżaj w kierunku myszy"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:435
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:417
msgctxt "@info:tooltip"
msgid "Should models on the platform be moved so that they no longer intersect?"
msgstr "Czy modele na platformie powinny być przenoszone w taki sposób, aby nie przecinały się?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:440
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:422
msgctxt "@option:check"
msgid "Ensure models are kept apart"
msgstr "Upewnij się, że modele są oddzielone"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:449
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:431
msgctxt "@info:tooltip"
msgid "Should models on the platform be moved down to touch the build plate?"
msgstr "Czy modele na platformie powinny być przesunięte w dół, aby dotknęły stołu roboczego?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:454
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:436
msgctxt "@option:check"
msgid "Automatically drop models to the build plate"
msgstr "Automatycznie upuść modele na stół roboczy"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:466
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:448
msgctxt "@info:tooltip"
msgid "Show caution message in g-code reader."
msgstr "Pokaż wiadomości ostrzegawcze w czytniku g-code."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:475
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:457
msgctxt "@option:check"
msgid "Caution message in g-code reader"
msgstr "Wiadomość ostrzegawcza w czytniku g-code"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:483
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:465
msgctxt "@info:tooltip"
msgid "Should layer be forced into compatibility mode?"
msgstr "Czy warstwa powinna być wymuszona w trybie zgodności?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:488
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:470
msgctxt "@option:check"
msgid "Force layer view compatibility mode (restart required)"
msgstr "Wymuszenie widoku warstw w trybie zgodności (wymaga ponownego uruchomienia)"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:498
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:480
msgctxt "@info:tooltip"
msgid "Should Cura open at the location it was closed?"
msgstr "Czy Cura powinna się otwierać w miejscu, w którym została zamknięta?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:503
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:485
msgctxt "@option:check"
msgid "Restore window position on start"
msgstr "Przywróć pozycję okna przy starcie"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:513
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:495
msgctxt "@info:tooltip"
msgid "What type of camera rendering should be used?"
msgstr "Jakiego rodzaju kamery należy użyć do renderowania?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:520
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:502
msgctxt "@window:text"
msgid "Camera rendering:"
msgstr "Renderowanie z kamery: "
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:531
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:509
msgid "Perspective"
msgstr "Perspektywiczny"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:532
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:510
msgid "Orthographic"
msgstr "Rzut ortograficzny"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:563
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:548
msgctxt "@label"
msgid "Opening and saving files"
msgstr "Otwieranie i zapisywanie plików"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:570
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:555
msgctxt "@info:tooltip"
msgid "Should opening files from the desktop or external applications open in the same instance of Cura?"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:575
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:560
msgctxt "@option:check"
msgid "Use a single instance of Cura"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:585
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:570
msgctxt "@info:tooltip"
msgid "Should models be scaled to the build volume if they are too large?"
msgstr "Czy modele powinny być skalowane do wielkości obszaru roboczego, jeśli są zbyt duże?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:590
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:575
msgctxt "@option:check"
msgid "Scale large models"
msgstr "Skaluj duże modele"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:600
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:585
msgctxt "@info:tooltip"
msgid "An model may appear extremely small if its unit is for example in meters rather than millimeters. Should these models be scaled up?"
msgstr "Model może wydawać się bardzo mały, jeśli jego jednostka jest na przykład w metrach, a nie w milimetrach. Czy takie modele powinny być skalowane?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:605
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:590
msgctxt "@option:check"
msgid "Scale extremely small models"
msgstr "Skaluj bardzo małe modele"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:615
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:600
msgctxt "@info:tooltip"
msgid "Should models be selected after they are loaded?"
msgstr "Czy modele powinny zostać zaznaczone po załadowaniu?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:620
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:605
msgctxt "@option:check"
msgid "Select models when loaded"
msgstr "Zaznaczaj modele po załadowaniu"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:630
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:615
msgctxt "@info:tooltip"
msgid "Should a prefix based on the printer name be added to the print job name automatically?"
msgstr "Czy przedrostek oparty na nazwie drukarki powinien być automatycznie dodawany do nazwy zadania?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:635
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:620
msgctxt "@option:check"
msgid "Add machine prefix to job name"
msgstr "Dodaj przedrostek maszyny do nazwy zadania"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:645
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:630
msgctxt "@info:tooltip"
msgid "Should a summary be shown when saving a project file?"
msgstr "Czy podsumowanie powinno być wyświetlane podczas zapisu projektu?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:649
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:634
msgctxt "@option:check"
msgid "Show summary dialog when saving project"
msgstr "Pokaż okno podsumowania podczas zapisywaniu projektu"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:659
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:644
msgctxt "@info:tooltip"
msgid "Default behavior when opening a project file"
msgstr "Domyślne zachowanie podczas otwierania pliku projektu"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:667
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:652
msgctxt "@window:text"
msgid "Default behavior when opening a project file: "
msgstr "Domyślne zachowanie podczas otwierania pliku projektu: "
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:681
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:666
msgctxt "@option:openProject"
msgid "Always ask me this"
msgstr "Zawsze pytaj"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:682
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:667
msgctxt "@option:openProject"
msgid "Always open as a project"
msgstr "Zawsze otwieraj jako projekt"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:683
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:668
msgctxt "@option:openProject"
msgid "Always import models"
msgstr "Zawsze importuj modele"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:719
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:705
msgctxt "@info:tooltip"
msgid "When you have made changes to a profile and switched to a different one, a dialog will be shown asking whether you want to keep your modifications or not, or you can choose a default behaviour and never show that dialog again."
msgstr "Kiedy dokonasz zmian w profilu i przełączysz się na inny, zostanie wyświetlone okno z pytaniem, czy chcesz zachować twoje zmiany, czy nie. Możesz też wybrać domyślne zachowanie, żeby to okno już nigdy nie było pokazywane."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:728
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:714
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Recommended/RecommendedQualityProfileSelector.qml:52
msgctxt "@label"
msgid "Profiles"
msgstr "Profile"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:733
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:719
msgctxt "@window:text"
msgid "Default behavior for changed setting values when switching to a different profile: "
msgstr "Domyślne zachowanie dla zmienionych ustawień podczas zmiany profilu na inny: "
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:748
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:734
msgctxt "@option:discardOrKeep"
msgid "Always discard changed settings"
msgstr "Zawsze odrzucaj wprowadzone zmiany"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:749
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:735
msgctxt "@option:discardOrKeep"
msgid "Always transfer changed settings to new profile"
msgstr "Zawsze przenoś wprowadzone zmiany do nowego profilu"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:783
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:770
msgctxt "@label"
msgid "Privacy"
msgstr "Prywatność"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:790
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:777
msgctxt "@info:tooltip"
msgid "Should Cura check for updates when the program is started?"
msgstr "Czy Cura ma sprawdzać dostępność aktualizacji podczas uruchamiania programu?"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:795
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:782
msgctxt "@option:check"
msgid "Check for updates on start"
msgstr "Sprawdź, dostępność aktualizacji podczas uruchamiania"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:805
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:792
msgctxt "@info:tooltip"
msgid "Should anonymous data about your print be sent to Ultimaker? Note, no models, IP addresses or other personally identifiable information is sent or stored."
msgstr "Czy anonimowe dane na temat wydruku mają być wysyłane do Ultimaker? Uwaga. Żadne modele, adresy IP, ani żadne inne dane osobiste nie będą wysyłane i/lub przechowywane."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:810
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:797
msgctxt "@option:check"
msgid "Send (anonymous) print information"
msgstr "Wyślij (anonimowe) informacje o drukowaniu"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:819
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/GeneralPage.qml:806
msgctxt "@action:button"
msgid "More information"
msgstr "Więcej informacji"
@@ -4519,55 +4593,65 @@ msgctxt "@action:button"
msgid "Export"
msgstr "Eksportuj"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:234
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:199
+msgctxt "@action:button Sending materials to printers"
+msgid "Sync with Printers"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:248
msgctxt "@action:label"
msgid "Printer"
msgstr "Drukarka"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:298
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:274
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:312
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:277
msgctxt "@title:window"
msgid "Confirm Remove"
msgstr "Potwierdź Usunięcie"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:301
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:275
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:315
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:278
msgctxt "@label (%1 is object name)"
msgid "Are you sure you wish to remove %1? This cannot be undone!"
msgstr "Czy na pewno chcesz usunąć %1? Nie można tego cofnąć!"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:315
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:323
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:329
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:337
msgctxt "@title:window"
msgid "Import Material"
msgstr "Importuj Materiał"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:324
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:338
msgctxt "@info:status Don't translate the XML tags or !"
msgid "Could not import material %1: %2"
msgstr "Nie można zaimportować materiału %1: %2"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:328
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:342
msgctxt "@info:status Don't translate the XML tag !"
msgid "Successfully imported material %1"
msgstr "Udało się zaimportować materiał %1"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:346
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:354
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:360
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:368
msgctxt "@title:window"
msgid "Export Material"
msgstr "Eksportuj Materiał"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:358
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:372
msgctxt "@info:status Don't translate the XML tags and !"
msgid "Failed to export material to %1: %2"
msgstr "Nie udało się wyeksportować materiału do %1: %2"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:364
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:378
msgctxt "@info:status Don't translate the XML tag !"
msgid "Successfully exported material to %1"
msgstr "Udało się wyeksportować materiał do %1"
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsPage.qml:388
+msgctxt "@title:window"
+msgid "Export All Materials"
+msgstr ""
+
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/Materials/MaterialsView.qml:72
msgctxt "@title"
msgid "Information"
@@ -4679,53 +4763,53 @@ msgctxt "@info"
msgid "Please provide a name for this profile."
msgstr "Podaj nazwę tego profilu."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:260
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:263
msgctxt "@title:window"
msgid "Duplicate Profile"
msgstr "Duplikuj profil"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:291
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:294
msgctxt "@title:window"
msgid "Rename Profile"
msgstr "Zmień nazwę profilu"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:304
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:307
msgctxt "@title:window"
msgid "Import Profile"
msgstr "Importuj Profil"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:333
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:336
msgctxt "@title:window"
msgid "Export Profile"
msgstr "Eksportuj Profil"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:396
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:399
msgctxt "@label %1 is printer name"
msgid "Printer: %1"
msgstr "Drukarka: %1"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:554
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:557
msgctxt "@action:button"
msgid "Update profile with current settings/overrides"
msgstr "Aktualizuj profil z bieżącymi ustawieniami"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:561
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:564
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/PrintSetupSelector/Custom/QualitiesWithIntentMenu.qml:244
msgctxt "@action:button"
msgid "Discard current changes"
msgstr "Odrzuć bieżące zmiany"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:580
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:583
msgctxt "@action:label"
msgid "This profile uses the defaults specified by the printer, so it has no settings/overrides in the list below."
msgstr "Ten profil używa ustawień domyślnych określonych przez drukarkę, dlatego nie ma żadnych ustawień z poniższej liście."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:588
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:591
msgctxt "@action:label"
msgid "Your current settings match the selected profile."
msgstr "Aktualne ustawienia odpowiadają wybranemu profilowi."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:606
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/ProfilesPage.qml:609
msgctxt "@title:tab"
msgid "Global Settings"
msgstr "Ustawienia ogólne"
@@ -4755,12 +4839,12 @@ msgctxt "@title:column"
msgid "Unit"
msgstr "Jednostka"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:14
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:16
msgctxt "@title:tab"
msgid "Setting Visibility"
msgstr "Widoczność ustawienia"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:46
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/SettingVisibilityPage.qml:48
msgctxt "@label:textbox"
msgid "Check all"
msgstr "Zaznacz wszystko"
@@ -5098,27 +5182,27 @@ msgctxt "@label:textbox"
msgid "Search settings"
msgstr "Ustawienia wyszukiwania"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:456
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:468
msgctxt "@action:menu"
msgid "Copy value to all extruders"
msgstr "Skopiuj wartość do wszystkich ekstruderów"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:465
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:477
msgctxt "@action:menu"
msgid "Copy all changed values to all extruders"
msgstr "Skopiuj wszystkie zmienione wartości do wszystkich ekstruderów"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:502
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:514
msgctxt "@action:menu"
msgid "Hide this setting"
msgstr "Ukryj tę opcję"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:515
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:527
msgctxt "@action:menu"
msgid "Don't show this setting"
msgstr "Nie pokazuj tej opcji"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:519
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Settings/SettingView.qml:531
msgctxt "@action:menu"
msgid "Keep this setting visible"
msgstr "Pozostaw tę opcję widoczną"
@@ -5178,11 +5262,6 @@ msgctxt "@button"
msgid "Add printer manually"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddCloudPrintersView.qml:218
-msgctxt "@button"
-msgid "Finish"
-msgstr "Koniec"
-
#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/AddLocalPrinterScrollView.qml:230
msgctxt "@label"
msgid "Manufacturer"
@@ -5289,32 +5368,32 @@ msgctxt "@button"
msgid "Connect"
msgstr "Połącz"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:43
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/ChangelogContent.qml:24
msgctxt "@label"
-msgid "Ultimaker Account"
+msgid "Release Notes"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:84
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:124
msgctxt "@text"
-msgid "Your key to connected 3D printing"
+msgid "Add material settings and plugins from the Marketplace"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:101
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:154
msgctxt "@text"
-msgid "- Customize your experience with more print profiles and plugins"
+msgid "Backup and sync your material settings and plugins"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:104
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:184
msgctxt "@text"
-msgid "- Stay flexible by syncing your setup and loading it anywhere"
+msgid "Share ideas and get help from 48,000+ users in the Ultimaker Community"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:107
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:217
msgctxt "@text"
-msgid "- Increase efficiency with a remote workflow on Ultimaker printers"
+msgid "Create a free Ultimaker Account"
msgstr ""
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:157
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/CloudContent.qml:230
msgctxt "@button"
msgid "Skip"
msgstr ""
@@ -5374,29 +5453,30 @@ msgctxt "@button"
msgid "Decline and close"
msgstr "Odrzuć i zamknij"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:29
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:56
msgctxt "@label"
msgid "Welcome to Ultimaker Cura"
msgstr "Witaj w Ultimaker Cura"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:47
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:68
msgctxt "@text"
-msgid ""
-"Please follow these steps to set up\n"
-"Ultimaker Cura. This will only take a few moments."
+msgid "Please follow these steps to set up Ultimaker Cura. This will only take a few moments."
msgstr ""
-"Wykonaj poniższe kroki, aby skonfigurować\n"
-"Ultimaker Cura. To zajmie tylko kilka chwil."
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:58
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WelcomeContent.qml:86
msgctxt "@button"
msgid "Get started"
msgstr "Rozpocznij"
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:24
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/WelcomePages/WhatsNewContent.qml:28
msgctxt "@label"
-msgid "What's new in Ultimaker Cura"
-msgstr "Co nowego w Ultimaker Cura"
+msgid "What's New"
+msgstr ""
+
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Widgets/ComboBox.qml:24
+msgctxt "@label"
+msgid "No items to select from"
+msgstr ""
#: ModelChecker/plugin.json
msgctxt "description"
@@ -5478,6 +5558,16 @@ msgctxt "name"
msgid "Cura Profile Writer"
msgstr "Cura Profile Writer"
+#: DigitalLibrary/plugin.json
+msgctxt "description"
+msgid "Connects to the Digital Library, allowing Cura to open files from and save files to the Digital Library."
+msgstr ""
+
+#: DigitalLibrary/plugin.json
+msgctxt "name"
+msgid "Ultimaker Digital Library"
+msgstr ""
+
#: FirmwareUpdateChecker/plugin.json
msgctxt "description"
msgid "Checks for firmware updates."
@@ -5948,6 +6038,26 @@ msgctxt "name"
msgid "Version Upgrade 4.7 to 4.8"
msgstr ""
+#: VersionUpgrade/VersionUpgrade48to49/plugin.json
+msgctxt "description"
+msgid "Upgrades configurations from Cura 4.8 to Cura 4.9."
+msgstr ""
+
+#: VersionUpgrade/VersionUpgrade48to49/plugin.json
+msgctxt "name"
+msgid "Version Upgrade 4.8 to 4.9"
+msgstr ""
+
+#: VersionUpgrade/VersionUpgrade49to410/plugin.json
+msgctxt "description"
+msgid "Upgrades configurations from Cura 4.9 to Cura 4.10."
+msgstr ""
+
+#: VersionUpgrade/VersionUpgrade49to410/plugin.json
+msgctxt "name"
+msgid "Version Upgrade 4.9 to 4.10"
+msgstr ""
+
#: X3DReader/plugin.json
msgctxt "description"
msgid "Provides support for reading X3D files."
@@ -5978,6 +6088,48 @@ msgctxt "name"
msgid "X-Ray View"
msgstr "Widok Rentgena"
+#~ msgctxt "@label:listbox"
+#~ msgid "Layer thickness"
+#~ msgstr "Grubość warstwy"
+
+#~ msgctxt "@button"
+#~ msgid "Create account"
+#~ msgstr "Utwórz konto"
+
+#~ msgctxt "@action:inmenu menubar:edit"
+#~ msgid "Delete Selected Model"
+#~ msgid_plural "Delete Selected Models"
+#~ msgstr[0] "Usuń wybrany model"
+#~ msgstr[1] "Usuń wybrane modele"
+
+#~ msgctxt "@action:inmenu menubar:edit"
+#~ msgid "Center Selected Model"
+#~ msgid_plural "Center Selected Models"
+#~ msgstr[0] "Wyśrodkuj wybrany model"
+#~ msgstr[1] "Wyśrodkuj wybrane modele"
+
+#~ msgctxt "@action:inmenu menubar:edit"
+#~ msgid "Multiply Selected Model"
+#~ msgid_plural "Multiply Selected Models"
+#~ msgstr[0] "Rozmnóż wybrany model"
+#~ msgstr[1] "Rozmnóż wybrane modele"
+
+#~ msgctxt "@button"
+#~ msgid "Finish"
+#~ msgstr "Koniec"
+
+#~ msgctxt "@text"
+#~ msgid ""
+#~ "Please follow these steps to set up\n"
+#~ "Ultimaker Cura. This will only take a few moments."
+#~ msgstr ""
+#~ "Wykonaj poniższe kroki, aby skonfigurować\n"
+#~ "Ultimaker Cura. To zajmie tylko kilka chwil."
+
+#~ msgctxt "@label"
+#~ msgid "What's new in Ultimaker Cura"
+#~ msgstr "Co nowego w Ultimaker Cura"
+
#~ msgctxt "@info:status"
#~ msgid "The selected model was too small to load."
#~ msgstr "Wybrany model był zbyta mały do załadowania."
diff --git a/resources/i18n/pl_PL/fdmextruder.def.json.po b/resources/i18n/pl_PL/fdmextruder.def.json.po
index 38dcf8f1b6..ddfad4bb62 100644
--- a/resources/i18n/pl_PL/fdmextruder.def.json.po
+++ b/resources/i18n/pl_PL/fdmextruder.def.json.po
@@ -4,9 +4,9 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: Cura 4.8\n"
+"Project-Id-Version: Cura 4.10\n"
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
-"POT-Creation-Date: 2020-10-19 13:15+0000\n"
+"POT-Creation-Date: 2021-06-10 17:35+0000\n"
"PO-Revision-Date: 2019-03-13 14:00+0200\n"
"Last-Translator: Mariusz 'Virgin71' Matłosz \n"
"Language-Team: reprapy.pl\n"
diff --git a/resources/i18n/pl_PL/fdmprinter.def.json.po b/resources/i18n/pl_PL/fdmprinter.def.json.po
index d8ba0e5461..ab90d10d72 100644
--- a/resources/i18n/pl_PL/fdmprinter.def.json.po
+++ b/resources/i18n/pl_PL/fdmprinter.def.json.po
@@ -4,9 +4,9 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: Cura 4.8\n"
+"Project-Id-Version: Cura 4.10\n"
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
-"POT-Creation-Date: 2020-10-19 13:15+0000\n"
+"POT-Creation-Date: 2021-06-10 17:35+0000\n"
"PO-Revision-Date: 2019-11-15 15:34+0100\n"
"Last-Translator: Mariusz Matłosz \n"
"Language-Team: Mariusz Matłosz , reprapy.pl\n"
@@ -419,6 +419,26 @@ msgctxt "machine_extruders_share_heater description"
msgid "Whether the extruders share a single heater rather than each extruder having its own heater."
msgstr ""
+#: fdmprinter.def.json
+msgctxt "machine_extruders_share_nozzle label"
+msgid "Extruders Share Nozzle"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "machine_extruders_share_nozzle description"
+msgid "Whether the extruders share a single nozzle rather than each extruder having its own nozzle. When set to true, it is expected that the printer-start gcode script properly sets up all extruders in an initial retraction state that is known and mutually compatible (either zero or one filament not retracted); in that case the initial retraction status is described, per extruder, by the 'machine_extruders_shared_nozzle_initial_retraction' parameter."
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "machine_extruders_shared_nozzle_initial_retraction label"
+msgid "Shared Nozzle Initial Retraction"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "machine_extruders_shared_nozzle_initial_retraction description"
+msgid "How much the filament of each extruder is assumed to have been retracted from the shared nozzle tip at the completion of the printer-start gcode script; the value should be equal to or greater than the length of the common part of the nozzle's ducts."
+msgstr ""
+
#: fdmprinter.def.json
msgctxt "machine_disallowed_areas label"
msgid "Disallowed Areas"
@@ -486,8 +506,8 @@ msgstr "Przesunięcie ekstrudera"
#: fdmprinter.def.json
msgctxt "machine_use_extruder_offset_to_offset_coords description"
-msgid "Apply the extruder offset to the coordinate system."
-msgstr "Zastosuj przesunięcie głowicy względem."
+msgid "Apply the extruder offset to the coordinate system. Affects all extruders."
+msgstr ""
#: fdmprinter.def.json
msgctxt "extruder_prime_pos_z label"
@@ -881,8 +901,8 @@ msgstr "Mnożnik szerokości linii na pierwszej warstwie. Zwiększenie może pol
#: fdmprinter.def.json
msgctxt "shell label"
-msgid "Shell"
-msgstr "Powłoka"
+msgid "Walls"
+msgstr ""
#: fdmprinter.def.json
msgctxt "shell description"
@@ -949,166 +969,6 @@ msgctxt "wall_0_wipe_dist description"
msgid "Distance of a travel move inserted after the outer wall, to hide the Z seam better."
msgstr "Długość ruchu jałowego umieszczonego po wydrukowaniu zewnętrznej ściany, aby lepiej ukryć szew Z."
-#: fdmprinter.def.json
-msgctxt "roofing_extruder_nr label"
-msgid "Top Surface Skin Extruder"
-msgstr "Ekstruder Górnej Pow. Skóry"
-
-#: fdmprinter.def.json
-msgctxt "roofing_extruder_nr description"
-msgid "The extruder train used for printing the top most skin. This is used in multi-extrusion."
-msgstr "Esktruder używany do drukowania górnej skóry. Używane w multi-ekstruzji."
-
-#: fdmprinter.def.json
-msgctxt "roofing_layer_count label"
-msgid "Top Surface Skin Layers"
-msgstr "Warstwy Górnej Pow. Skóry"
-
-#: fdmprinter.def.json
-msgctxt "roofing_layer_count description"
-msgid "The number of top most skin layers. Usually only one top most layer is sufficient to generate higher quality top surfaces."
-msgstr "Liczba warstw górnej skóry. Zazwyczaj tylko jedna górna warstwa poprawia jakość górnych powierzchni."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_extruder_nr label"
-msgid "Top/Bottom Extruder"
-msgstr "Ekstruder Góra/Dół"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_extruder_nr description"
-msgid "The extruder train used for printing the top and bottom skin. This is used in multi-extrusion."
-msgstr "Ekstruder używany do drukowania górnej i dolnej skóry. Używane w multi-ekstruzji."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_thickness label"
-msgid "Top/Bottom Thickness"
-msgstr "Grubość Góra/Dół"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_thickness description"
-msgid "The thickness of the top/bottom layers in the print. This value divided by the layer height defines the number of top/bottom layers."
-msgstr "Grubość górnej/dolnej warstwy wydruku. Ta wartość podzielona przez wysokość warstwy definiuje liczbę warstw górnych/dolnych."
-
-#: fdmprinter.def.json
-msgctxt "top_thickness label"
-msgid "Top Thickness"
-msgstr "Grubość Góra"
-
-#: fdmprinter.def.json
-msgctxt "top_thickness description"
-msgid "The thickness of the top layers in the print. This value divided by the layer height defines the number of top layers."
-msgstr "Grubość górnych warstw na wydruku. Ta wartość podzielona przez wysokość warstwy definiuje liczbę warstw górnych."
-
-#: fdmprinter.def.json
-msgctxt "top_layers label"
-msgid "Top Layers"
-msgstr "Górne warstwy"
-
-#: fdmprinter.def.json
-msgctxt "top_layers description"
-msgid "The number of top layers. When calculated by the top thickness, this value is rounded to a whole number."
-msgstr "Liczba górnych warstw. Przy obliczaniu górnej grubości wartość ta jest zaokrąglana do liczby całkowitej."
-
-#: fdmprinter.def.json
-msgctxt "bottom_thickness label"
-msgid "Bottom Thickness"
-msgstr "Grubość Dołu"
-
-#: fdmprinter.def.json
-msgctxt "bottom_thickness description"
-msgid "The thickness of the bottom layers in the print. This value divided by the layer height defines the number of bottom layers."
-msgstr "Grubość dolnych warstw w wydruku. Ta wartość podzielona przez wysokość warstwy definiuje liczbę warstw dolnych."
-
-#: fdmprinter.def.json
-msgctxt "bottom_layers label"
-msgid "Bottom Layers"
-msgstr "Dolne Warstwy"
-
-#: fdmprinter.def.json
-msgctxt "bottom_layers description"
-msgid "The number of bottom layers. When calculated by the bottom thickness, this value is rounded to a whole number."
-msgstr "Liczba dolnych warstw. Przy obliczaniu grubości dołu ta wartość jest zaokrąglana do liczby całkowitej."
-
-#: fdmprinter.def.json
-msgctxt "initial_bottom_layers label"
-msgid "Initial Bottom Layers"
-msgstr "Początkowej warstwy dolne"
-
-#: fdmprinter.def.json
-msgctxt "initial_bottom_layers description"
-msgid "The number of initial bottom layers, from the build-plate upwards. When calculated by the bottom thickness, this value is rounded to a whole number."
-msgstr "Liczba początkowych dolnych warstw, od stołu w górę. Obliczona na podstawie grubości spodu, wartość ta jest zaokrąglana do liczby całkowitej."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern label"
-msgid "Top/Bottom Pattern"
-msgstr "Wzór Góra/Dół"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern description"
-msgid "The pattern of the top/bottom layers."
-msgstr "Wzór górnej/dolnej warstwy."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern option lines"
-msgid "Lines"
-msgstr "Linie"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern option concentric"
-msgid "Concentric"
-msgstr "Koncentryczny"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern option zigzag"
-msgid "Zig Zag"
-msgstr "Zygzak"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 label"
-msgid "Bottom Pattern Initial Layer"
-msgstr "Wzór Dolnej Początkowej Warstwy"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 description"
-msgid "The pattern on the bottom of the print on the first layer."
-msgstr "Wzór na pierwszej warstwie na dole wydruku."
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 option lines"
-msgid "Lines"
-msgstr "Linie"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 option concentric"
-msgid "Concentric"
-msgstr "Koncentryczny"
-
-#: fdmprinter.def.json
-msgctxt "top_bottom_pattern_0 option zigzag"
-msgid "Zig Zag"
-msgstr "Zygzak"
-
-#: fdmprinter.def.json
-msgctxt "connect_skin_polygons label"
-msgid "Connect Top/Bottom Polygons"
-msgstr "Połącz Górne/Dolne Wieloboki"
-
-#: fdmprinter.def.json
-msgctxt "connect_skin_polygons description"
-msgid "Connect top/bottom skin paths where they run next to each other. For the concentric pattern enabling this setting greatly reduces the travel time, but because the connections can happen midway over infill this feature can reduce the top surface quality."
-msgstr "Połącz górne/dolne ścieżki, które przebiegają koło siebie. Włączenie tej opcji powoduje ograniczenie czasu ruchów jałowych dla wzorca koncentrycznego, ale ze względu na możliwość pojawienia się połączeń w połowie ścieżki wypełnienia, opcja ta może obniżyć jakość górnego wykończenia."
-
-#: fdmprinter.def.json
-msgctxt "skin_angles label"
-msgid "Top/Bottom Line Directions"
-msgstr "Kierunki Linii Góra/Dół"
-
-#: fdmprinter.def.json
-msgctxt "skin_angles description"
-msgid "A list of integer line directions to use when the top/bottom layers use the lines or zig zag pattern. Elements from the list are used sequentially as the layers progress and when the end of the list is reached, it starts at the beginning again. The list items are separated by commas and the whole list is contained in square brackets. Default is an empty list which means use the traditional default angles (45 and 135 degrees)."
-msgstr "Lista całkowitych kierunków linii używana kiedy górne/dolne warstwy używają wzoru linii i zygzaka. Elementy z listy są używane kolejno w miarę postępu warstw, a kiedy kończy się lista, zaczyna się od początku. Elementy listy są oddzielone przecinkami, a cała lista znajduje się w nawiasach kwadratowych. Domyślnie lista jest pusta, co oznacza tradycyjne, domyślne kąty (45 i 135 stopni)."
-
#: fdmprinter.def.json
msgctxt "wall_0_inset label"
msgid "Outer Wall Inset"
@@ -1414,6 +1274,176 @@ msgctxt "z_seam_relative description"
msgid "When enabled, the z seam coordinates are relative to each part's centre. When disabled, the coordinates define an absolute position on the build plate."
msgstr "Kiedy włączone, współrzędne szwu są względne do każdego środka części. Kiedy wyłączone, współrzędne opisują bezwzględną pozycję na stole."
+#: fdmprinter.def.json
+msgctxt "top_bottom label"
+msgid "Top/Bottom"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "top_bottom description"
+msgid "Top/Bottom"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "roofing_extruder_nr label"
+msgid "Top Surface Skin Extruder"
+msgstr "Ekstruder Górnej Pow. Skóry"
+
+#: fdmprinter.def.json
+msgctxt "roofing_extruder_nr description"
+msgid "The extruder train used for printing the top most skin. This is used in multi-extrusion."
+msgstr "Esktruder używany do drukowania górnej skóry. Używane w multi-ekstruzji."
+
+#: fdmprinter.def.json
+msgctxt "roofing_layer_count label"
+msgid "Top Surface Skin Layers"
+msgstr "Warstwy Górnej Pow. Skóry"
+
+#: fdmprinter.def.json
+msgctxt "roofing_layer_count description"
+msgid "The number of top most skin layers. Usually only one top most layer is sufficient to generate higher quality top surfaces."
+msgstr "Liczba warstw górnej skóry. Zazwyczaj tylko jedna górna warstwa poprawia jakość górnych powierzchni."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_extruder_nr label"
+msgid "Top/Bottom Extruder"
+msgstr "Ekstruder Góra/Dół"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_extruder_nr description"
+msgid "The extruder train used for printing the top and bottom skin. This is used in multi-extrusion."
+msgstr "Ekstruder używany do drukowania górnej i dolnej skóry. Używane w multi-ekstruzji."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_thickness label"
+msgid "Top/Bottom Thickness"
+msgstr "Grubość Góra/Dół"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_thickness description"
+msgid "The thickness of the top/bottom layers in the print. This value divided by the layer height defines the number of top/bottom layers."
+msgstr "Grubość górnej/dolnej warstwy wydruku. Ta wartość podzielona przez wysokość warstwy definiuje liczbę warstw górnych/dolnych."
+
+#: fdmprinter.def.json
+msgctxt "top_thickness label"
+msgid "Top Thickness"
+msgstr "Grubość Góra"
+
+#: fdmprinter.def.json
+msgctxt "top_thickness description"
+msgid "The thickness of the top layers in the print. This value divided by the layer height defines the number of top layers."
+msgstr "Grubość górnych warstw na wydruku. Ta wartość podzielona przez wysokość warstwy definiuje liczbę warstw górnych."
+
+#: fdmprinter.def.json
+msgctxt "top_layers label"
+msgid "Top Layers"
+msgstr "Górne warstwy"
+
+#: fdmprinter.def.json
+msgctxt "top_layers description"
+msgid "The number of top layers. When calculated by the top thickness, this value is rounded to a whole number."
+msgstr "Liczba górnych warstw. Przy obliczaniu górnej grubości wartość ta jest zaokrąglana do liczby całkowitej."
+
+#: fdmprinter.def.json
+msgctxt "bottom_thickness label"
+msgid "Bottom Thickness"
+msgstr "Grubość Dołu"
+
+#: fdmprinter.def.json
+msgctxt "bottom_thickness description"
+msgid "The thickness of the bottom layers in the print. This value divided by the layer height defines the number of bottom layers."
+msgstr "Grubość dolnych warstw w wydruku. Ta wartość podzielona przez wysokość warstwy definiuje liczbę warstw dolnych."
+
+#: fdmprinter.def.json
+msgctxt "bottom_layers label"
+msgid "Bottom Layers"
+msgstr "Dolne Warstwy"
+
+#: fdmprinter.def.json
+msgctxt "bottom_layers description"
+msgid "The number of bottom layers. When calculated by the bottom thickness, this value is rounded to a whole number."
+msgstr "Liczba dolnych warstw. Przy obliczaniu grubości dołu ta wartość jest zaokrąglana do liczby całkowitej."
+
+#: fdmprinter.def.json
+msgctxt "initial_bottom_layers label"
+msgid "Initial Bottom Layers"
+msgstr "Początkowej warstwy dolne"
+
+#: fdmprinter.def.json
+msgctxt "initial_bottom_layers description"
+msgid "The number of initial bottom layers, from the build-plate upwards. When calculated by the bottom thickness, this value is rounded to a whole number."
+msgstr "Liczba początkowych dolnych warstw, od stołu w górę. Obliczona na podstawie grubości spodu, wartość ta jest zaokrąglana do liczby całkowitej."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern label"
+msgid "Top/Bottom Pattern"
+msgstr "Wzór Góra/Dół"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern description"
+msgid "The pattern of the top/bottom layers."
+msgstr "Wzór górnej/dolnej warstwy."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern option lines"
+msgid "Lines"
+msgstr "Linie"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern option concentric"
+msgid "Concentric"
+msgstr "Koncentryczny"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern option zigzag"
+msgid "Zig Zag"
+msgstr "Zygzak"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 label"
+msgid "Bottom Pattern Initial Layer"
+msgstr "Wzór Dolnej Początkowej Warstwy"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 description"
+msgid "The pattern on the bottom of the print on the first layer."
+msgstr "Wzór na pierwszej warstwie na dole wydruku."
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 option lines"
+msgid "Lines"
+msgstr "Linie"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 option concentric"
+msgid "Concentric"
+msgstr "Koncentryczny"
+
+#: fdmprinter.def.json
+msgctxt "top_bottom_pattern_0 option zigzag"
+msgid "Zig Zag"
+msgstr "Zygzak"
+
+#: fdmprinter.def.json
+msgctxt "connect_skin_polygons label"
+msgid "Connect Top/Bottom Polygons"
+msgstr "Połącz Górne/Dolne Wieloboki"
+
+#: fdmprinter.def.json
+msgctxt "connect_skin_polygons description"
+msgid "Connect top/bottom skin paths where they run next to each other. For the concentric pattern enabling this setting greatly reduces the travel time, but because the connections can happen midway over infill this feature can reduce the top surface quality."
+msgstr "Połącz górne/dolne ścieżki, które przebiegają koło siebie. Włączenie tej opcji powoduje ograniczenie czasu ruchów jałowych dla wzorca koncentrycznego, ale ze względu na możliwość pojawienia się połączeń w połowie ścieżki wypełnienia, opcja ta może obniżyć jakość górnego wykończenia."
+
+#: fdmprinter.def.json
+msgctxt "skin_angles label"
+msgid "Top/Bottom Line Directions"
+msgstr "Kierunki Linii Góra/Dół"
+
+#: fdmprinter.def.json
+msgctxt "skin_angles description"
+msgid "A list of integer line directions to use when the top/bottom layers use the lines or zig zag pattern. Elements from the list are used sequentially as the layers progress and when the end of the list is reached, it starts at the beginning again. The list items are separated by commas and the whole list is contained in square brackets. Default is an empty list which means use the traditional default angles (45 and 135 degrees)."
+msgstr "Lista całkowitych kierunków linii używana kiedy górne/dolne warstwy używają wzoru linii i zygzaka. Elementy z listy są używane kolejno w miarę postępu warstw, a kiedy kończy się lista, zaczyna się od początku. Elementy listy są oddzielone przecinkami, a cała lista znajduje się w nawiasach kwadratowych. Domyślnie lista jest pusta, co oznacza tradycyjne, domyślne kąty (45 i 135 stopni)."
+
#: fdmprinter.def.json
msgctxt "skin_no_small_gaps_heuristic label"
msgid "No Skin in Z Gaps"
@@ -1554,6 +1584,86 @@ msgctxt "skin_overlap_mm description"
msgid "Adjust the amount of overlap between the walls and (the endpoints of) the skin-centerlines. A slight overlap allows the walls to connect firmly to the skin. Note that, given an equal skin and wall line-width, any value over half the width of the wall may already cause any skin to go past the wall, because at that point the position of the nozzle of the skin-extruder may already reach past the middle of the wall."
msgstr "Dostosuj zachodzenie pomiędzy ścianami, a (punktami końcowymi) linią obrysu. Niewielkie zachodzenie na siebie pozwala ścianom połączyć się mocno z obrysem. Zauważ, że przy równej szerokości obrysu i szerokości ściany, każdy procent powyżej 50% może spowodować przekroczenie ściany przez obrys, ponieważ pozycja dyszy ekstrudera obrysu może sięgać poza środek ściany."
+#: fdmprinter.def.json
+msgctxt "skin_preshrink label"
+msgid "Skin Removal Width"
+msgstr "Szerokość Usuwania Skóry"
+
+#: fdmprinter.def.json
+msgctxt "skin_preshrink description"
+msgid "The largest width of skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top/bottom skin at slanted surfaces in the model."
+msgstr "Największa szerokość pow. skóry, które mają zostać usunięte. Każda pow. skóry mniejsza niż ta wartość zniknie. Może to pomóc w ograniczeniu ilości czasu i materiału zużywanego na drukowanie górnych/dolnych skór na pochyłych powierzchniach modelu."
+
+#: fdmprinter.def.json
+msgctxt "top_skin_preshrink label"
+msgid "Top Skin Removal Width"
+msgstr "Szer. Usuwania Górnej Skóry"
+
+#: fdmprinter.def.json
+msgctxt "top_skin_preshrink description"
+msgid "The largest width of top skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top skin at slanted surfaces in the model."
+msgstr "Największa szerokość górnej pow. skóry, które mają zostać usunięte. Każda pow. skóry mniejsza niż ta wartość zniknie. Może to pomóc w ograniczeniu ilości czasu i materiału zużywanego na drukowanie górnych skór na pochyłych powierzchniach modelu."
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_preshrink label"
+msgid "Bottom Skin Removal Width"
+msgstr "Szer. Usuwania Dolnej Skóry"
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_preshrink description"
+msgid "The largest width of bottom skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing bottom skin at slanted surfaces in the model."
+msgstr "Największa szerokość dolnych pow. skóry, które mają zostać usunięte. Każda pow. skóry mniejsza niż ta wartość zniknie. Może to pomóc w ograniczeniu ilości czasu i materiału zużywanego na drukowanie dolnych skór na pochyłych powierzchniach modelu."
+
+#: fdmprinter.def.json
+msgctxt "expand_skins_expand_distance label"
+msgid "Skin Expand Distance"
+msgstr "Odległość Rozsz. Skóry"
+
+#: fdmprinter.def.json
+msgctxt "expand_skins_expand_distance description"
+msgid "The distance the skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on neighboring layers adhere better to the skin. Lower values save amount of material used."
+msgstr "Odległość na jaką skóry są rozszerzane w kierunku wypełnienia. Wyższe wartości powodują lepsze łączenie się skóry i wypełnienia i powodują, że ściany sąsiednich warstw lepiej łączą się ze skórą. Niższe wartości oszczędzają materiał."
+
+#: fdmprinter.def.json
+msgctxt "top_skin_expand_distance label"
+msgid "Top Skin Expand Distance"
+msgstr "Odległość Rozsz. Górnej Skóry"
+
+#: fdmprinter.def.json
+msgctxt "top_skin_expand_distance description"
+msgid "The distance the top skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on the layer above adhere better to the skin. Lower values save amount of material used."
+msgstr "Odległość na jaką górne skóry są rozszerzane w kierunku wypełnienia. Wyższe wartości powodują lepsze łączenie się skóry i wypełnienia i powodują, że ściany sąsiednich warstw lepiej łączą się ze skórą. Niższe wartości oszczędzają materiał."
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_expand_distance label"
+msgid "Bottom Skin Expand Distance"
+msgstr "Odległość Rozsz. Dolnej Skóry"
+
+#: fdmprinter.def.json
+msgctxt "bottom_skin_expand_distance description"
+msgid "The distance the bottom skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the skin adhere better to the walls on the layer below. Lower values save amount of material used."
+msgstr "Odległość na jaką dolne skóry są rozszerzane w kierunku wypełnienia. Wyższe wartości powodują lepsze łączenie się skóry i wypełnienia i powodują, że ściany sąsiednich warstw lepiej łączą się ze skórą. Niższe wartości oszczędzają materiał."
+
+#: fdmprinter.def.json
+msgctxt "max_skin_angle_for_expansion label"
+msgid "Maximum Skin Angle for Expansion"
+msgstr "Maks. Kąt Rozciągania Ścian"
+
+#: fdmprinter.def.json
+msgctxt "max_skin_angle_for_expansion description"
+msgid "Top and/or bottom surfaces of your object with an angle larger than this setting, won't have their top/bottom skin expanded. This avoids expanding the narrow skin areas that are created when the model surface has a near vertical slope. An angle of 0° is horizontal and will cause no skin to be expanded, while an angle of 90° is vertical and will cause all skin to be expanded."
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "min_skin_width_for_expansion label"
+msgid "Minimum Skin Width for Expansion"
+msgstr "Min. Szerok. Skóry do Poszerzenia"
+
+#: fdmprinter.def.json
+msgctxt "min_skin_width_for_expansion description"
+msgid "Skin areas narrower than this are not expanded. This avoids expanding the narrow skin areas that are created when the model surface has a slope close to the vertical."
+msgstr "Obszary skóry, które są węższe niż to, nie zostaną poszerzone. W ten sposób unikamy rozszerzania wąskich skór, które są tworzone, kiedy powierzchnia jest blisko pionowi."
+
#: fdmprinter.def.json
msgctxt "infill label"
msgid "Infill"
@@ -1863,86 +1973,6 @@ msgctxt "infill_support_angle description"
msgid "The minimum angle of internal overhangs for which infill is added. At a value of 0° objects are totally filled with infill, 90° will not provide any infill."
msgstr "Minimalny kąt zwisu wewnętrznego, dla którego zostanie dodane wypełnienie. Przy wartości 0° obiekty zostaną wypełnione całkowicie, natomiast przy 90° wypełnienie nie zostanie wygenerowane."
-#: fdmprinter.def.json
-msgctxt "skin_preshrink label"
-msgid "Skin Removal Width"
-msgstr "Szerokość Usuwania Skóry"
-
-#: fdmprinter.def.json
-msgctxt "skin_preshrink description"
-msgid "The largest width of skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top/bottom skin at slanted surfaces in the model."
-msgstr "Największa szerokość pow. skóry, które mają zostać usunięte. Każda pow. skóry mniejsza niż ta wartość zniknie. Może to pomóc w ograniczeniu ilości czasu i materiału zużywanego na drukowanie górnych/dolnych skór na pochyłych powierzchniach modelu."
-
-#: fdmprinter.def.json
-msgctxt "top_skin_preshrink label"
-msgid "Top Skin Removal Width"
-msgstr "Szer. Usuwania Górnej Skóry"
-
-#: fdmprinter.def.json
-msgctxt "top_skin_preshrink description"
-msgid "The largest width of top skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing top skin at slanted surfaces in the model."
-msgstr "Największa szerokość górnej pow. skóry, które mają zostać usunięte. Każda pow. skóry mniejsza niż ta wartość zniknie. Może to pomóc w ograniczeniu ilości czasu i materiału zużywanego na drukowanie górnych skór na pochyłych powierzchniach modelu."
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_preshrink label"
-msgid "Bottom Skin Removal Width"
-msgstr "Szer. Usuwania Dolnej Skóry"
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_preshrink description"
-msgid "The largest width of bottom skin areas which are to be removed. Every skin area smaller than this value will disappear. This can help in limiting the amount of time and material spent on printing bottom skin at slanted surfaces in the model."
-msgstr "Największa szerokość dolnych pow. skóry, które mają zostać usunięte. Każda pow. skóry mniejsza niż ta wartość zniknie. Może to pomóc w ograniczeniu ilości czasu i materiału zużywanego na drukowanie dolnych skór na pochyłych powierzchniach modelu."
-
-#: fdmprinter.def.json
-msgctxt "expand_skins_expand_distance label"
-msgid "Skin Expand Distance"
-msgstr "Odległość Rozsz. Skóry"
-
-#: fdmprinter.def.json
-msgctxt "expand_skins_expand_distance description"
-msgid "The distance the skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on neighboring layers adhere better to the skin. Lower values save amount of material used."
-msgstr "Odległość na jaką skóry są rozszerzane w kierunku wypełnienia. Wyższe wartości powodują lepsze łączenie się skóry i wypełnienia i powodują, że ściany sąsiednich warstw lepiej łączą się ze skórą. Niższe wartości oszczędzają materiał."
-
-#: fdmprinter.def.json
-msgctxt "top_skin_expand_distance label"
-msgid "Top Skin Expand Distance"
-msgstr "Odległość Rozsz. Górnej Skóry"
-
-#: fdmprinter.def.json
-msgctxt "top_skin_expand_distance description"
-msgid "The distance the top skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the walls on the layer above adhere better to the skin. Lower values save amount of material used."
-msgstr "Odległość na jaką górne skóry są rozszerzane w kierunku wypełnienia. Wyższe wartości powodują lepsze łączenie się skóry i wypełnienia i powodują, że ściany sąsiednich warstw lepiej łączą się ze skórą. Niższe wartości oszczędzają materiał."
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_expand_distance label"
-msgid "Bottom Skin Expand Distance"
-msgstr "Odległość Rozsz. Dolnej Skóry"
-
-#: fdmprinter.def.json
-msgctxt "bottom_skin_expand_distance description"
-msgid "The distance the bottom skins are expanded into the infill. Higher values makes the skin attach better to the infill pattern and makes the skin adhere better to the walls on the layer below. Lower values save amount of material used."
-msgstr "Odległość na jaką dolne skóry są rozszerzane w kierunku wypełnienia. Wyższe wartości powodują lepsze łączenie się skóry i wypełnienia i powodują, że ściany sąsiednich warstw lepiej łączą się ze skórą. Niższe wartości oszczędzają materiał."
-
-#: fdmprinter.def.json
-msgctxt "max_skin_angle_for_expansion label"
-msgid "Maximum Skin Angle for Expansion"
-msgstr "Maks. Kąt Rozciągania Ścian"
-
-#: fdmprinter.def.json
-msgctxt "max_skin_angle_for_expansion description"
-msgid "Top and/or bottom surfaces of your object with an angle larger than this setting, won't have their top/bottom skin expanded. This avoids expanding the narrow skin areas that are created when the model surface has a near vertical slope. An angle of 0° is horizontal, while an angle of 90° is vertical."
-msgstr "Górne i/lub dolne powierzchnie przedmiotu o kącie większym niż to ustawienie nie będą miały rozszerzonego górnej/dolnej skóry. Pozwala to uniknąć powiększania wąskich ścian, które powstają, gdy powierzchnia modelu ma blisko pionowe nachylenie. Kąt 0 ° jest poziomy, a kąt 90 ° jest pionowy."
-
-#: fdmprinter.def.json
-msgctxt "min_skin_width_for_expansion label"
-msgid "Minimum Skin Width for Expansion"
-msgstr "Min. Szerok. Skóry do Poszerzenia"
-
-#: fdmprinter.def.json
-msgctxt "min_skin_width_for_expansion description"
-msgid "Skin areas narrower than this are not expanded. This avoids expanding the narrow skin areas that are created when the model surface has a slope close to the vertical."
-msgstr "Obszary skóry, które są węższe niż to, nie zostaną poszerzone. W ten sposób unikamy rozszerzania wąskich skór, które są tworzone, kiedy powierzchnia jest blisko pionowi."
-
#: fdmprinter.def.json
msgctxt "skin_edge_support_thickness label"
msgid "Skin Edge Support Thickness"
@@ -2560,8 +2590,8 @@ msgstr "Prędk. Początk. Warstwy"
#: fdmprinter.def.json
msgctxt "speed_layer_0 description"
-msgid "The speed for the initial layer. A lower value is advised to improve adhesion to the build plate."
-msgstr "Prędkość dla pierwszej warstwy. Niższa wartość jest zalecane w celu poprawy przyczepności do stołu."
+msgid "The speed for the initial layer. A lower value is advised to improve adhesion to the build plate. Does not affect the build plate adhesion structures themselves, like brim and raft."
+msgstr ""
#: fdmprinter.def.json
msgctxt "speed_print_layer_0 label"
@@ -3170,8 +3200,8 @@ msgstr "Max. Dystans Kombinowania Bez Retrakcji"
#: fdmprinter.def.json
msgctxt "retraction_combing_max_distance description"
-msgid "When non-zero, combing travel moves that are longer than this distance will use retraction."
-msgstr "Przy wartości niezerowej, kombinowane ruchy jałowe o dystansie większym niż zadany bedą używały retrakcji."
+msgid "When greater than zero, combing travel moves that are longer than this distance will use retraction. If set to zero, there is no maximum and combing moves will not use retraction."
+msgstr ""
#: fdmprinter.def.json
msgctxt "travel_retract_before_outer_wall label"
@@ -5074,7 +5104,7 @@ msgstr ""
#: fdmprinter.def.json
msgctxt "infill_mesh_order description"
-msgid "Determines the priority of this mesh when considering multiple overlapping infill meshes. Areas where multiple infill meshes overlap will take on the settings of the mesh with the lowest rank. An infill mesh with a higher order will modify the infill of infill meshes with lower order and normal meshes."
+msgid "Determines the priority of this mesh when considering multiple overlapping infill meshes. Areas where multiple infill meshes overlap will take on the settings of the mesh with the highest rank. An infill mesh with a higher rank will modify the infill of infill meshes with lower rank and normal meshes."
msgstr ""
#: fdmprinter.def.json
@@ -5422,6 +5452,16 @@ msgctxt "conical_overhang_angle description"
msgid "The maximum angle of overhangs after the they have been made printable. At a value of 0° all overhangs are replaced by a piece of model connected to the build plate, 90° will not change the model in any way."
msgstr "Maksymalny kąt zwisów po którym będą one drukowalne. Przy wartości 0 ° wszystkie zwisy są zastępowane przez fragment modelu połączony ze stołem, a 90 ° w żaden sposób nie zmienia modelu."
+#: fdmprinter.def.json
+msgctxt "conical_overhang_hole_size label"
+msgid "Maximum Overhang Hole Area"
+msgstr ""
+
+#: fdmprinter.def.json
+msgctxt "conical_overhang_hole_size description"
+msgid "The maximum area of a hole in the base of the model before it's removed by Make Overhang Printable. Holes smaller than this will be retained. A value of 0 mm² will fill all holes in the models base."
+msgstr ""
+
#: fdmprinter.def.json
msgctxt "coasting_enable label"
msgid "Enable Coasting"
@@ -6361,6 +6401,26 @@ msgctxt "mesh_rotation_matrix description"
msgid "Transformation matrix to be applied to the model when loading it from file."
msgstr "Forma przesunięcia, która ma być zastosowana do modelu podczas ładowania z pliku."
+#~ msgctxt "retraction_combing_max_distance description"
+#~ msgid "When non-zero, combing travel moves that are longer than this distance will use retraction."
+#~ msgstr "Przy wartości niezerowej, kombinowane ruchy jałowe o dystansie większym niż zadany bedą używały retrakcji."
+
+#~ msgctxt "machine_use_extruder_offset_to_offset_coords description"
+#~ msgid "Apply the extruder offset to the coordinate system."
+#~ msgstr "Zastosuj przesunięcie głowicy względem."
+
+#~ msgctxt "shell label"
+#~ msgid "Shell"
+#~ msgstr "Powłoka"
+
+#~ msgctxt "max_skin_angle_for_expansion description"
+#~ msgid "Top and/or bottom surfaces of your object with an angle larger than this setting, won't have their top/bottom skin expanded. This avoids expanding the narrow skin areas that are created when the model surface has a near vertical slope. An angle of 0° is horizontal, while an angle of 90° is vertical."
+#~ msgstr "Górne i/lub dolne powierzchnie przedmiotu o kącie większym niż to ustawienie nie będą miały rozszerzonego górnej/dolnej skóry. Pozwala to uniknąć powiększania wąskich ścian, które powstają, gdy powierzchnia modelu ma blisko pionowe nachylenie. Kąt 0 ° jest poziomy, a kąt 90 ° jest pionowy."
+
+#~ msgctxt "speed_layer_0 description"
+#~ msgid "The speed for the initial layer. A lower value is advised to improve adhesion to the build plate."
+#~ msgstr "Prędkość dla pierwszej warstwy. Niższa wartość jest zalecane w celu poprawy przyczepności do stołu."
+
#~ msgctxt "material_bed_temperature description"
#~ msgid "The temperature used for the heated build plate. If this is 0, the bed temperature will not be adjusted."
#~ msgstr "Temperatura stosowana dla podgrzewanej platformy roboczej. Jeżeli jest ustawione 0, temperatura stołu nie będzie ustawiona."
diff --git a/resources/i18n/pt_BR/cura.po b/resources/i18n/pt_BR/cura.po
index 7f69fdf283..1e2858a8ea 100644
--- a/resources/i18n/pt_BR/cura.po
+++ b/resources/i18n/pt_BR/cura.po
@@ -4,10 +4,10 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: Cura 4.8\n"
+"Project-Id-Version: Cura 4.10\n"
"Report-Msgid-Bugs-To: r.dulek@ultimaker.com\n"
-"POT-Creation-Date: 2020-10-19 13:15+0200\n"
-"PO-Revision-Date: 2020-10-25 13:00+0100\n"
+"POT-Creation-Date: 2021-06-10 17:35+0200\n"
+"PO-Revision-Date: 2021-06-19 06:21+0200\n"
"Last-Translator: Cláudio Sampaio \n"
"Language-Team: Cláudio Sampaio \n"
"Language: pt_BR\n"
@@ -15,14 +15,10 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-"X-Generator: Poedit 2.2.3\n"
+"X-Generator: Poedit 3.0\n"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/DiscoveredPrintersModel.py:83
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:110
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/QualityManagementModel.py:361
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1581
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:130
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:171
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/DiscoveredPrintersModel.py:83 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:110 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/QualityManagementModel.py:361
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1612 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:130 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/pages/ToolboxDetailPage.qml:171
msgctxt "@label"
msgid "Unknown"
msgstr "Desconhecido"
@@ -48,56 +44,47 @@ msgctxt "@label {0} is the name of a printer that's about to be deleted."
msgid "Are you sure you wish to remove {0}? This cannot be undone!"
msgstr "Tem certeza que deseja remover {0}? Isto não pode ser defeito!"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:42
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:11
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/QualityManagementModel.py:338
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:42 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:11 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/QualityManagementModel.py:338
msgctxt "@label"
msgid "Default"
msgstr "Default"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:45
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:14
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:45 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:14
msgctxt "@label"
msgid "Visual"
msgstr "Visual"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:46
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:15
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:46 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:15
msgctxt "@text"
msgid "The visual profile is designed to print visual prototypes and models with the intent of high visual and surface quality."
msgstr "O perfil visual é projetado para imprimir protótipos e modelos virtuais com o objetivo de alta qualidade visual e de superfície."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:49
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:18
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:49 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:18
msgctxt "@label"
msgid "Engineering"
msgstr "Engenharia"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:50
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:19
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:50 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:19
msgctxt "@text"
msgid "The engineering profile is designed to print functional prototypes and end-use parts with the intent of better accuracy and for closer tolerances."
msgstr "O perfil de engenharia é projetado para imprimir protótipos funcionais e partes de uso final com o objetivo de melhor precisão e tolerâncias mais estritas."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:53
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:22
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:53 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:22
msgctxt "@label"
msgid "Draft"
msgstr "Rascunho"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:54
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:23
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentCategoryModel.py:54 /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/IntentTranslations.py:23
msgctxt "@text"
msgid "The draft profile is designed to print initial prototypes and concept validation with the intent of significant print time reduction."
msgstr "O perfil de rascunho é projetado para imprimir protótipos iniciais e validações de conceito com o objetivo de redução significativa de tempo de impressão."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:226
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:234
msgctxt "@label"
msgid "Custom Material"
msgstr "Material Personalizado"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:227
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationMenu.qml:205
+#: /home/trin/Gedeeld/Projects/Cura/cura/Machines/Models/MaterialManagementModel.py:235 /home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/ConfigurationMenu/ConfigurationMenu.qml:205
msgctxt "@label"
msgid "Custom"
msgstr "Personalizado"
@@ -118,58 +105,56 @@ msgctxt "@item:inlistbox"
msgid "All Files (*)"
msgstr "Todos Os Arquivos (*)"
-#: /home/trin/Gedeeld/Projects/Cura/cura/API/Account.py:178
+#: /home/trin/Gedeeld/Projects/Cura/cura/API/Account.py:181
msgctxt "@info:title"
msgid "Login failed"
msgstr "Login falhou"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:67
-#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:24
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:67 /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:24
msgctxt "@info:status"
msgid "Finding new location for objects"
msgstr "Achando novos lugares para objetos"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:71
-#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:28
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:71 /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:28
msgctxt "@info:title"
msgid "Finding Location"
msgstr "Buscando Localização"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:150
-#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:41
-#: /home/trin/Gedeeld/Projects/Cura/cura/MultiplyObjectsJob.py:76
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:150 /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:41 /home/trin/Gedeeld/Projects/Cura/cura/MultiplyObjectsJob.py:76
msgctxt "@info:status"
msgid "Unable to find a location within the build volume for all objects"
msgstr "Não foi possível achar um lugar dentro do volume de construção para todos os objetos"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:151
-#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:42
+#: /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsAllBuildPlatesJob.py:151 /home/trin/Gedeeld/Projects/Cura/cura/Arranging/ArrangeObjectsJob.py:42
msgctxt "@info:title"
msgid "Can't Find Location"
msgstr "Não Foi Encontrada Localização"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:104
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:116
msgctxt "@info:backup_failed"
msgid "Could not create archive from user data directory: {}"
msgstr "Não pude criar arquivo do diretório de dados de usuário: {}"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:110
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:107
-#: /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:113
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:122 /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:107 /home/trin/Gedeeld/Projects/Cura/plugins/CuraDrive/src/DrivePluginExtension.py:113
msgctxt "@info:title"
msgid "Backup"
msgstr "Backup"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:123
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:135
msgctxt "@info:backup_failed"
msgid "Tried to restore a Cura backup without having proper data or meta data."
msgstr "Tentativa de restauração de backup do Cura sem dados ou metadados apropriados."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:134
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:146
msgctxt "@info:backup_failed"
msgid "Tried to restore a Cura backup that is higher than the current version."
msgstr "Tentativa de restauração de backup do Cura de versão maior que a atual."
+#: /home/trin/Gedeeld/Projects/Cura/cura/Backups/Backup.py:157
+msgctxt "@info:backup_failed"
+msgid "The following error occurred while trying to restore a Cura backup:"
+msgstr "O seguinte erro ocorreu ao tentar restaurar um backup do Cura:"
+
#: /home/trin/Gedeeld/Projects/Cura/cura/BuildVolume.py:98
msgctxt "@info:status"
msgid "The build volume height has been reduced due to the value of the \"Print Sequence\" setting to prevent the gantry from colliding with printed models."
@@ -319,76 +304,71 @@ msgctxt "@action:button"
msgid "Send report"
msgstr "Enviar relatório"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:521
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:527
msgctxt "@info:progress"
msgid "Loading machines..."
msgstr "Carregando máquinas..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:528
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:534
msgctxt "@info:progress"
msgid "Setting up preferences..."
msgstr "Ajustando preferências..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:657
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:672
msgctxt "@info:progress"
msgid "Initializing Active Machine..."
msgstr "Inicializando Máquina Ativa..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:788
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:803
msgctxt "@info:progress"
msgid "Initializing machine manager..."
msgstr "Inicializando gestor de máquinas..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:802
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:817
msgctxt "@info:progress"
msgid "Initializing build volume..."
msgstr "Inicializando volume de impressão..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:870
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:888
msgctxt "@info:progress"
msgid "Setting up scene..."
msgstr "Configurando cena..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:906
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:924
msgctxt "@info:progress"
msgid "Loading interface..."
msgstr "Carregando interface..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:911
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:929
msgctxt "@info:progress"
msgid "Initializing engine..."
msgstr "Inicializando motor..."
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1221
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1246
#, python-format
msgctxt "@info 'width', 'depth' and 'height' are variable names that must NOT be translated; just translate the format of ##x##x## mm."
msgid "%(width).1f x %(depth).1f x %(height).1f mm"
msgstr "%(width).1f x %(depth).1f x %(height).1f mm"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1777
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1799
#, python-brace-format
msgctxt "@info:status"
msgid "Only one G-code file can be loaded at a time. Skipped importing {0}"
msgstr "Somente um arquivo G-Code pode ser carregado por vez. Pulando importação de {0}"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1778
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:188
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:242
-#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:153
-#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:165
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1800 /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:190 /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:244
+#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:153 /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:165
msgctxt "@info:title"
msgid "Warning"
msgstr "Aviso"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1787
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1809
#, python-brace-format
msgctxt "@info:status"
msgid "Can't open any other file if G-code is loading. Skipped importing {0}"
msgstr "Não é possível abrir nenhum outro arquivo se G-Code estiver sendo carregado. Pulando importação de {0}"
-#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1788
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:146
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:153
+#: /home/trin/Gedeeld/Projects/Cura/cura/CuraApplication.py:1810 /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:146 /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:153
#: /home/trin/Gedeeld/Projects/Cura/plugins/RemovableDriveOutputDevice/RemovableDriveOutputDevice.py:139
msgctxt "@info:title"
msgid "Error"
@@ -409,7 +389,7 @@ msgctxt "@info:title"
msgid "Placing Object"
msgstr "Colocando Objeto"
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationHelpers.py:90
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationHelpers.py:92
msgctxt "@message"
msgid "Could not read response."
msgstr "Não foi possível ler a resposta."
@@ -429,31 +409,28 @@ msgctxt "@message"
msgid "Something unexpected happened when trying to log in, please try again."
msgstr "Algo inesperado aconteceu ao tentar login, por favor tente novamente."
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:187
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:189
msgctxt "@info"
msgid "Unable to start a new sign in process. Check if another sign in attempt is still active."
msgstr "Não foi possível iniciar processo de sign-in. Verifique se outra tentativa de sign-in ainda está ativa."
-#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:242
+#: /home/trin/Gedeeld/Projects/Cura/cura/OAuth2/AuthorizationService.py:244
msgctxt "@info"
msgid "Unable to reach the Ultimaker account server."
msgstr "Não foi possível contactar o servidor de contas da Ultimaker."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:205
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:132
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:205 /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:132
msgctxt "@title:window"
msgid "File Already Exists"
msgstr "O Arquivo Já Existe"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:206
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:133
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:206 /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:133
#, python-brace-format
msgctxt "@label Don't translate the XML tag !"
msgid "The file {0} already exists. Are you sure you want to overwrite it?"
msgstr "O arquivo {0} já existe. Tem certeza que quer sobrescrevê-lo?"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:452
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:455
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:457 /home/trin/Gedeeld/Projects/Cura/cura/Settings/ContainerManager.py:460
msgctxt "@info:status"
msgid "Invalid file URL:"
msgstr "URL de arquivo inválida:"
@@ -505,8 +482,7 @@ msgctxt "@info:status Don't translate the XML tags !"
msgid "Failed to import profile from {0}:"
msgstr "Erro ao importar perfil de {0}:"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:235
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:245
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:235 /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:245
#, python-brace-format
msgctxt "@info:status Don't translate the XML tags !"
msgid "This profile {0} contains incorrect data, could not import it."
@@ -536,33 +512,33 @@ msgctxt "@info:status"
msgid "Profile {0} has an unknown file type or is corrupted."
msgstr "O Perfil {0} tem tipo de arquivo desconhecido ou está corrompido."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:423
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:426
msgctxt "@label"
msgid "Custom profile"
msgstr "Perfil personalizado"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:439
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:442
msgctxt "@info:status"
msgid "Profile is missing a quality type."
msgstr "Falta um tipo de qualidade ao Perfil."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:443
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:446
msgctxt "@info:status"
-msgid "Global stack is missing."
-msgstr "A pilha global não foi encontrada."
+msgid "There is no active printer yet."
+msgstr "Não há impressora ativa ainda."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:449
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:452
msgctxt "@info:status"
msgid "Unable to add the profile."
msgstr "Não foi possível adicionar o perfil."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:463
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:466
#, python-brace-format
msgctxt "@info:status"
msgid "Quality type '{0}' is not compatible with the current active machine definition '{1}'."
msgstr "Tipo de qualidade '{0}' não é compatível com a definição de máquina ativa atual '{1}'."
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:468
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/CuraContainerRegistry.py:471
#, python-brace-format
msgctxt "@info:status"
msgid "Warning: The profile is not visible because its quality type '{0}' is not available for the current configuration. Switch to a material/nozzle combination that can use this quality type."
@@ -578,51 +554,40 @@ msgctxt "@info:No intent profile selected"
msgid "Default"
msgstr "Default"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:712
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:216
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:713 /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/ThreeMFWorkspaceReader.py:216
msgctxt "@label"
msgid "Nozzle"
msgstr "Bico"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:860
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:856
msgctxt "@info:message Followed by a list of settings."
msgid "Settings have been changed to match the current availability of extruders:"
msgstr "Os ajustes foram alterados para seguir a disponibilidade de extrusores atuais:"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:862
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:858
msgctxt "@info:title"
msgid "Settings updated"
msgstr "Ajustes atualizados"
-#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1447
+#: /home/trin/Gedeeld/Projects/Cura/cura/Settings/MachineManager.py:1478
msgctxt "@info:title"
msgid "Extruder(s) Disabled"
msgstr "Extrusor(es) Desabilitado(s)"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:17
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:67
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:48
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:17 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:67 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:48
msgctxt "@action:button"
msgid "Add"
msgstr "Adicionar"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:26
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:263
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:26 /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:272
msgctxt "@action:button"
msgid "Finish"
msgstr "Finalizar"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:33
-#: /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:441
-#: /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:234
-#: /home/trin/Gedeeld/Projects/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:150
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxProgressButton.qml:19
-#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/dialogs/ToolboxConfirmUninstallResetDialog.qml:81
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:352
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:58
-#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/PrintWindow.qml:42
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:87
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:292
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/AddPrinterPagesModel.py:33 /home/trin/Gedeeld/Projects/Cura/plugins/3MFReader/WorkspaceDialog.qml:445 /home/trin/Gedeeld/Projects/Cura/plugins/ImageReader/ConfigUI.qml:234 /home/trin/Gedeeld/Projects/Cura/plugins/SliceInfoPlugin/MoreInfoWindow.qml:150
+#: /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/components/ToolboxProgressButton.qml:19 /home/trin/Gedeeld/Projects/Cura/plugins/Toolbox/resources/qml/dialogs/ToolboxConfirmUninstallResetDialog.qml:81
+#: /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/DiscoverUM3Action.qml:352 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/MonitorConfigOverrideDialog.qml:58 /home/trin/Gedeeld/Projects/Cura/plugins/UM3NetworkPrinting/resources/qml/PrintWindow.qml:42
+#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/OpenFilesIncludingProjectsDialog.qml:82 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/WorkspaceSummaryDialog.qml:292
msgctxt "@action:button"
msgid "Cancel"
msgstr "Cancelar"
@@ -633,77 +598,78 @@ msgctxt "@label"
msgid "Group #{group_nr}"
msgstr "Grupo #{group_nr}"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:83
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:82
msgctxt "@tooltip"
msgid "Outer Wall"
msgstr "Parede Externa"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:84
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:83
msgctxt "@tooltip"
msgid "Inner Walls"
msgstr "Paredes Internas"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:85
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:84
msgctxt "@tooltip"
msgid "Skin"
msgstr "Contorno"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:86
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:85
msgctxt "@tooltip"
msgid "Infill"
msgstr "Preenchimento"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:87
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:86
msgctxt "@tooltip"
msgid "Support Infill"
msgstr "Preenchimento de Suporte"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:88
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:87
msgctxt "@tooltip"
msgid "Support Interface"
msgstr "Interface de Suporte"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:89
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:88
msgctxt "@tooltip"
msgid "Support"
msgstr "Suporte"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:90
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:89
msgctxt "@tooltip"
msgid "Skirt"
msgstr "Skirt (Saia)"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:91
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:90
msgctxt "@tooltip"
msgid "Prime Tower"
msgstr "Torre de Prime"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:92
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:91
msgctxt "@tooltip"
msgid "Travel"
msgstr "Percurso"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:93
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:92
msgctxt "@tooltip"
msgid "Retractions"
msgstr "Retrações"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:94
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/PrintInformation.py:93
msgctxt "@tooltip"
msgid "Other"
msgstr "Outros"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:56
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:56 /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:259
msgctxt "@action:button"
msgid "Next"
msgstr "Próximo"
-#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WhatsNewPagesModel.py:17
-#: /home/trin/Gedeeld/Projects/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:185
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:128
-#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:482
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:173
-#: /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:127
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WelcomePagesModel.py:268 /home/trin/Gedeeld/Projects/Cura/cura/UI/WhatsNewPagesModel.py:55
+msgctxt "@action:button"
+msgid "Skip"
+msgstr "Pular"
+
+#: /home/trin/Gedeeld/Projects/Cura/cura/UI/WhatsNewPagesModel.py:60 /home/trin/Gedeeld/Projects/Cura/plugins/FirmwareUpdater/FirmwareUpdaterMachineAction.qml:185 /home/trin/Gedeeld/Projects/Cura/plugins/PerObjectSettingsTool/SettingPickDialog.qml:128
+#: /home/trin/Gedeeld/Projects/Cura/plugins/PostProcessingPlugin/PostProcessingPlugin.qml:485 /home/trin/Gedeeld/Projects/Cura/resources/qml/Dialogs/AboutDialog.qml:174 /home/trin/Gedeeld/Projects/Cura/resources/qml/Preferences/MachinesPage.qml:127
msgctxt "@action:button"
msgid "Close"
msgstr "Fechar"
@@ -727,29 +693,35 @@ msgstr ""
"
Descubra como assegurar a melhor qualidade de impressão e confiabilidade possível.