+ else if (value_desc.parent_is_value_node())
+ {
+ if (ValueNode_BLineCalcVertex::Handle::cast_dynamic(value_desc.get_value_node()))
+ return false;
+ if (value_desc.parent_is_linkable_value_node())
+ {
+ LinkableValueNode::Handle parent_value_node(value_desc.get_parent_value_node());
+ if (ValueNode_Composite::Handle::cast_dynamic(parent_value_node) &&
+ parent_value_node->get_type() == ValueBase::TYPE_BLINEPOINT &&
+ ValueNode_BLineCalcVertex::Handle::cast_dynamic(
+ synfigapp::ValueDesc(parent_value_node,
+ parent_value_node->get_link_index_from_name("point")).get_value_node()))
+ return false;
+ }
+ }