Do not change prefix for user-specified job names

CURA-5280
This commit is contained in:
Lipu Fei 2018-05-28 09:53:47 +02:00
parent 0d55b8b440
commit 689b88a024
2 changed files with 20 additions and 12 deletions

View File

@ -65,6 +65,7 @@ class PrintInformation(QObject):
self._backend.printDurationMessage.connect(self._onPrintDurationMessage)
Application.getInstance().getController().getScene().sceneChanged.connect(self._onSceneChanged)
self._is_user_specified_job_name = False
self._base_name = ""
self._abbr_machine = ""
self._job_name = ""
@ -281,10 +282,13 @@ class PrintInformation(QObject):
# Manual override of job name should also set the base name so that when the printer prefix is updated, it the
# prefix can be added to the manually added name, not the old base name
@pyqtSlot(str)
def setJobName(self, name):
@pyqtSlot(str, bool)
def setJobName(self, name, is_user_specified_job_name = False):
self._is_user_specified_job_name = is_user_specified_job_name
self._job_name = name
self._base_name = name.replace(self._abbr_machine + "_", "")
if name == "":
self._is_user_specified_job_name = False
self.jobNameChanged.emit()
jobNameChanged = pyqtSignal()
@ -296,11 +300,15 @@ class PrintInformation(QObject):
def _updateJobName(self):
if self._base_name == "":
self._job_name = ""
self._is_user_specified_job_name = False
self.jobNameChanged.emit()
return
base_name = self._stripAccents(self._base_name)
self._setAbbreviatedMachineName()
# Only update the job name when it's not user-specified.
if not self._is_user_specified_job_name:
if self._pre_sliced:
self._job_name = catalog.i18nc("@label", "Pre-sliced file {0}", base_name)
elif Preferences.getInstance().getValue("cura/jobname_prefix"):

View File

@ -81,7 +81,7 @@ Item {
text: PrintInformation.jobName
horizontalAlignment: TextInput.AlignRight
onTextChanged: {
PrintInformation.setJobName(text);
PrintInformation.setJobName(text, true);
}
onEditingFinished: {
if (printJobTextfield.text != ''){