Fixed bug where setting object parameter values through preset does not take effect.

This commit is contained in:
Zaid Abdulla committed 2013-12-06 16:11:55 +03:00
1 parent 58a9adaa52
commit 6f0d7a747e
1 file changed
+7 -5
+7 -5
View File
@@ -202,11 +202,13 @@ exports.processDevicePreset = (deviceId, devicePreset, callback) ->
if objectDetails.preset? if objectDetails.preset?
if Object.keys(objectDetails.current) > 0 if Object.keys(objectDetails.current) > 0
for i, obj of objectDetails.current for i, obj of objectDetails.current
for paramName, paramDetails of obj for paramName, paramValue of objectDetails.preset
currentValue = paramDetails.value continue if paramName[0] == '_'
presetValue = common.matchType(currentValue, objectDetails.preset[paramName]?.value) if obj[paramName]
if presetValue? and currentValue != presetValue currentValue = obj[paramName]._value
setParameterValues.push(["#{parameterPath}.#{i}.#{paramName}", presetValue, paramDetails.type]) presetValue = common.matchType(currentValue, objectDetails.preset[paramName])
if currentValue != presetValue
setParameterValues.push(["#{parameterPath}.#{i}.#{paramName}", presetValue, obj[paramName]._type])
else else
vals = [] vals = []
for k,v of objectDetails.preset for k,v of objectDetails.preset