mirror of
https://git.mirrors.martin98.com/https://github.com/Ultimaker/Cura
synced 2025-08-17 06:35:58 +08:00
Revert changes for CURA-5479
It was decided that functionality present in existing plugins is sufficient. No need to replicate it in our own codebase and take on the burden of maintenance CURA-5479
This commit is contained in:
parent
141ad8ff1d
commit
816aaafc19
@ -533,7 +533,7 @@ class CuraApplication(QtApplication):
|
|||||||
preferences.addPreference("cura/active_mode", "simple")
|
preferences.addPreference("cura/active_mode", "simple")
|
||||||
|
|
||||||
preferences.addPreference("cura/categories_expanded", "")
|
preferences.addPreference("cura/categories_expanded", "")
|
||||||
preferences.addPreference("cura/job_name_template", "{machine_name_short}_{project_name}")
|
preferences.addPreference("cura/jobname_prefix", True)
|
||||||
preferences.addPreference("cura/select_models_on_load", False)
|
preferences.addPreference("cura/select_models_on_load", False)
|
||||||
preferences.addPreference("view/center_on_select", False)
|
preferences.addPreference("view/center_on_select", False)
|
||||||
preferences.addPreference("mesh/scale_to_fit", False)
|
preferences.addPreference("mesh/scale_to_fit", False)
|
||||||
|
@ -252,11 +252,11 @@ class PrintInformation(QObject):
|
|||||||
self.materialNamesChanged.emit()
|
self.materialNamesChanged.emit()
|
||||||
|
|
||||||
def _onPreferencesChanged(self, preference: str) -> None:
|
def _onPreferencesChanged(self, preference: str) -> None:
|
||||||
if preference == "cura/job_name_template":
|
if preference != "cura/material_settings":
|
||||||
self._updateJobName()
|
return
|
||||||
elif preference == "cura/material_settings":
|
|
||||||
for build_plate_number in range(self._multi_build_plate_model.maxBuildPlate + 1):
|
for build_plate_number in range(self._multi_build_plate_model.maxBuildPlate + 1):
|
||||||
self._calculateInformation(build_plate_number)
|
self._calculateInformation(build_plate_number)
|
||||||
|
|
||||||
def _onActiveBuildPlateChanged(self) -> None:
|
def _onActiveBuildPlateChanged(self) -> None:
|
||||||
new_active_build_plate = self._multi_build_plate_model.activeBuildPlate
|
new_active_build_plate = self._multi_build_plate_model.activeBuildPlate
|
||||||
@ -305,8 +305,12 @@ class PrintInformation(QObject):
|
|||||||
|
|
||||||
# Only update the job name when it's not user-specified.
|
# Only update the job name when it's not user-specified.
|
||||||
if not self._is_user_specified_job_name:
|
if not self._is_user_specified_job_name:
|
||||||
if not self._pre_sliced:
|
if self._application.getInstance().getPreferences().getValue("cura/jobname_prefix") and not self._pre_sliced:
|
||||||
self._job_name = self.parseTemplate()
|
# Don't add abbreviation if it already has the exact same abbreviation.
|
||||||
|
if base_name.startswith(self._abbr_machine + "_"):
|
||||||
|
self._job_name = base_name
|
||||||
|
else:
|
||||||
|
self._job_name = self._abbr_machine + "_" + base_name
|
||||||
else:
|
else:
|
||||||
self._job_name = base_name
|
self._job_name = base_name
|
||||||
|
|
||||||
@ -436,28 +440,3 @@ class PrintInformation(QObject):
|
|||||||
"""Listen to scene changes to check if we need to reset the print information"""
|
"""Listen to scene changes to check if we need to reset the print information"""
|
||||||
|
|
||||||
self.setToZeroPrintInformation(self._active_build_plate)
|
self.setToZeroPrintInformation(self._active_build_plate)
|
||||||
|
|
||||||
def parseTemplate(self) -> str:
|
|
||||||
"""Generate a print job name from the job name template
|
|
||||||
|
|
||||||
The template is a user preference: "cura/job_name_template"
|
|
||||||
"""
|
|
||||||
template = self._application.getInstance().getPreferences().getValue("cura/job_name_template")
|
|
||||||
output = template
|
|
||||||
|
|
||||||
output = output.replace("{machine_name_short}", self._abbr_machine)
|
|
||||||
|
|
||||||
if "{machine_name}" in template:
|
|
||||||
global_container_stack = self._application.getGlobalContainerStack()
|
|
||||||
active_machine_type_name = global_container_stack.definition.getName() \
|
|
||||||
if global_container_stack \
|
|
||||||
else "no_machine"
|
|
||||||
|
|
||||||
active_machine_type_name = active_machine_type_name.replace(" ", "_")
|
|
||||||
output = output.replace("{machine_name}", active_machine_type_name)
|
|
||||||
|
|
||||||
if "{project_name}" in template:
|
|
||||||
base_name = self._stripAccents(self._base_name)
|
|
||||||
output = output.replace("{project_name}", base_name)
|
|
||||||
|
|
||||||
return output
|
|
||||||
|
@ -4,8 +4,6 @@
|
|||||||
import configparser
|
import configparser
|
||||||
from typing import Tuple, List, Dict, Set
|
from typing import Tuple, List, Dict, Set
|
||||||
import io
|
import io
|
||||||
|
|
||||||
from UM.Util import parseBool
|
|
||||||
from UM.VersionUpgrade import VersionUpgrade
|
from UM.VersionUpgrade import VersionUpgrade
|
||||||
|
|
||||||
|
|
||||||
@ -44,13 +42,6 @@ class VersionUpgrade462to47(VersionUpgrade):
|
|||||||
parser["general"]["visible_settings"] = ";".join(
|
parser["general"]["visible_settings"] = ";".join(
|
||||||
set(parser["general"]["visible_settings"].split(";")).difference(_removed_settings))
|
set(parser["general"]["visible_settings"].split(";")).difference(_removed_settings))
|
||||||
|
|
||||||
if "cura" in parser and "jobname_prefix" in parser["cura"]:
|
|
||||||
if not parseBool(parser["cura"]["jobname_prefix"]):
|
|
||||||
parser["cura"]["job_name_template"] = "{project_name}"
|
|
||||||
del parser["cura"]["jobname_prefix"]
|
|
||||||
# else: When the jobname_prefix preference is True or not set,
|
|
||||||
# the default value for job_name_template ("{machine_name_short}_{project_name}") will be used
|
|
||||||
|
|
||||||
result = io.StringIO()
|
result = io.StringIO()
|
||||||
parser.write(result)
|
parser.write(result)
|
||||||
return [filename], [result.getvalue()]
|
return [filename], [result.getvalue()]
|
||||||
|
@ -85,8 +85,8 @@ UM.PreferencesPage
|
|||||||
scaleTinyCheckbox.checked = boolCheck(UM.Preferences.getValue("mesh/scale_tiny_meshes"))
|
scaleTinyCheckbox.checked = boolCheck(UM.Preferences.getValue("mesh/scale_tiny_meshes"))
|
||||||
UM.Preferences.resetPreference("cura/select_models_on_load")
|
UM.Preferences.resetPreference("cura/select_models_on_load")
|
||||||
selectModelsOnLoadCheckbox.checked = boolCheck(UM.Preferences.getValue("cura/select_models_on_load"))
|
selectModelsOnLoadCheckbox.checked = boolCheck(UM.Preferences.getValue("cura/select_models_on_load"))
|
||||||
UM.Preferences.resetPreference("cura/job_name_template")
|
UM.Preferences.resetPreference("cura/jobname_prefix")
|
||||||
jobnameTemplateTextField.text = UM.Preferences.getValue("cura/job_name_template")
|
prefixJobNameCheckbox.checked = boolCheck(UM.Preferences.getValue("cura/jobname_prefix"))
|
||||||
UM.Preferences.resetPreference("view/show_overhang");
|
UM.Preferences.resetPreference("view/show_overhang");
|
||||||
showOverhangCheckbox.checked = boolCheck(UM.Preferences.getValue("view/show_overhang"))
|
showOverhangCheckbox.checked = boolCheck(UM.Preferences.getValue("view/show_overhang"))
|
||||||
UM.Preferences.resetPreference("view/show_xray_warning");
|
UM.Preferences.resetPreference("view/show_xray_warning");
|
||||||
@ -627,25 +627,14 @@ UM.PreferencesPage
|
|||||||
{
|
{
|
||||||
width: childrenRect.width
|
width: childrenRect.width
|
||||||
height: childrenRect.height
|
height: childrenRect.height
|
||||||
text: catalog.i18nc("@info:tooltip. Note variable names themselves (ie. machine_name_short, project_name) should not be translated", "Variables: machine_name_short, machine_name, project_name")
|
text: catalog.i18nc("@info:tooltip", "Should a prefix based on the printer name be added to the print job name automatically?")
|
||||||
|
|
||||||
Column
|
CheckBox
|
||||||
{
|
{
|
||||||
spacing: 4 * screenScaleFactor
|
id: prefixJobNameCheckbox
|
||||||
|
text: catalog.i18nc("@option:check", "Add machine prefix to job name")
|
||||||
Label
|
checked: boolCheck(UM.Preferences.getValue("cura/jobname_prefix"))
|
||||||
{
|
onCheckedChanged: UM.Preferences.setValue("cura/jobname_prefix", checked)
|
||||||
id: jobNameTemplateLabel
|
|
||||||
text: catalog.i18nc("@label","Print job template:")
|
|
||||||
}
|
|
||||||
|
|
||||||
TextField
|
|
||||||
{
|
|
||||||
id: jobNameTemplateTextField
|
|
||||||
width: 250 * screenScaleFactor
|
|
||||||
text: UM.Preferences.getValue("cura/job_name_template")
|
|
||||||
onTextChanged: UM.Preferences.setValue("cura/job_name_template", text)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -681,7 +670,7 @@ UM.PreferencesPage
|
|||||||
ComboBox
|
ComboBox
|
||||||
{
|
{
|
||||||
id: choiceOnOpenProjectDropDownButton
|
id: choiceOnOpenProjectDropDownButton
|
||||||
width: 250 * screenScaleFactor
|
width: 200 * screenScaleFactor
|
||||||
|
|
||||||
model: ListModel
|
model: ListModel
|
||||||
{
|
{
|
||||||
@ -747,7 +736,7 @@ UM.PreferencesPage
|
|||||||
ComboBox
|
ComboBox
|
||||||
{
|
{
|
||||||
id: choiceOnProfileOverrideDropDownButton
|
id: choiceOnProfileOverrideDropDownButton
|
||||||
width: 250 * screenScaleFactor
|
width: 200 * screenScaleFactor
|
||||||
|
|
||||||
model: ListModel
|
model: ListModel
|
||||||
{
|
{
|
||||||
|
@ -140,7 +140,7 @@ A new performance enhancement that limits re-rendering of the application interf
|
|||||||
Previous versions used different ways of handling HTTP requests. This version uses a unified method, for better performance.
|
Previous versions used different ways of handling HTTP requests. This version uses a unified method, for better performance.
|
||||||
|
|
||||||
* Job names less sensitive to being touched.
|
* Job names less sensitive to being touched.
|
||||||
A contribution from fieldOfview has fixed an issue where the job name in the bottom-left of the scene is no longer made static by clicking on it. If you load a model and change to another printer, the prefix is now correctly updated.
|
A contribution from fieldOfview has fixed an issue where the jobname in the bottom-left of the scene is no longer made static by clicking on it. If you load a model and change to another printer, the prefix is now correctly updated.
|
||||||
|
|
||||||
* Property checks on instance containers.
|
* Property checks on instance containers.
|
||||||
A new speed optimization for reading setting values from profiles.
|
A new speed optimization for reading setting values from profiles.
|
||||||
|
@ -8,13 +8,6 @@ from unittest.mock import MagicMock, patch
|
|||||||
from UM.MimeTypeDatabase import MimeTypeDatabase, MimeType
|
from UM.MimeTypeDatabase import MimeTypeDatabase, MimeType
|
||||||
|
|
||||||
|
|
||||||
def preferencesGetValue(key: str):
|
|
||||||
if key == "cura/job_name_template":
|
|
||||||
return "{machine_name_short}_{project_name}"
|
|
||||||
|
|
||||||
return '{"omgzomg": {"spool_weight": 10, "spool_cost": 9}}'
|
|
||||||
|
|
||||||
|
|
||||||
def getPrintInformation(printer_name) -> PrintInformation:
|
def getPrintInformation(printer_name) -> PrintInformation:
|
||||||
|
|
||||||
mock_application = MagicMock(name = "mock_application")
|
mock_application = MagicMock(name = "mock_application")
|
||||||
@ -26,7 +19,7 @@ def getPrintInformation(printer_name) -> PrintInformation:
|
|||||||
mocked_extruder_stack.material = mocked_material
|
mocked_extruder_stack.material = mocked_material
|
||||||
|
|
||||||
mock_application.getInstance = MagicMock(return_value = mock_application)
|
mock_application.getInstance = MagicMock(return_value = mock_application)
|
||||||
mocked_preferences.getValue = MagicMock(side_effect = preferencesGetValue)
|
mocked_preferences.getValue = MagicMock(return_value = '{"omgzomg": {"spool_weight": 10, "spool_cost": 9}}')
|
||||||
|
|
||||||
global_container_stack = MagicMock()
|
global_container_stack = MagicMock()
|
||||||
global_container_stack.definition.getName = MagicMock(return_value = printer_name)
|
global_container_stack.definition.getName = MagicMock(return_value = printer_name)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user