mirror of
https://git.mirrors.martin98.com/https://github.com/Ultimaker/Cura
synced 2025-05-09 22:09:02 +08:00
Merge pull request #1553 from Ultimaker/feature_CURA-3561_save_profile_override_with_codes
CURA-3561 Save with code names for profile override preference
This commit is contained in:
commit
07cfe76edb
@ -245,7 +245,7 @@ class CuraApplication(QtApplication):
|
||||
Preferences.getInstance().addPreference("mesh/scale_tiny_meshes", True)
|
||||
Preferences.getInstance().addPreference("cura/dialog_on_project_save", True)
|
||||
Preferences.getInstance().addPreference("cura/asked_dialog_on_project_save", False)
|
||||
Preferences.getInstance().addPreference("cura/choice_on_profile_override", 0)
|
||||
Preferences.getInstance().addPreference("cura/choice_on_profile_override", "always_ask")
|
||||
|
||||
Preferences.getInstance().addPreference("cura/currency", "€")
|
||||
Preferences.getInstance().addPreference("cura/material_settings", "{}")
|
||||
@ -338,10 +338,10 @@ class CuraApplication(QtApplication):
|
||||
|
||||
def discardOrKeepProfileChanges(self):
|
||||
choice = Preferences.getInstance().getValue("cura/choice_on_profile_override")
|
||||
if choice == 1:
|
||||
if choice == "always_discard":
|
||||
# don't show dialog and DISCARD the profile
|
||||
self.discardOrKeepProfileChangesClosed("discard")
|
||||
elif choice == 2:
|
||||
elif choice == "always_keep":
|
||||
# don't show dialog and KEEP the profile
|
||||
self.discardOrKeepProfileChangesClosed("keep")
|
||||
else:
|
||||
|
@ -21,9 +21,18 @@ UM.Dialog
|
||||
if(visible)
|
||||
{
|
||||
changesModel.forceUpdate()
|
||||
}
|
||||
|
||||
discardOrKeepProfileChangesDropDownButton.currentIndex = UM.Preferences.getValue("cura/choice_on_profile_override")
|
||||
discardOrKeepProfileChangesDropDownButton.currentIndex = 0;
|
||||
for (var i = 0; i < discardOrKeepProfileChangesDropDownButton.model.count; ++i)
|
||||
{
|
||||
var code = discardOrKeepProfileChangesDropDownButton.model.get(i).code;
|
||||
if (code == UM.Preferences.getValue("cura/choice_on_profile_override"))
|
||||
{
|
||||
discardOrKeepProfileChangesDropDownButton.currentIndex = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Column
|
||||
@ -133,32 +142,20 @@ UM.Dialog
|
||||
ComboBox
|
||||
{
|
||||
id: discardOrKeepProfileChangesDropDownButton
|
||||
model: [
|
||||
catalog.i18nc("@option:discardOrKeep", "Always ask me this"),
|
||||
catalog.i18nc("@option:discardOrKeep", "Discard and never ask again"),
|
||||
catalog.i18nc("@option:discardOrKeep", "Keep and never ask again")
|
||||
]
|
||||
width: 300
|
||||
currentIndex: UM.Preferences.getValue("cura/choice_on_profile_override")
|
||||
onCurrentIndexChanged:
|
||||
|
||||
model: ListModel
|
||||
{
|
||||
UM.Preferences.setValue("cura/choice_on_profile_override", currentIndex)
|
||||
if (currentIndex == 1) {
|
||||
// 1 == "Discard and never ask again", so only enable the "Discard" button
|
||||
discardButton.enabled = true
|
||||
keepButton.enabled = false
|
||||
}
|
||||
else if (currentIndex == 2) {
|
||||
// 2 == "Keep and never ask again", so only enable the "Keep" button
|
||||
keepButton.enabled = true
|
||||
discardButton.enabled = false
|
||||
}
|
||||
else {
|
||||
// 0 == "Always ask me this", so show both
|
||||
keepButton.enabled = true
|
||||
discardButton.enabled = true
|
||||
id: discardOrKeepProfileListModel
|
||||
|
||||
Component.onCompleted: {
|
||||
append({ text: catalog.i18nc("@option:discardOrKeep", "Always ask me this"), code: "always_ask" })
|
||||
append({ text: catalog.i18nc("@option:discardOrKeep", "Discard and never ask again"), code: "always_discard" })
|
||||
append({ text: catalog.i18nc("@option:discardOrKeep", "Keep and never ask again"), code: "always_keep" })
|
||||
}
|
||||
}
|
||||
|
||||
onActivated: UM.Preferences.setValue("cura/choice_on_profile_override", model.get(index).code)
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -25,6 +25,18 @@ UM.PreferencesPage
|
||||
}
|
||||
}
|
||||
|
||||
function setDefaultDiscardOrKeepProfile(code)
|
||||
{
|
||||
for (var i = 0; i < choiceOnProfileOverrideDropDownButton.model.count; i++)
|
||||
{
|
||||
if (choiceOnProfileOverrideDropDownButton.model.get(i).code == code)
|
||||
{
|
||||
choiceOnProfileOverrideDropDownButton.currentIndex = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function reset()
|
||||
{
|
||||
UM.Preferences.resetPreference("general/language")
|
||||
@ -47,8 +59,9 @@ UM.PreferencesPage
|
||||
centerOnSelectCheckbox.checked = boolCheck(UM.Preferences.getValue("view/center_on_select"))
|
||||
UM.Preferences.resetPreference("view/top_layer_count");
|
||||
topLayerCountCheckbox.checked = boolCheck(UM.Preferences.getValue("view/top_layer_count"))
|
||||
|
||||
UM.Preferences.resetPreference("cura/choice_on_profile_override")
|
||||
choiceOnProfileOverrideDropDownButton.currentIndex = UM.Preferences.getValue("cura/choice_on_profile_override")
|
||||
setDefaultDiscardOrKeepProfile(UM.Preferences.getValue("cura/choice_on_profile_override"))
|
||||
|
||||
if (plugins.find("id", "SliceInfoPlugin") > -1) {
|
||||
UM.Preferences.resetPreference("info/send_slice_info")
|
||||
@ -364,15 +377,34 @@ UM.PreferencesPage
|
||||
ComboBox
|
||||
{
|
||||
id: choiceOnProfileOverrideDropDownButton
|
||||
|
||||
model: [
|
||||
catalog.i18nc("@option:discardOrKeep", "Always ask me this"),
|
||||
catalog.i18nc("@option:discardOrKeep", "Discard and never ask again"),
|
||||
catalog.i18nc("@option:discardOrKeep", "Keep and never ask again")
|
||||
]
|
||||
width: 300
|
||||
currentIndex: UM.Preferences.getValue("cura/choice_on_profile_override")
|
||||
onCurrentIndexChanged: UM.Preferences.setValue("cura/choice_on_profile_override", currentIndex)
|
||||
|
||||
model: ListModel
|
||||
{
|
||||
id: discardOrKeepProfileListModel
|
||||
|
||||
Component.onCompleted: {
|
||||
append({ text: catalog.i18nc("@option:discardOrKeep", "Always ask me this"), code: "always_ask" })
|
||||
append({ text: catalog.i18nc("@option:discardOrKeep", "Discard and never ask again"), code: "always_discard" })
|
||||
append({ text: catalog.i18nc("@option:discardOrKeep", "Keep and never ask again"), code: "always_keep" })
|
||||
}
|
||||
}
|
||||
|
||||
currentIndex:
|
||||
{
|
||||
var index = 0;
|
||||
var code = UM.Preferences.getValue("cura/choice_on_profile_override");
|
||||
for (var i = 0; i < model.count; ++i)
|
||||
{
|
||||
if (model.get(i).code == code)
|
||||
{
|
||||
index = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
return index;
|
||||
}
|
||||
onActivated: UM.Preferences.setValue("cura/choice_on_profile_override", model.get(index).code)
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user