Fix eventdescriptor params in edit rule page

This commit is contained in:
Michael Zanetti 2021-02-25 23:38:43 +01:00
parent bef59fbdd7
commit 3d9e0904da
4 changed files with 6 additions and 4 deletions

View File

@ -54,7 +54,7 @@ EventType *EventTypes::getEventType(const QUuid &eventTypeId) const
return eventType;
}
}
return 0;
return nullptr;
}
int EventTypes::rowCount(const QModelIndex &parent) const

View File

@ -81,9 +81,9 @@ NymeaSwipeDelegate {
operatorString = " ? ";
}
var paramType = paramDescriptor.paramTypeId
? root.eventType.paramTypes.getParamType(paramDescriptor.paramTypeId)
: root.eventType.paramTypes.findByName(paramDescriptor.paramName)
var paramType = paramDescriptor.paramName
? root.eventType.paramTypes.findByName(paramDescriptor.paramName)
: root.eventType.paramTypes.getParamType(paramDescriptor.paramTypeId)
if (i === 0) {
// TRANSLATORS: example: "only if temperature > 5"

View File

@ -391,6 +391,7 @@ Page {
// has the template a value for this? If so, set it, otherwise flag as needsParams
print("template:", paramType.id, eventDescriptorTemplate.paramDescriptors.count)
if (paramDescriptorTemplate && paramDescriptorTemplate.value !== undefined) {
print("filling in param descriptor:", paramDescriptorTemplate.value)
eventDescriptor.paramDescriptors.setParamDescriptorByName(paramDescriptorTemplate.paramName, paramDescriptorTemplate.value, paramDescriptorTemplate.operatorType);
} else {
needsParams = true;

View File

@ -94,6 +94,7 @@ Page {
for (var i = 0; i < delegateRepeater.count; i++) {
var paramDelegate = delegateRepeater.itemAt(i);
if (paramDelegate.considerParam) {
print("adding param descriptor")
if (root.device) {
root.eventDescriptor.paramDescriptors.setParamDescriptor(paramDelegate.paramType.id, paramDelegate.value, paramDelegate.operatorType)
} else if (root.iface) {