mirror of
https://git.mirrors.martin98.com/https://github.com/Ultimaker/Cura
synced 2025-08-13 21:25:58 +08:00
Get gcode flavor options from propertyprovider instead of hardcoding
This commit is contained in:
parent
edf4589150
commit
9e048aa6ad
@ -147,19 +147,40 @@ Cura.MachineAction
|
|||||||
|
|
||||||
ComboBox
|
ComboBox
|
||||||
{
|
{
|
||||||
model: ["RepRap (Marlin/Sprinter)", "UltiGCode", "Repetier"]
|
model: ListModel
|
||||||
|
{
|
||||||
|
id: flavorModel
|
||||||
|
Component.onCompleted:
|
||||||
|
{
|
||||||
|
// Options come in as a string-representation of an OrderedDict
|
||||||
|
var options = machineGCodeFlavorProvider.properties.options.match(/^OrderedDict\(\[\((.*)\)\]\)$/);
|
||||||
|
if(options)
|
||||||
|
{
|
||||||
|
options = options[1].split("), (")
|
||||||
|
for(var i = 0; i < options.length; i++)
|
||||||
|
{
|
||||||
|
var option = options[i].substring(1, options[i].length - 1).split("', '")
|
||||||
|
flavorModel.append({text: option[1], value: option[0]});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
currentIndex:
|
currentIndex:
|
||||||
{
|
{
|
||||||
var index = model.indexOf(machineGCodeFlavorProvider.properties.value);
|
var currentValue = machineGCodeFlavorProvider.properties.value;
|
||||||
if(index == -1)
|
var index = 0;
|
||||||
|
for(var i = 0; i < flavorModel.count; i++)
|
||||||
{
|
{
|
||||||
index = 0;
|
if(flavorModel.get(i).value == currentValue) {
|
||||||
|
index = i;
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return index
|
return index
|
||||||
}
|
}
|
||||||
onActivated:
|
onActivated:
|
||||||
{
|
{
|
||||||
machineGCodeFlavorProvider.setPropertyValue("value", model[index]);
|
machineGCodeFlavorProvider.setPropertyValue("value", flavorModel.get(index).value);
|
||||||
manager.updateHasMaterialsMetadata();
|
manager.updateHasMaterialsMetadata();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -433,7 +454,7 @@ Cura.MachineAction
|
|||||||
|
|
||||||
containerStackId: Cura.MachineManager.activeMachineId
|
containerStackId: Cura.MachineManager.activeMachineId
|
||||||
key: "machine_gcode_flavor"
|
key: "machine_gcode_flavor"
|
||||||
watchedProperties: [ "value" ]
|
watchedProperties: [ "value", "options" ]
|
||||||
storeIndex: manager.containerIndex
|
storeIndex: manager.containerIndex
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user