mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-08-07 05:53:59 -06:00
Merge branch 'master' of github.com:Ultimaker/Cura
This commit is contained in:
commit
8e12d49160
7 changed files with 32 additions and 4 deletions
|
@ -1863,6 +1863,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):
|
||||
|
|
|
@ -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]:
|
||||
|
|
|
@ -143,6 +143,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:
|
||||
|
|
|
@ -385,6 +385,11 @@ class DigitalFactoryController(QObject):
|
|||
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.
|
||||
|
|
|
@ -72,6 +72,15 @@ class FilamentChange(Script):
|
|||
"type": "float",
|
||||
"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
|
||||
}
|
||||
}
|
||||
}"""
|
||||
|
@ -87,6 +96,7 @@ 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"
|
||||
|
@ -100,10 +110,13 @@ class FilamentChange(Script):
|
|||
|
||||
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"
|
||||
|
||||
layer_targets = layer_nums.split(",")
|
||||
|
@ -116,4 +129,4 @@ class FilamentChange(Script):
|
|||
if 0 < layer_num < len(data):
|
||||
data[layer_num] = color_change + data[layer_num]
|
||||
|
||||
return data
|
||||
return data
|
||||
|
|
|
@ -229,6 +229,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()
|
||||
|
|
|
@ -54,6 +54,7 @@
|
|||
<li><b>Bounding Box:</b> [minimum x, y, z; maximum x, y, z]</li>
|
||||
<li><b>Is Helper Mesh:</b> no</li>
|
||||
<li><b>Helper Mesh Type:</b> support mesh</li>
|
||||
<li><b>File type:</b> STL</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue