CURA-4400 added function to find model index by extruder position in SettingExtruder

This commit is contained in:
Jack Ha 2018-03-12 09:56:08 +01:00
parent d70cc072e9
commit 552618fcd4
2 changed files with 16 additions and 3 deletions

View file

@ -1,7 +1,7 @@
# Copyright (c) 2017 Ultimaker B.V.
# Cura is released under the terms of the LGPLv3 or higher.
from PyQt5.QtCore import Qt, pyqtSignal, pyqtProperty, QTimer
from PyQt5.QtCore import Qt, pyqtSignal, pyqtSlot, pyqtProperty, QTimer
from typing import Iterable
from UM.i18n import i18nCatalog

View file

@ -26,6 +26,20 @@ SettingItem
textRole: "name"
// knowing the extruder position, try to find the item index in the model
function getIndexByPosition(position)
{
for (var item_index in model.items)
{
var item = model.getItem(item_index)
if (item.index == position)
{
return item_index
}
}
return -1
}
onActivated:
{
if (model.getItem(index).enabled)
@ -83,8 +97,7 @@ SettingItem
{
if(propertyProvider.properties.value == -1)
{
// TODO: accidently the extruder position is also the index. fix it
return Cura.MachineManager.defaultExtruderPosition;
return control.getIndexByPosition(Cura.MachineManager.defaultExtruderPosition);
}
return propertyProvider.properties.value
}