@Override protected void fixAction() { String newVariableName = (String) getValueForParameter("variableName"); DMEntity newVariableType = (DMEntity) getValueForParameter("variableType"); DMPropertyImplementationType implementationType = (DMPropertyImplementationType) getValueForParameter("implementationType"); ((IEWidget) getObject()) .createsBindingVariable( newVariableName, DMType.makeResolvedDMType(newVariableType), implementationType, false); DMProperty property = null; ComponentDMEntity componentDMEntity = ((IEWidget) getObject()).getComponentDMEntity(); if (componentDMEntity != null) { property = componentDMEntity.getDMProperty(newVariableName); } if (property != null) { BindingVariable var = ((IEWidget) getObject()).getBindingModel().bindingVariableNamed("component"); BindingValue newBindingValue = new BindingValue(bindingDefinition, getObject()); newBindingValue.setBindingVariable(var); newBindingValue.addBindingPathElement(property); newBindingValue.connect(); ((FlexoModelObject) getObject()).setObjectForKey(newBindingValue, bindingName); } }